Subject: Re: [PATCH] wfx: fix irqf_oneshot.cocci warnings

From: Jérôme Pouiller <[email-masked]>
Date: Tue, 16 Mar 2021 08:53:03 +0100

Hello,

On Monday 15 March 2021 22:09:20 CET kernel test robot wrote:
> 
> From: kernel test robot <[email-masked]>
> 
> drivers/net/wireless/silabs/wfx/bus_sdio.c:134:8-33: ERROR: Threaded IRQ with no primary handler requested without IRQF_ONESHOT
> 
>  Since commit 1c6c69525b40 ("genirq: Reject bogus threaded irq requests")
>  threaded IRQs without a primary handler need to be requested with
>  IRQF_ONESHOT, otherwise the request will fail.
> 
>  So pass the IRQF_ONESHOT flag in this case.
> 
> Generated by: scripts/coccinelle/misc/irqf_oneshot.cocci
> 
> CC: Jérôme Pouiller <[email-masked]>
> Reported-by: kernel test robot <[email-masked]>
> Signed-off-by: kernel test robot <[email-masked]>
> ---
> 
> url:    https://github.com/0day-ci/linux/commits/Jerome-Pouiller/wfx-get-out-from-the-staging-area/20210315-212855
> base:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git b828324bba8f575fde487a91fec07303789dda8a
> 
>  bus_sdio.c |    3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> --- a/drivers/net/wireless/silabs/wfx/bus_sdio.c
> +++ b/drivers/net/wireless/silabs/wfx/bus_sdio.c
> @@ -132,7 +132,8 @@ static int wfx_sdio_irq_subscribe(void *
>                 flags = IRQF_TRIGGER_HIGH;
>         flags |= IRQF_ONESHOT;
>         return devm_request_threaded_irq(&bus->func->dev, bus->of_irq, NULL,
> -                                        wfx_sdio_irq_handler_ext, flags,
> +                                        wfx_sdio_irq_handler_ext,
> +                                        flags | IRQF_ONESHOT,
>                                          "wfx", bus);
>  }
> 
> 

Obviously, "flags" always contains IRQF_ONESHOT. So, it is a false positive.

-- 
Jérôme Pouiller