]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/4.7.7/tpm-fix-byte-order-for-the-value-read-by-tpm2_get_tpm_pt.patch
fixes for 4.19
[thirdparty/kernel/stable-queue.git] / releases / 4.7.7 / tpm-fix-byte-order-for-the-value-read-by-tpm2_get_tpm_pt.patch
1 From 1b0612b04090e416828c0dd5ed197b0913d834a0 Mon Sep 17 00:00:00 2001
2 From: "apronin@chromium.org" <apronin@chromium.org>
3 Date: Thu, 14 Jul 2016 18:07:18 -0700
4 Subject: tpm: fix byte-order for the value read by tpm2_get_tpm_pt
5
6 From: apronin@chromium.org <apronin@chromium.org>
7
8 commit 1b0612b04090e416828c0dd5ed197b0913d834a0 upstream.
9
10 The result must be converted from BE byte order, which is used by the
11 TPM2 protocol. This has not popped out because tpm2_get_tpm_pt() has
12 been only used for probing.
13
14 Fixes: 7a1d7e6dd76a ("tpm: TPM 2.0 baseline support")
15 Change-Id: I7d71cd379b1a3b7659d20a1b6008216762596590
16 Signed-off-by: Andrey Pronin <apronin@chromium.org>
17 Reviewed-by: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
18 Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
19 Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
20 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
21
22 ---
23 drivers/char/tpm/tpm2-cmd.c | 2 +-
24 1 file changed, 1 insertion(+), 1 deletion(-)
25
26 --- a/drivers/char/tpm/tpm2-cmd.c
27 +++ b/drivers/char/tpm/tpm2-cmd.c
28 @@ -703,7 +703,7 @@ ssize_t tpm2_get_tpm_pt(struct tpm_chip
29
30 rc = tpm_transmit_cmd(chip, &cmd, sizeof(cmd), desc);
31 if (!rc)
32 - *value = cmd.params.get_tpm_pt_out.value;
33 + *value = be32_to_cpu(cmd.params.get_tpm_pt_out.value);
34
35 return rc;
36 }