Re: [PATCH v3 1/4] tpm: Use a threaded interrupt handler

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, May 05, 2021 at 12:54:37AM +0200, Lino Sanfilippo wrote:
> 
> Hi,
> 
> 
> On 03.05.21 at 17:14, Jarkko Sakkinen wrote:
> > On Sat, May 01, 2021 at 03:57:24PM +0200, Lino Sanfilippo wrote:
> >> The interrupt handler uses tpm_tis_read32() and tpm_tis_write32() to access
> >> the interrupt status register. In case of SPI those accesses are done with
> >> the spi_bus_lock mutex held. This means that the status register cannot
> >> be read or written in interrupt context.
> >>
> >> For this reason request a threaded interrupt handler so that the required
> >> accesses can be done in process context.
> >>
> >> Reviewed-by: Stefan Berger <stefanb@xxxxxxxxxxxxx>
> >> Signed-off-by: Lino Sanfilippo <LinoSanfilippo@xxxxxx>
> >
> > No fixes tag.
> >
> > The short summary scopes now the whole TPM subsystem ("tpm:"), but the fix
> > is targetted *only* for tpm_tis_spi. How about "tpm, tpm_tis_spi: Allow to
> > sleep in the interrupt handler"?
> >
> > This also changes the semantics tpm_tis_*, not just tpm_tis_spi, which is
> > not acceptable. We cannot backport a fix like this.
> >
> > Probably you should just add a parameter to tpm_tis_core_init() to hint
> > that threaded IRQ is required, and then only conditionally do so.
> >
> 
> Sure, this is doable although to be honest I dont see the issue with also the
> non-SPI code running in the threaded interrupt handler. The functionality should
> not change (especially since interrupts are not even working right now) and it would
> save us a special treatment of the SPI case.

It's violation of "3) Separate your changes" [*].

E.g. we do not want to introduce "improvements" or "simplifications" to
stable kernels on purpose.

[*] https://www.kernel.org/doc/html/v5.11/process/submitting-patches.html> 

/Jarkko



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux Kernel]     [Linux Kernel Hardening]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux