lkml.org 
[lkml]   [2022]   [Jan]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v4 1/2] tpm: Fix error handling in async work
On Sat, Jan 15, 2022 at 05:26:26PM -0800, Tadeusz Struk wrote:
> When an invalid (non existing) handle is used in a TPM command,
> that uses the resource manager interface (/dev/tpmrm0) the resource
> manager tries to load it from its internal cache, but fails and
> the tpm_dev_transmit returns an -EINVAL error to the caller.
> The existing async handler doesn't handle these error cases
> currently and the condition in the poll handler never returns
> mask with EPOLLIN set.
> The result is that the poll call blocks and the application gets stuck
> until the user_read_timer wakes it up after 120 sec.
> Change the tpm_dev_async_work function to handle error conditions
> returned from tpm_dev_transmit they are also reflected in the poll mask
> and a correct error code could passed back to the caller.
>
> Cc: Jarkko Sakkinen <jarkko@kernel.org>
> Cc: Jason Gunthorpe <jgg@ziepe.ca>
> Cc: <linux-integrity@vger.kernel.org>
> Cc: <stable@vger.kernel.org>
> Cc: <linux-kernel@vger.kernel.org>
>
> Fixes: 9e1b74a63f77 ("tpm: add support for nonblocking operation")
> Tested-by: Jarkko Sakkinen<jarkko@kernel.org>
> Signed-off-by: Tadeusz Struk <tstruk@gmail.com>

Thank you.

Reviewed-by: Jarkko Sakkinen <jarkko@kernel.org>

BR, Jarkko

\
 
 \ /
  Last update: 2022-01-16 15:34    [W:1.204 / U:0.712 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site