All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jarkko Sakkinen <jarkko@kernel.org>
To: LinoSanfilippo@gmx.de
Cc: peterhuewe@gmx.de, jgg@ziepe.ca, stefanb@linux.vnet.ibm.com,
	linux@mniewoehner.de, linux-integrity@vger.kernel.org,
	linux-kernel@vger.kernel.org, l.sanfilippo@kunbus.com,
	lukas@wunner.de, p.rosenberger@kunbus.com
Subject: Re: [PATCH v5 08/10] tpm, tpm_tis: Request threaded interrupt handler
Date: Wed, 15 Jun 2022 21:24:43 +0300	[thread overview]
Message-ID: <Yqoj6zaIrNB+aKph@iki.fi> (raw)
In-Reply-To: <20220610110846.8307-9-LinoSanfilippo@gmx.de>

On Fri, Jun 10, 2022 at 01:08:44PM +0200, LinoSanfilippo@gmx.de wrote:
> From: Lino Sanfilippo <l.sanfilippo@kunbus.com>
> 
> The TIS interrupt handler at least has to read and write the interrupt
> status register. In case of SPI both operations result in a call to
> tpm_tis_spi_transfer() which uses the bus_lock_mutex of the spi device
> and thus must only be called from a sleepable context.
> 
> To ensure this request a threaded interrupt handler.
> 
> Fixes: 1a339b658d9d ("tpm_tis_spi: Pass the SPI IRQ down to the driver")
> Signed-off-by: Lino Sanfilippo <l.sanfilippo@kunbus.com>
> ---
>  drivers/char/tpm/tpm_tis_core.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/char/tpm/tpm_tis_core.c b/drivers/char/tpm/tpm_tis_core.c
> index 0ef74979bc2c..8b5aa4fdbe92 100644
> --- a/drivers/char/tpm/tpm_tis_core.c
> +++ b/drivers/char/tpm/tpm_tis_core.c
> @@ -794,8 +794,11 @@ static int tpm_tis_probe_irq_single(struct tpm_chip *chip, u32 intmask,
>  	int rc;
>  	u32 int_status;
>  
> -	if (devm_request_irq(chip->dev.parent, irq, tis_int_handler, flags,
> -			     dev_name(&chip->dev), chip) != 0) {
> +
> +	rc = devm_request_threaded_irq(chip->dev.parent, irq, NULL,
> +				       tis_int_handler, IRQF_ONESHOT | flags,
> +				       dev_name(&chip->dev), chip);
> +	if (rc) {
>  		dev_info(&chip->dev, "Unable to request irq: %d for probe\n",
>  			 irq);
>  		return -1;
> -- 
> 2.36.1
> 

I actually would not add fixes tag to this because given that
interrupt support is quite unusable, this should not cause any
harm.

The code change itself is fine.

BR, Jarkko

  reply	other threads:[~2022-06-15 18:26 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-10 11:08 [PATCH v5 00/10] TPM IRQ fixes LinoSanfilippo
2022-06-10 11:08 ` [PATCH v5 01/10] tpm, tpm_tis: Avoid cache incoherency in test for interrupts LinoSanfilippo
2022-06-15 14:32   ` Jarkko Sakkinen
2022-06-15 22:06     ` Lino Sanfilippo
2022-06-10 11:08 ` [PATCH v5 02/10] tpm, tpm_tis: Claim locality before writing TPM_INT_ENABLE register LinoSanfilippo
2022-06-15 14:33   ` Jarkko Sakkinen
2022-06-10 11:08 ` [PATCH v5 03/10] tpm, tpm_tis: Disable interrupts if tpm_tis_probe_irq() failed LinoSanfilippo
2022-06-15 18:11   ` Jarkko Sakkinen
2022-06-10 11:08 ` [PATCH v5 04/10] tpm, tmp_tis: Claim locality before writing interrupt registers LinoSanfilippo
2022-06-15 18:13   ` Jarkko Sakkinen
2022-06-10 11:08 ` [PATCH v5 05/10] tpm, tpm_tis: Store result of interrupt capability query LinoSanfilippo
2022-06-15 18:18   ` Jarkko Sakkinen
2022-06-15 22:07     ` Lino Sanfilippo
2022-06-10 11:08 ` [PATCH v5 06/10] tpm, tpm_tis: Only handle supported interrupts in wait_for_tpm_stat() LinoSanfilippo
2022-06-15 18:21   ` Jarkko Sakkinen
2022-06-15 22:08     ` Lino Sanfilippo
2022-06-10 11:08 ` [PATCH v5 07/10] tmp, tmp_tis: Implement usage counter for locality LinoSanfilippo
2022-06-15 18:23   ` Jarkko Sakkinen
2022-06-15 22:22     ` Lino Sanfilippo
2022-06-10 11:08 ` [PATCH v5 08/10] tpm, tpm_tis: Request threaded interrupt handler LinoSanfilippo
2022-06-15 18:24   ` Jarkko Sakkinen [this message]
2022-06-10 11:08 ` [PATCH v5 09/10] tpm, tpm_tis: Claim locality in " LinoSanfilippo
2022-06-15 18:25   ` Jarkko Sakkinen
2022-06-10 11:08 ` [PATCH v5 10/10] tpm, tpm_tis: Enable interrupt test LinoSanfilippo
2022-06-15 18:26   ` Jarkko Sakkinen
2022-06-15 21:54     ` Michael Niewöhner
2022-06-15 23:30       ` Lino Sanfilippo
2022-06-16 13:03         ` Michael Niewöhner
2022-06-16 13:13           ` Lino Sanfilippo
2022-06-16 13:04     ` Michael Niewöhner
2022-06-26  5:19       ` Jarkko Sakkinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Yqoj6zaIrNB+aKph@iki.fi \
    --to=jarkko@kernel.org \
    --cc=LinoSanfilippo@gmx.de \
    --cc=jgg@ziepe.ca \
    --cc=l.sanfilippo@kunbus.com \
    --cc=linux-integrity@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@mniewoehner.de \
    --cc=lukas@wunner.de \
    --cc=p.rosenberger@kunbus.com \
    --cc=peterhuewe@gmx.de \
    --cc=stefanb@linux.vnet.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.