On Tue, May 26, 2020 at 05:25:14PM -0700, James Bottomley wrote: > It has been reported that some TIS based TPMs are giving unexpected > errors when using the O_NONBLOCK path. 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. We > can 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. > > Fixes: d23d12484307 ("tpm: fix invalid locking in NONBLOCKING mode") > Reported-by: Mario Limonciello <Mario.Limonciello@xxxxxxxx> > Tested-by: Alex Guzman <alex@xxxxxxxxx> > Signed-off-by: James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> Subsystem tag is wrong, function name is missing '()' after and sometimes there are spaces after ".". Please fix the commit message and I can look at the code when it is clean. /Jarkko