2022-11-11 20:30:58

by Michael Kelley (LINUX)

[permalink] [raw]
Subject: [PATCH 1/1] tpm/tpm_crb: Fix error message in __crb_relinquish_locality()

The error message in __crb_relinquish_locality() mentions requestAccess
instead of Relinquish. Fix it.

Fixes: 888d867df441 ("tpm: cmd_ready command can be issued only after granting locality")
Signed-off-by: Michael Kelley <[email protected]>
---
drivers/char/tpm/tpm_crb.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/char/tpm/tpm_crb.c b/drivers/char/tpm/tpm_crb.c
index 1860665..65f8f17 100644
--- a/drivers/char/tpm/tpm_crb.c
+++ b/drivers/char/tpm/tpm_crb.c
@@ -252,7 +252,7 @@ static int __crb_relinquish_locality(struct device *dev,
iowrite32(CRB_LOC_CTRL_RELINQUISH, &priv->regs_h->loc_ctrl);
if (!crb_wait_for_reg_32(&priv->regs_h->loc_state, mask, value,
TPM2_TIMEOUT_C)) {
- dev_warn(dev, "TPM_LOC_STATE_x.requestAccess timed out\n");
+ dev_warn(dev, "TPM_LOC_STATE_x.Relinquish timed out\n");
return -ETIME;
}

--
1.8.3.1



2022-11-12 20:09:04

by Winkler, Tomas

[permalink] [raw]
Subject: RE: [PATCH 1/1] tpm/tpm_crb: Fix error message in __crb_relinquish_locality()



> -----Original Message-----
> From: Michael Kelley <[email protected]>
> Sent: Friday, November 11, 2022 21:39
> To: [email protected]; [email protected]; [email protected]; Winkler, Tomas
> <[email protected]>; [email protected]; linux-
> [email protected]
> Cc: [email protected]
> Subject: [PATCH 1/1] tpm/tpm_crb: Fix error message in
> __crb_relinquish_locality()
>
> The error message in __crb_relinquish_locality() mentions requestAccess
> instead of Relinquish. Fix it.
>
> Fixes: 888d867df441 ("tpm: cmd_ready command can be issued only after
> granting locality")
> Signed-off-by: Michael Kelley <[email protected]>
Acked-by: Tomas Winkler <[email protected]>

> ---
> drivers/char/tpm/tpm_crb.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/char/tpm/tpm_crb.c b/drivers/char/tpm/tpm_crb.c index
> 1860665..65f8f17 100644
> --- a/drivers/char/tpm/tpm_crb.c
> +++ b/drivers/char/tpm/tpm_crb.c
> @@ -252,7 +252,7 @@ static int __crb_relinquish_locality(struct device *dev,
> iowrite32(CRB_LOC_CTRL_RELINQUISH, &priv->regs_h->loc_ctrl);
> if (!crb_wait_for_reg_32(&priv->regs_h->loc_state, mask, value,
> TPM2_TIMEOUT_C)) {
> - dev_warn(dev, "TPM_LOC_STATE_x.requestAccess timed
> out\n");
> + dev_warn(dev, "TPM_LOC_STATE_x.Relinquish timed
> out\n");
> return -ETIME;
> }
>
> --
> 1.8.3.1


2022-11-22 16:32:24

by Michael Kelley (LINUX)

[permalink] [raw]
Subject: RE: [PATCH 1/1] tpm/tpm_crb: Fix error message in __crb_relinquish_locality()

From: Winkler, Tomas <[email protected]> Sent: Saturday, November 12, 2022 11:33 AM
> > -----Original Message-----
> > From: Michael Kelley <[email protected]>
> > Sent: Friday, November 11, 2022 21:39
> > To: [email protected]; [email protected]; [email protected]; Winkler, Tomas
> > <[email protected]>; [email protected]; linux-
> > [email protected]
> > Cc: [email protected]
> > Subject: [PATCH 1/1] tpm/tpm_crb: Fix error message in
> > __crb_relinquish_locality()
> >
> > The error message in __crb_relinquish_locality() mentions requestAccess
> > instead of Relinquish. Fix it.
> >
> > Fixes: 888d867df441 ("tpm: cmd_ready command can be issued only after
> > granting locality")
> > Signed-off-by: Michael Kelley <[email protected]>
> Acked-by: Tomas Winkler <[email protected]>

Is there a maintainer who can pick up this fix? It's not time critical; I'm
just trying to make sure it doesn't get lost.

Thanks,

Michael

>
> > ---
> > drivers/char/tpm/tpm_crb.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/char/tpm/tpm_crb.c b/drivers/char/tpm/tpm_crb.c index
> > 1860665..65f8f17 100644
> > --- a/drivers/char/tpm/tpm_crb.c
> > +++ b/drivers/char/tpm/tpm_crb.c
> > @@ -252,7 +252,7 @@ static int __crb_relinquish_locality(struct device *dev,
> > iowrite32(CRB_LOC_CTRL_RELINQUISH, &priv->regs_h->loc_ctrl);
> > if (!crb_wait_for_reg_32(&priv->regs_h->loc_state, mask, value,
> > TPM2_TIMEOUT_C)) {
> > - dev_warn(dev, "TPM_LOC_STATE_x.requestAccess timed
> > out\n");
> > + dev_warn(dev, "TPM_LOC_STATE_x.Relinquish timed
> > out\n");
> > return -ETIME;
> > }
> >
> > --
> > 1.8.3.1

2022-11-27 16:57:41

by Jarkko Sakkinen

[permalink] [raw]
Subject: Re: [PATCH 1/1] tpm/tpm_crb: Fix error message in __crb_relinquish_locality()

On Fri, Nov 11, 2022 at 11:38:53AM -0800, Michael Kelley wrote:
> The error message in __crb_relinquish_locality() mentions requestAccess
> instead of Relinquish. Fix it.
>
> Fixes: 888d867df441 ("tpm: cmd_ready command can be issued only after granting locality")
> Signed-off-by: Michael Kelley <[email protected]>
> ---
> drivers/char/tpm/tpm_crb.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/char/tpm/tpm_crb.c b/drivers/char/tpm/tpm_crb.c
> index 1860665..65f8f17 100644
> --- a/drivers/char/tpm/tpm_crb.c
> +++ b/drivers/char/tpm/tpm_crb.c
> @@ -252,7 +252,7 @@ static int __crb_relinquish_locality(struct device *dev,
> iowrite32(CRB_LOC_CTRL_RELINQUISH, &priv->regs_h->loc_ctrl);
> if (!crb_wait_for_reg_32(&priv->regs_h->loc_state, mask, value,
> TPM2_TIMEOUT_C)) {
> - dev_warn(dev, "TPM_LOC_STATE_x.requestAccess timed out\n");
> + dev_warn(dev, "TPM_LOC_STATE_x.Relinquish timed out\n");
> return -ETIME;
> }
>
> --
> 1.8.3.1
>

Please explain.

BR, Jarkko

2022-11-29 04:53:19

by Michael Kelley (LINUX)

[permalink] [raw]
Subject: RE: [PATCH 1/1] tpm/tpm_crb: Fix error message in __crb_relinquish_locality()

From: Jarkko Sakkinen <[email protected]> Sent: Sunday, November 27, 2022 8:39 AM
>
> On Fri, Nov 11, 2022 at 11:38:53AM -0800, Michael Kelley wrote:
> > The error message in __crb_relinquish_locality() mentions requestAccess
> > instead of Relinquish. Fix it.
> >
> > Fixes: 888d867df441 ("tpm: cmd_ready command can be issued only after granting locality")
> > Signed-off-by: Michael Kelley <[email protected]>
> > ---
> > drivers/char/tpm/tpm_crb.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/char/tpm/tpm_crb.c b/drivers/char/tpm/tpm_crb.c
> > index 1860665..65f8f17 100644
> > --- a/drivers/char/tpm/tpm_crb.c
> > +++ b/drivers/char/tpm/tpm_crb.c
> > @@ -252,7 +252,7 @@ static int __crb_relinquish_locality(struct device *dev,
> > iowrite32(CRB_LOC_CTRL_RELINQUISH, &priv->regs_h->loc_ctrl);
> > if (!crb_wait_for_reg_32(&priv->regs_h->loc_state, mask, value,
> > TPM2_TIMEOUT_C)) {
> > - dev_warn(dev, "TPM_LOC_STATE_x.requestAccess timed out\n");
> > + dev_warn(dev, "TPM_LOC_STATE_x.Relinquish timed out\n");
> > return -ETIME;
> > }
> >
> > --
> > 1.8.3.1
> >
>
> Please explain.
>

There are two parallel functions: __crb_request_locality() and
__crb_relinquish_locality(). In the current code, both return the
same text in the error message if a timeout occurs. That
error message seems appropriate for __crb_request_locality()
since it is setting the "requestAccess" bit.

But the error message seems inappropriate for
__crb_relinquish_locality(), which is setting the "Relinquish" bit.
So the patch changes the error message to indicate that the
timeout occurred in setting the Relinquish bit.

I'm looking at Section 6.5.3.2.2.1 in the TCG PC Client Platform
TPM Profile Specification for TPM 2.0, Version 1.05 Revision 14.
This is where the "requestAccess" and "Relinquish" bits are defined.

Or maybe I am not understanding what you are getting at with
"Please explain."

Michael

2022-12-04 20:09:27

by Jarkko Sakkinen

[permalink] [raw]
Subject: Re: [PATCH 1/1] tpm/tpm_crb: Fix error message in __crb_relinquish_locality()

On Tue, Nov 29, 2022 at 04:34:09AM +0000, Michael Kelley (LINUX) wrote:
> From: Jarkko Sakkinen <[email protected]> Sent: Sunday, November 27, 2022 8:39 AM
> >
> > On Fri, Nov 11, 2022 at 11:38:53AM -0800, Michael Kelley wrote:
> > > The error message in __crb_relinquish_locality() mentions requestAccess
> > > instead of Relinquish. Fix it.
> > >
> > > Fixes: 888d867df441 ("tpm: cmd_ready command can be issued only after granting locality")
> > > Signed-off-by: Michael Kelley <[email protected]>
> > > ---
> > > drivers/char/tpm/tpm_crb.c | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/char/tpm/tpm_crb.c b/drivers/char/tpm/tpm_crb.c
> > > index 1860665..65f8f17 100644
> > > --- a/drivers/char/tpm/tpm_crb.c
> > > +++ b/drivers/char/tpm/tpm_crb.c
> > > @@ -252,7 +252,7 @@ static int __crb_relinquish_locality(struct device *dev,
> > > iowrite32(CRB_LOC_CTRL_RELINQUISH, &priv->regs_h->loc_ctrl);
> > > if (!crb_wait_for_reg_32(&priv->regs_h->loc_state, mask, value,
> > > TPM2_TIMEOUT_C)) {
> > > - dev_warn(dev, "TPM_LOC_STATE_x.requestAccess timed out\n");
> > > + dev_warn(dev, "TPM_LOC_STATE_x.Relinquish timed out\n");
> > > return -ETIME;
> > > }
> > >
> > > --
> > > 1.8.3.1
> > >
> >
> > Please explain.
> >
>
> There are two parallel functions: __crb_request_locality() and
> __crb_relinquish_locality(). In the current code, both return the
> same text in the error message if a timeout occurs. That
> error message seems appropriate for __crb_request_locality()
> since it is setting the "requestAccess" bit.
>
> But the error message seems inappropriate for
> __crb_relinquish_locality(), which is setting the "Relinquish" bit.
> So the patch changes the error message to indicate that the
> timeout occurred in setting the Relinquish bit.
>
> I'm looking at Section 6.5.3.2.2.1 in the TCG PC Client Platform
> TPM Profile Specification for TPM 2.0, Version 1.05 Revision 14.
> This is where the "requestAccess" and "Relinquish" bits are defined.
>
> Or maybe I am not understanding what you are getting at with
> "Please explain."

I misread the callback name, when I first looked into this (in
too much rush). You're absolutely correct.

Reviewed-by: Jarkko Sakkinen <[email protected]>

BR, Jarkko

2022-12-04 20:09:56

by Jarkko Sakkinen

[permalink] [raw]
Subject: Re: [PATCH 1/1] tpm/tpm_crb: Fix error message in __crb_relinquish_locality()

On Sun, Dec 04, 2022 at 07:51:20PM +0000, Jarkko Sakkinen wrote:
> On Tue, Nov 29, 2022 at 04:34:09AM +0000, Michael Kelley (LINUX) wrote:
> > From: Jarkko Sakkinen <[email protected]> Sent: Sunday, November 27, 2022 8:39 AM
> > >
> > > On Fri, Nov 11, 2022 at 11:38:53AM -0800, Michael Kelley wrote:
> > > > The error message in __crb_relinquish_locality() mentions requestAccess
> > > > instead of Relinquish. Fix it.
> > > >
> > > > Fixes: 888d867df441 ("tpm: cmd_ready command can be issued only after granting locality")
> > > > Signed-off-by: Michael Kelley <[email protected]>
> > > > ---
> > > > drivers/char/tpm/tpm_crb.c | 2 +-
> > > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > > >
> > > > diff --git a/drivers/char/tpm/tpm_crb.c b/drivers/char/tpm/tpm_crb.c
> > > > index 1860665..65f8f17 100644
> > > > --- a/drivers/char/tpm/tpm_crb.c
> > > > +++ b/drivers/char/tpm/tpm_crb.c
> > > > @@ -252,7 +252,7 @@ static int __crb_relinquish_locality(struct device *dev,
> > > > iowrite32(CRB_LOC_CTRL_RELINQUISH, &priv->regs_h->loc_ctrl);
> > > > if (!crb_wait_for_reg_32(&priv->regs_h->loc_state, mask, value,
> > > > TPM2_TIMEOUT_C)) {
> > > > - dev_warn(dev, "TPM_LOC_STATE_x.requestAccess timed out\n");
> > > > + dev_warn(dev, "TPM_LOC_STATE_x.Relinquish timed out\n");
> > > > return -ETIME;
> > > > }
> > > >
> > > > --
> > > > 1.8.3.1
> > > >
> > >
> > > Please explain.
> > >
> >
> > There are two parallel functions: __crb_request_locality() and
> > __crb_relinquish_locality(). In the current code, both return the
> > same text in the error message if a timeout occurs. That
> > error message seems appropriate for __crb_request_locality()
> > since it is setting the "requestAccess" bit.
> >
> > But the error message seems inappropriate for
> > __crb_relinquish_locality(), which is setting the "Relinquish" bit.
> > So the patch changes the error message to indicate that the
> > timeout occurred in setting the Relinquish bit.
> >
> > I'm looking at Section 6.5.3.2.2.1 in the TCG PC Client Platform
> > TPM Profile Specification for TPM 2.0, Version 1.05 Revision 14.
> > This is where the "requestAccess" and "Relinquish" bits are defined.
> >
> > Or maybe I am not understanding what you are getting at with
> > "Please explain."
>
> I misread the callback name, when I first looked into this (in
> too much rush). You're absolutely correct.
>
> Reviewed-by: Jarkko Sakkinen <[email protected]>

Applied to git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd.git

BR, Jarkko