[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160830180701.GA7586@obsidianresearch.com>
Date: Tue, 30 Aug 2016 12:07:01 -0600
From: Jason Gunthorpe <jgunthorpe@...idianresearch.com>
To: Jarkko Sakkinen <jarkko.sakkinen@...ux.intel.com>
Cc: Peter Huewe <peterhuewe@....de>, stable@...r.kernel.org,
Marcel Selhorst <tpmdd@...horst.net>,
"moderated list:TPM DEVICE DRIVER"
<tpmdd-devel@...ts.sourceforge.net>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v6] tpm: fix a race condition in tpm2_unseal_trusted()
On Tue, Aug 30, 2016 at 01:51:06AM +0300, Jarkko Sakkinen wrote:
> Unseal and load operations should be done as an atomic operation. This
> commit introduces unlocked tpm_transmit() so that tpm2_unseal_trusted()
> can do the locking by itself.
>
> v2: Introduced an unlocked unseal operation instead of changing locking
> strategy in order to make less intrusive bug fix and thus more
> backportable.
>
> v3: Have also separate __tpm_transmit() that takes 'flags' in order to
> better localize the bug fix and make it easier to backport.
>
> v4: Cleaned up the control flow in tpm2_unseal_trusted. Added the
> missing 'Fixes' line.
>
> v5: Previous versions did not set the enum to any value, so it was set
> to zero. Changed enum to TPM_TRANSMIT_UNLOCKED because it is
> guaranteed to catch such situation. With change the common case
> adds so little clutter that the wrappers do not make sense anymore.
>
> v6: Added flags parameter to internal TPM command wrappers to have
> an expected default behavior and documented them.
Yeah, this is nice.
BTW, do not put the vX: stuff into the commit message, and it would be
best to include it after the diffstat the patch email
Reviewed-by: Jason Gunthorpe <jgunthorpe@...idianresearch.com>
Jason
Powered by blists - more mailing lists