On Thu, Jul 11, 2019 at 10:28:01AM -0700, Doug Anderson wrote: > Hi, > > On Thu, Jul 11, 2019 at 10:26 AM Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> wrote: > > > > On Thu, Jul 11, 2019 at 02:17:26PM -0300, Jason Gunthorpe wrote: > > > On Thu, Jul 11, 2019 at 07:04:37PM +0200, Greg KH wrote: > > > > On Thu, Jul 11, 2019 at 01:39:15PM -0300, Jason Gunthorpe wrote: > > > > > On Thu, Jul 11, 2019 at 09:29:19AM -0700, Douglas Anderson wrote: > > > > > > From: Vadim Sukhomlinov <sukhomlinov@xxxxxxxxxx> > > > > > > > > > > > > commit db4d8cb9c9f2af71c4d087817160d866ed572cc9 upstream. > > > > > > > > > > > > TPM 2.0 Shutdown involve sending TPM2_Shutdown to TPM chip and disabling > > > > > > future TPM operations. TPM 1.2 behavior was different, future TPM > > > > > > operations weren't disabled, causing rare issues. This patch ensures > > > > > > that future TPM operations are disabled. > > > > > > > > > > > > Fixes: d1bd4a792d39 ("tpm: Issue a TPM2_Shutdown for TPM2 devices.") > > > > > > Cc: stable@xxxxxxxxxxxxxxx > > > > > > Signed-off-by: Vadim Sukhomlinov <sukhomlinov@xxxxxxxxxx> > > > > > > [dianders: resolved merge conflicts with mainline] > > > > > > Signed-off-by: Douglas Anderson <dianders@xxxxxxxxxxxx> > > > > > > Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx> > > > > > > Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx> > > > > > > This is the backport of the patch referenced above to 4.19 as was done > > > > > > in Chrome OS. See <https://crrev.com/c/1495114> for details. It > > > > > > presumably applies to some older kernels. NOTE that the problem > > > > > > itself has existed for a long time, but continuing to backport this > > > > > > exact solution to super old kernels is out of scope for me. For those > > > > > > truly interested feel free to reference the past discussion [1]. > > > > > > > > > > > > Reason for backport: mainline has commit a3fbfae82b4c ("tpm: take TPM > > > > > > chip power gating out of tpm_transmit()") and commit 719b7d81f204 > > > > > > ("tpm: introduce tpm_chip_start() and tpm_chip_stop()") and it didn't > > > > > > seem like a good idea to backport 17 patches to avoid the conflict. > > > > > > > > > > Careful with this, you can't backport this to any kernels that don't > > > > > have the sysfs ops locking changes or they will crash in sysfs code. > > > > > > > > And what commit added that? > > > > > > commit 2677ca98ae377517930c183248221f69f771c921 > > > Author: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx> > > > Date: Sun Nov 4 11:38:27 2018 +0200 > > > > > > tpm: use tpm_try_get_ops() in tpm-sysfs.c. > > > > > > Use tpm_try_get_ops() in tpm-sysfs.c so that we can consider moving > > > other decorations (locking, localities, power management for example) > > > inside it. This direction can be of course taken only after other call > > > sites for tpm_transmit() have been treated in the same way. > > > > > > The last sentence suggests there are other patches needed too though.. > > > > So 5.1. So does this original patch need to go into the 5.2 and 5.1 > > kernels? > > The patch ("Fix TPM 1.2 Shutdown sequence to prevent future TPM > operations")? It's already done. It just got merge conflicts when > going back to 4.19 which is why I sent the backport. But the sysfs comment means I should not apply this backport then? Totally confused by this long thread, sorry. What am I supposed to do for the stable trees here? thanks, greg k-h