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

Jérôme Pouiller
2021-03-16T07:54:17Z

Hello,

On Monday 15 March 2021 22:09:20 CET kernel test robot wrote:
>
> From: kernel test robot <lkp@intel.com>
>
> 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 <jerome.pouiller@silabs.com>
> Reported-by: kernel test robot <lkp@intel.com>
> Signed-off-by: kernel test robot <lkp@intel.com>
> ---
>
> 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