Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1443908

Re: [PATCH 2/2] tpm: fix byte-order for the value read by tpm2_get_tpm_pt

From Andrey Pronin <apronin@chromium.org>
Newsgroups linux.kernel
Subject Re: [PATCH 2/2] tpm: fix byte-order for the value read by tpm2_get_tpm_pt
Date 2016-07-15 05:20 +0200
Message-ID <rV1Pr-1AM-1@gated-at.bofh.it> (permalink)
References <rUZND-h3-3@gated-at.bofh.it> <rUZND-h3-1@gated-at.bofh.it> <rV1Pr-1AM-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Thu, Jul 14, 2016 at 09:10:46PM -0600, Jason Gunthorpe wrote:
> On Thu, Jul 14, 2016 at 06:07:18PM -0700, Andrey Pronin wrote:
> > Change-Id: I7d71cd379b1a3b7659d20a1b6008216762596590
> > Signed-off-by: Andrey Pronin <apronin@chromium.org>
> >  drivers/char/tpm/tpm2-cmd.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/drivers/char/tpm/tpm2-cmd.c b/drivers/char/tpm/tpm2-cmd.c
> > index a1673dc..a88b31e 100644
> > +++ b/drivers/char/tpm/tpm2-cmd.c
> > @@ -703,7 +703,7 @@ ssize_t tpm2_get_tpm_pt(struct tpm_chip *chip, u32 property_id,  u32 *value,
> >  
> >  	rc = tpm_transmit_cmd(chip, &cmd, sizeof(cmd), desc);
> >  	if (!rc)
> > -		*value = cmd.params.get_tpm_pt_out.value;
> > +		*value = be32_to_cpu(cmd.params.get_tpm_pt_out.value);
> 
> Huh.
> 
> Jarkko: Are you running sparse on the tpm stuff? The annotations look
> right here, sparse should have complained on this? Andrey, did sparse
> complain here or is there something more serious wrong as well??
> 
> Reviewed-by: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
> 
> Jason

No, this is not sparse complaining. I tried using tpm2_get_tpm_pt() to
read permanent flags and discovered that it was missing byte-ordering
conversion. The only place tpm2_get_tpm_pt() was used before was in
tpm2_gen_interrupt, which discarded the result. So, nobody noticed,
I guess.

Andrey

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 2/2] tpm: fix byte-order for the value read by tpm2_get_tpm_pt Andrey Pronin <apronin@chromium.org> - 2016-07-15 03:10 +0200
  Re: [PATCH 2/2] tpm: fix byte-order for the value read by  tpm2_get_tpm_pt Andrey Pronin <apronin@chromium.org> - 2016-07-15 05:20 +0200
    Re: [PATCH 2/2] tpm: fix byte-order for the value read by  tpm2_get_tpm_pt Jason Gunthorpe <jgunthorpe@obsidianresearch.com> - 2016-07-15 05:40 +0200
      Re: [PATCH 2/2] tpm: fix byte-order for the value read by  tpm2_get_tpm_pt Jason Gunthorpe <jgunthorpe@obsidianresearch.com> - 2016-07-15 21:40 +0200
        Re: [PATCH 2/2] tpm: fix byte-order for the value read by  tpm2_get_tpm_pt Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com> - 2016-07-18 21:10 +0200
      Re: [PATCH 2/2] tpm: fix byte-order for the value read by  tpm2_get_tpm_pt Andrey Pronin <apronin@chromium.org> - 2016-07-15 21:40 +0200
  Re: [PATCH 2/2] tpm: fix byte-order for the value read by  tpm2_get_tpm_pt Jason Gunthorpe <jgunthorpe@obsidianresearch.com> - 2016-07-15 05:20 +0200
  Re: [PATCH 2/2] tpm: fix byte-order for the value read by  tpm2_get_tpm_pt Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com> - 2016-07-18 21:10 +0200
  Re: [PATCH 2/2] tpm: fix byte-order for the value read by  tpm2_get_tpm_pt Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com> - 2016-07-18 21:10 +0200
    Re: [PATCH 2/2] tpm: fix byte-order for the value read by  tpm2_get_tpm_pt Andrey Pronin <apronin@chromium.org> - 2016-07-18 21:20 +0200

csiph-web