[PATCH 0/1] [SRU][F][OEM-5.6][OEM-OSP1-B] UBUNTU: SAUCE: tpm: fix TIS locality timeout problems
Ivan Hu
ivan.hu at canonical.com
Tue Jun 2 14:13:23 UTC 2020
BugLink: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1881710
[Impact]
It has been reported that some TIS based TPMs are giving unexpected errors when
using the O_NONBLOCK path of the TPM device. The problem is that some TPMs
don't like it when you get and then relinquish a locality
(as the tpm_try_get_ops()/tpm_put_ops() pair does) without sending a command.
This currently happens all the time in the O_NONBLOCK write path.
This affects Nuvoton TPMs and was a regression caused by the patch d23d12484307
("tpm: fix invalid locking in NONBLOCKING mode").
PatchLink: https://patchwork.kernel.org/patch/11576453/
[Fix]
Fix this by moving the tpm_try_get_ops()
further down the code to after the O_NONBLOCK determination is made.
This is safe because the priv->buffer_mutex still protects the priv
state being modified.
[Regression Risk]
Low. This patch only for fix the patch d23d12484307 ("tpm: fix invalid locking
in NONBLOCKING mode").
James Bottomley (1):
tpm: fix TIS locality timeout problems
drivers/char/tpm/tpm-dev-common.c | 19 +++++++++----------
1 file changed, 9 insertions(+), 10 deletions(-)
--
2.17.1
More information about the kernel-team
mailing list