linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] tpm: Restore functionality to xen vtpm driver.
@ 2016-12-22 20:41 Dr. Greg Wettstein
  2016-12-23  7:17 ` Greg KH
  2017-01-10 15:39 ` [Xen-devel] " Boris Ostrovsky
  0 siblings, 2 replies; 6+ messages in thread
From: Dr. Greg Wettstein @ 2016-12-22 20:41 UTC (permalink / raw)
  To: linux-kernel; +Cc: xen-devel, xen-users, stable, dgdegra

Functionality of the xen-tpmfront driver was lost secondary to
the introduction of xenbus multi-page support in the following
commit:

ccc9d90a9a8b5c4ad7e9708ec41f75ff9e98d61d

xenbus_client: Extend interface to support multi-page ring

In this commit a pointer to the shared page address was being
passed to the xenbus_grant_ring() function rather then the
address of the shared page itself.  This resulted in a situation
where the driver would attach to the vtpm-stubdom but any attempt
to send a command to the stub domain would timeout.

A diagnostic finding for this regression is the following error
message being generated when the xen-tpmfront driver probes for a
device:

<3>vtpm vtpm-0: tpm_transmit: tpm_send: error -62

<3>vtpm vtpm-0: A TPM error (-62) occurred attempting to determine the timeouts

This fix is relevant to all kernels from 4.1 forward which is the
release in which multi-page xenbus support was introduced.

Daniel De Graaf formulated the fix by code inspection after the
regression point was located.

Signed-off-by: Dr. Greg Wettstein <greg@enjellic.com>
---
 drivers/char/tpm/xen-tpmfront.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/char/tpm/xen-tpmfront.c b/drivers/char/tpm/xen-tpmfront.c
index 5aaa268..dd83a07 100644
--- a/drivers/char/tpm/xen-tpmfront.c
+++ b/drivers/char/tpm/xen-tpmfront.c
@@ -203,7 +203,7 @@ static int setup_ring(struct xenbus_device *dev, struct tpm_private *priv)
 		return -ENOMEM;
 	}
 
-	rv = xenbus_grant_ring(dev, &priv->shr, 1, &gref);
+	rv = xenbus_grant_ring(dev, priv->shr, 1, &gref);
 	if (rv < 0)
 		return rv;
 
-- 
2.2.2


-- 

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] tpm: Restore functionality to xen vtpm driver.
  2016-12-22 20:41 [PATCH] tpm: Restore functionality to xen vtpm driver Dr. Greg Wettstein
@ 2016-12-23  7:17 ` Greg KH
  2017-01-10 15:39 ` [Xen-devel] " Boris Ostrovsky
  1 sibling, 0 replies; 6+ messages in thread
From: Greg KH @ 2016-12-23  7:17 UTC (permalink / raw)
  To: greg; +Cc: linux-kernel, xen-devel, xen-users, stable, dgdegra

On Thu, Dec 22, 2016 at 02:41:52PM -0600, Dr. Greg Wettstein wrote:
> Functionality of the xen-tpmfront driver was lost secondary to
> the introduction of xenbus multi-page support in the following
> commit:
> 
> ccc9d90a9a8b5c4ad7e9708ec41f75ff9e98d61d
> 
> xenbus_client: Extend interface to support multi-page ring
> 
> In this commit a pointer to the shared page address was being
> passed to the xenbus_grant_ring() function rather then the
> address of the shared page itself.  This resulted in a situation
> where the driver would attach to the vtpm-stubdom but any attempt
> to send a command to the stub domain would timeout.
> 
> A diagnostic finding for this regression is the following error
> message being generated when the xen-tpmfront driver probes for a
> device:
> 
> <3>vtpm vtpm-0: tpm_transmit: tpm_send: error -62
> 
> <3>vtpm vtpm-0: A TPM error (-62) occurred attempting to determine the timeouts
> 
> This fix is relevant to all kernels from 4.1 forward which is the
> release in which multi-page xenbus support was introduced.
> 
> Daniel De Graaf formulated the fix by code inspection after the
> regression point was located.
> 
> Signed-off-by: Dr. Greg Wettstein <greg@enjellic.com>

<formletter>

This is not the correct way to submit patches for inclusion in the
stable kernel tree.  Please read Documentation/stable_kernel_rules.txt
for how to do this properly.

</formletter>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Xen-devel] [PATCH] tpm: Restore functionality to xen vtpm driver.
  2016-12-22 20:41 [PATCH] tpm: Restore functionality to xen vtpm driver Dr. Greg Wettstein
  2016-12-23  7:17 ` Greg KH
@ 2017-01-10 15:39 ` Boris Ostrovsky
  1 sibling, 0 replies; 6+ messages in thread
From: Boris Ostrovsky @ 2017-01-10 15:39 UTC (permalink / raw)
  To: greg, linux-kernel; +Cc: xen-users, dgdegra, stable, xen-devel

On 12/22/2016 03:41 PM, Dr. Greg Wettstein wrote:
> Functionality of the xen-tpmfront driver was lost secondary to
> the introduction of xenbus multi-page support in the following
> commit:
>
> ccc9d90a9a8b5c4ad7e9708ec41f75ff9e98d61d
>
> xenbus_client: Extend interface to support multi-page ring
>
> In this commit a pointer to the shared page address was being
> passed to the xenbus_grant_ring() function rather then the
> address of the shared page itself.  This resulted in a situation
> where the driver would attach to the vtpm-stubdom but any attempt
> to send a command to the stub domain would timeout.
>
> A diagnostic finding for this regression is the following error
> message being generated when the xen-tpmfront driver probes for a
> device:
>
> <3>vtpm vtpm-0: tpm_transmit: tpm_send: error -62
>
> <3>vtpm vtpm-0: A TPM error (-62) occurred attempting to determine the timeouts
>
> This fix is relevant to all kernels from 4.1 forward which is the
> release in which multi-page xenbus support was introduced.
>
> Daniel De Graaf formulated the fix by code inspection after the
> regression point was located.
>
> Signed-off-by: Dr. Greg Wettstein <greg@enjellic.com>

Greg,

Are you planning to re-submit this?

Thanks.
-boris


> ---
>  drivers/char/tpm/xen-tpmfront.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/char/tpm/xen-tpmfront.c b/drivers/char/tpm/xen-tpmfront.c
> index 5aaa268..dd83a07 100644
> --- a/drivers/char/tpm/xen-tpmfront.c
> +++ b/drivers/char/tpm/xen-tpmfront.c
> @@ -203,7 +203,7 @@ static int setup_ring(struct xenbus_device *dev, struct tpm_private *priv)
>  		return -ENOMEM;
>  	}
>  
> -	rv = xenbus_grant_ring(dev, &priv->shr, 1, &gref);
> +	rv = xenbus_grant_ring(dev, priv->shr, 1, &gref);
>  	if (rv < 0)
>  		return rv;
>  

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] tpm: Restore functionality to xen vtpm driver.
@ 2017-01-21  0:29 Dr. Greg Wettstein
  0 siblings, 0 replies; 6+ messages in thread
From: Dr. Greg Wettstein @ 2017-01-21  0:29 UTC (permalink / raw)
  To: Boris Ostrovsky, greg, linux-kernel; +Cc: dgdegra, konrad.wilk, jarkko.sakkinen

On Jan 20,  5:22pm, Boris Ostrovsky wrote:
} Subject: Re: [PATCH] tpm: Restore functionality to xen vtpm driver.

> On 01/20/2017 10:00 AM, Dr. Greg Wettstein wrote:
> > Functionality of the xen-tpmfront driver was lost secondary to
> > the introduction of xenbus multi-page support in the following
> > commit:
> >
> > ccc9d90a9a8b5c4ad7e9708ec41f75ff9e98d61d
> >
> > xenbus_client: Extend interface to support multi-page ring
> >
> > In this commit a pointer to the shared page address was being
> > passed to the xenbus_grant_ring() function rather then the
> > address of the shared page itself.  This resulted in a situation
> > where the driver would attach to the vtpm-stubdom but any attempt
> > to send a command to the stub domain would timeout.
> >
> > A diagnostic finding for this regression is the following error
> > message being generated when the xen-tpmfront driver probes for a
> > device:
> >
> > <3>vtpm vtpm-0: tpm_transmit: tpm_send: error -62
> >
> > <3>vtpm vtpm-0: A TPM error (-62) occurred attempting to determine the timeouts
> >
> > This fix is relevant to all kernels from 4.1 forward which is the
> > release in which multi-page xenbus support was introduced.
> >
> > Daniel De Graaf formulated the fix by code inspection after the
> > regression point was located.
> >
> > Cc: <stable@vger.kernel.org> # 4.1-

> 4.1+, I believe.

I thought the dash implied 4.1 forward but that may be my
mis-understanding.

In any event the patch should be applied to all stable kernels from
4.1 forward.

We were lucky it wasn't anything more then a 1 character patch.... :-)

Have a good weekend.

Dr. Greg

}-- End of excerpt from Boris Ostrovsky

As always,
Dr. G.W. Wettstein, Ph.D.   Enjellic Systems Development, LLC.
4206 N. 19th Ave.           Specializing in information infra-structure
Fargo, ND  58102            development.
PH: 701-281-1686
FAX: 701-281-3949           EMAIL: greg@enjellic.com
------------------------------------------------------------------------------
"This is a single non-reentrant routine which takes the received packet
 queue and throws it at the networking layers in the hope that something
 useful will emerge."
                                -- dev.c, Linux Networking Sources

-- 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] tpm: Restore functionality to xen vtpm driver.
  2017-01-20 15:00 Dr. Greg Wettstein
@ 2017-01-20 22:22 ` Boris Ostrovsky
  0 siblings, 0 replies; 6+ messages in thread
From: Boris Ostrovsky @ 2017-01-20 22:22 UTC (permalink / raw)
  To: greg, linux-kernel; +Cc: dgdegra, konrad.wilk, jarkko.sakkinen

On 01/20/2017 10:00 AM, Dr. Greg Wettstein wrote:
> Functionality of the xen-tpmfront driver was lost secondary to
> the introduction of xenbus multi-page support in the following
> commit:
>
> ccc9d90a9a8b5c4ad7e9708ec41f75ff9e98d61d
>
> xenbus_client: Extend interface to support multi-page ring
>
> In this commit a pointer to the shared page address was being
> passed to the xenbus_grant_ring() function rather then the
> address of the shared page itself.  This resulted in a situation
> where the driver would attach to the vtpm-stubdom but any attempt
> to send a command to the stub domain would timeout.
>
> A diagnostic finding for this regression is the following error
> message being generated when the xen-tpmfront driver probes for a
> device:
>
> <3>vtpm vtpm-0: tpm_transmit: tpm_send: error -62
>
> <3>vtpm vtpm-0: A TPM error (-62) occurred attempting to determine the timeouts
>
> This fix is relevant to all kernels from 4.1 forward which is the
> release in which multi-page xenbus support was introduced.
>
> Daniel De Graaf formulated the fix by code inspection after the
> regression point was located.
>
> Cc: <stable@vger.kernel.org> # 4.1-

4.1+, I believe.

> Suggested-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
> Signed-off-by: Dr. Greg Wettstein <greg@enjellic.com>

Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>

> ---
>  drivers/char/tpm/xen-tpmfront.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/char/tpm/xen-tpmfront.c b/drivers/char/tpm/xen-tpmfront.c
> index 3111f2778079..d1478f7b3f97 100644
> --- a/drivers/char/tpm/xen-tpmfront.c
> +++ b/drivers/char/tpm/xen-tpmfront.c
> @@ -201,7 +201,7 @@ static int setup_ring(struct xenbus_device *dev, struct tpm_private *priv)
>  		return -ENOMEM;
>  	}
>  
> -	rv = xenbus_grant_ring(dev, &priv->shr, 1, &gref);
> +	rv = xenbus_grant_ring(dev, priv->shr, 1, &gref);
>  	if (rv < 0)
>  		return rv;
>  

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH] tpm: Restore functionality to xen vtpm driver.
@ 2017-01-20 15:00 Dr. Greg Wettstein
  2017-01-20 22:22 ` Boris Ostrovsky
  0 siblings, 1 reply; 6+ messages in thread
From: Dr. Greg Wettstein @ 2017-01-20 15:00 UTC (permalink / raw)
  To: linux-kernel; +Cc: Boris Ostrovsky, dgdegra, konrad.wilk, jarkko.sakkinen

Functionality of the xen-tpmfront driver was lost secondary to
the introduction of xenbus multi-page support in the following
commit:

ccc9d90a9a8b5c4ad7e9708ec41f75ff9e98d61d

xenbus_client: Extend interface to support multi-page ring

In this commit a pointer to the shared page address was being
passed to the xenbus_grant_ring() function rather then the
address of the shared page itself.  This resulted in a situation
where the driver would attach to the vtpm-stubdom but any attempt
to send a command to the stub domain would timeout.

A diagnostic finding for this regression is the following error
message being generated when the xen-tpmfront driver probes for a
device:

<3>vtpm vtpm-0: tpm_transmit: tpm_send: error -62

<3>vtpm vtpm-0: A TPM error (-62) occurred attempting to determine the timeouts

This fix is relevant to all kernels from 4.1 forward which is the
release in which multi-page xenbus support was introduced.

Daniel De Graaf formulated the fix by code inspection after the
regression point was located.

Cc: <stable@vger.kernel.org> # 4.1-
Suggested-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Signed-off-by: Dr. Greg Wettstein <greg@enjellic.com>
---
 drivers/char/tpm/xen-tpmfront.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/char/tpm/xen-tpmfront.c b/drivers/char/tpm/xen-tpmfront.c
index 3111f2778079..d1478f7b3f97 100644
--- a/drivers/char/tpm/xen-tpmfront.c
+++ b/drivers/char/tpm/xen-tpmfront.c
@@ -201,7 +201,7 @@ static int setup_ring(struct xenbus_device *dev, struct tpm_private *priv)
 		return -ENOMEM;
 	}
 
-	rv = xenbus_grant_ring(dev, &priv->shr, 1, &gref);
+	rv = xenbus_grant_ring(dev, priv->shr, 1, &gref);
 	if (rv < 0)
 		return rv;
 
-- 
2.11.0

As always,
Dr. G.W. Wettstein, Ph.D.   Enjellic Systems Development, LLC.
4206 N. 19th Ave.           Specializing in information infra-structure
Fargo, ND  58102            development.
PH: 701-281-1686
FAX: 701-281-3949           EMAIL: greg@enjellic.com
------------------------------------------------------------------------------
"I will not eat aged beef."
                                -- Johannes Christian Grosen
                                   Resurrection.

-- 

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2017-01-21  0:29 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-22 20:41 [PATCH] tpm: Restore functionality to xen vtpm driver Dr. Greg Wettstein
2016-12-23  7:17 ` Greg KH
2017-01-10 15:39 ` [Xen-devel] " Boris Ostrovsky
2017-01-20 15:00 Dr. Greg Wettstein
2017-01-20 22:22 ` Boris Ostrovsky
2017-01-21  0:29 Dr. Greg Wettstein

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).