linux-integrity.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jarkko Sakkinen <jarkko@kernel.org>
To: Jerry Snitselaar <jsnitsel@redhat.com>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>,
	linux-integrity@vger.kernel.org, Jason Gunthorpe <jgg@ziepe.ca>,
	Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>,
	Peter Huewe <peterhuewe@gmx.de>
Subject: Re: [PATCH v2 1/5] tpm_tis: Fix check_locality for correct locality acquisition
Date: Sat, 24 Oct 2020 15:07:44 +0300	[thread overview]
Message-ID: <20201024120744.GA32607@kernel.org> (raw)
In-Reply-To: <878sc1hkmn.fsf@redhat.com>

On Mon, Oct 19, 2020 at 04:16:32PM -0700, Jerry Snitselaar wrote:
> 
> James Bottomley @ 2020-10-01 11:09 MST:
> 
> > The TPM TIS specification says the TPM signals the acquisition of
> > locality when the TMP_ACCESS_REQUEST_USE bit goes to one *and* the
> > TPM_ACCESS_REQUEST_USE bit goes to zero.  Currently we only check the
> > former not the latter, so check both.  Adding the check on
> > TPM_ACCESS_REQUEST_USE should fix the case where the locality is
> > re-requested before the TPM has released it.  In this case the
> > locality may get released briefly before it is reacquired, which
> > causes all sorts of problems. However, with the added check,
> > TPM_ACCESS_REQUEST_USE should remain 1 until the second request for
> > the locality is granted.
> >
> > Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
> >
> > ---
> >
> > v2: added this patch
> > ---
> >  drivers/char/tpm/tpm_tis_core.c | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/char/tpm/tpm_tis_core.c b/drivers/char/tpm/tpm_tis_core.c
> > index 92c51c6cfd1b..f3ecde8df47d 100644
> > --- a/drivers/char/tpm/tpm_tis_core.c
> > +++ b/drivers/char/tpm/tpm_tis_core.c
> > @@ -125,7 +125,8 @@ static bool check_locality(struct tpm_chip *chip, int l)
> >  	if (rc < 0)
> >  		return false;
> >  
> > -	if ((access & (TPM_ACCESS_ACTIVE_LOCALITY | TPM_ACCESS_VALID)) ==
> > +	if ((access & (TPM_ACCESS_ACTIVE_LOCALITY | TPM_ACCESS_VALID
> > +		       | TPM_ACCESS_REQUEST_USE)) ==
> >  	    (TPM_ACCESS_ACTIVE_LOCALITY | TPM_ACCESS_VALID)) {
> >  		priv->locality = l;
> >  		return true;
> 
> Reviewed-by: Jerry Snitselaar <jsnitsel@redhat.com>

Thank you.

James, few minor remarks.

Given that the failing commit is in the GIT, just for reference

  Fixes: 27084efee0c3 ("[PATCH] tpm: driver for next generation TPM chips")
  Cc: stable@ger.kernel.org

I want fixes tags for everything that has a legit Git commit, even
if it spans through all the existing stable kernels. It's valuable
information to have in the Git log.

Another thing I noticed is that would be less ugly put everything
in the same line, as checkpatch requirement have been relaxed.

Finally, please put a verbose inline comment before the condition.
tpm_tis driver is complicated enough that it should be better
documented. After months pass things tend to fade away and wrong
decisions might be made because of that. You can probably derive
it from the already nice and verbose commit message, so let's
take advantage of it.

About recent debate on patch changelogs. I talked with Dave Hansen
about this, and he said that in x86 tree, they are the standard, but
the practice depends per tree.

After thinking about this, and writing per patch changelogs for the
next iteration of the SGX patch set, my standing point is that either
works as it is properly written and maintained.

/Jarkko

  reply	other threads:[~2020-10-24 12:07 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-01 18:09 [PATCH v2 0/5] tpm_tis: fix interrupts (again) James Bottomley
2020-10-01 18:09 ` [PATCH v2 1/5] tpm_tis: Fix check_locality for correct locality acquisition James Bottomley
2020-10-05 15:34   ` Jarkko Sakkinen
2020-10-05 19:00     ` James Bottomley
2020-10-05 20:32       ` Jarkko Sakkinen
2020-10-19 23:16   ` Jerry Snitselaar
2020-10-24 12:07     ` Jarkko Sakkinen [this message]
2020-10-30 12:13       ` Jarkko Sakkinen
2020-10-01 18:09 ` [PATCH v2 2/5] tpm_tis: Clean up locality release James Bottomley
2020-10-05 17:02   ` Jarkko Sakkinen
2020-10-05 19:05     ` James Bottomley
2020-10-05 20:34       ` Jarkko Sakkinen
2020-10-05 17:03   ` Jarkko Sakkinen
2020-10-19 23:17   ` Jerry Snitselaar
2020-10-24 12:10     ` Jarkko Sakkinen
2020-10-30 12:17       ` Jarkko Sakkinen
2020-10-30 15:47         ` James Bottomley
2020-10-30 21:52           ` Jarkko Sakkinen
2020-10-01 18:09 ` [PATCH v2 3/5] tpm_tis: Fix interrupts for TIS TPMs without legacy cycles James Bottomley
2020-10-05 17:05   ` Jarkko Sakkinen
2020-10-20  0:14   ` Jerry Snitselaar
2020-10-24 12:15     ` Jarkko Sakkinen
2020-10-30 12:18       ` Jarkko Sakkinen
2020-10-30 16:06         ` Jerry Snitselaar
2020-11-03  4:16           ` Jarkko Sakkinen
2020-12-01 18:12   ` Jerry Snitselaar
2020-12-01 19:49     ` Jerry Snitselaar
2020-12-01 21:06       ` James Bottomley
2020-12-01 21:47         ` Jerry Snitselaar
2020-10-01 18:09 ` [PATCH v2 4/5] tpm_tis: fix IRQ probing James Bottomley
2020-10-05 17:05   ` Jarkko Sakkinen
2020-10-19 23:41   ` Jerry Snitselaar
2020-10-24 12:17     ` Jarkko Sakkinen
2020-10-30 12:43       ` Jarkko Sakkinen
2020-10-30 15:49         ` James Bottomley
2020-10-30 16:11           ` Jerry Snitselaar
2020-11-03  4:43             ` Jarkko Sakkinen
2020-11-03 23:00               ` Jerry Snitselaar
2020-11-04  0:31                 ` Jarkko Sakkinen
2020-11-03  4:17           ` Jarkko Sakkinen
2020-11-06 15:32         ` Jarkko Sakkinen
2020-11-06 16:21           ` James Bottomley
2020-11-06 22:07             ` Jarkko Sakkinen
2020-10-01 18:09 ` [PATCH v2 5/5] Revert "tpm: Revert "tpm_tis_core: Turn on the TPM before probing IRQ's"" James Bottomley
2020-10-19 20:23   ` Jerry Snitselaar
2020-10-19 22:54     ` James Bottomley
2020-10-19 23:40   ` Jerry Snitselaar
2020-10-12  5:39 ` [PATCH v2 0/5] tpm_tis: fix interrupts (again) Jerry Snitselaar
2020-10-13  1:23   ` Jarkko Sakkinen
2020-10-18  5:34     ` Jarkko Sakkinen
2020-10-13  1:17 ` Jarkko Sakkinen
2020-10-13 15:15   ` Jerry Snitselaar
2020-10-13 15:24     ` James Bottomley
2020-10-13 16:05       ` Jerry Snitselaar
2020-10-14 15:03         ` Hans de Goede
2020-10-14 15:23           ` James Bottomley
2020-10-14 16:04             ` Hans de Goede
2020-10-14 16:34               ` Jerry Snitselaar
2020-10-14 16:46                 ` Hans de Goede
2020-10-14 17:01                   ` Jerry Snitselaar
2020-10-14 17:04                     ` Jerry Snitselaar
2020-10-14 20:58                   ` Jerry Snitselaar
2020-10-15  7:38                     ` Hans de Goede
2020-10-18 21:09                       ` Jarkko Sakkinen
2020-10-15 15:36                     ` James Bottomley
2020-10-15 18:48                       ` Jerry Snitselaar
2020-10-15 18:57                         ` James Bottomley
2020-10-15 19:16                           ` Jerry Snitselaar
2020-10-14 16:49                 ` James Bottomley
2020-10-18 21:05     ` Jarkko Sakkinen
2020-10-20 23:10       ` Jerry Snitselaar
2020-10-24 12:20         ` Jarkko Sakkinen
2020-10-26 18:29           ` Jerry Snitselaar
2020-10-27 17:14             ` Jarkko Sakkinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201024120744.GA32607@kernel.org \
    --to=jarkko@kernel.org \
    --cc=James.Bottomley@HansenPartnership.com \
    --cc=jarkko.sakkinen@linux.intel.com \
    --cc=jgg@ziepe.ca \
    --cc=jsnitsel@redhat.com \
    --cc=linux-integrity@vger.kernel.org \
    --cc=peterhuewe@gmx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).