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

From: Jason Gunthorpe
Date: Thu Jul 14 2016 - 23:11:04 EST


On Thu, Jul 14, 2016 at 06:07:18PM -0700, Andrey Pronin wrote:
> Change-Id: I7d71cd379b1a3b7659d20a1b6008216762596590
> Signed-off-by: Andrey Pronin <apronin@xxxxxxxxxxxx>
> 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@xxxxxxxxxxxxxxxxxxxx>

Jason