Re: [PATCH v2] PCI: brcmstb: Fix race in removing chained IRQ handler

From: Nicolas Saenz Julienne
Date: Thu Nov 12 2020 - 04:07:40 EST


On Wed, 2020-11-11 at 22:53 +0100, Martin Kaiser wrote:
> Call irq_set_chained_handler_and_data() to clear the chained handler
> and the handler's data under irq_desc->lock.
>
> See also 2cf5a03cb29d ("PCI/keystone: Fix race in installing chained
> IRQ handler").
>
> Signed-off-by: Martin Kaiser <martin@xxxxxxxxx>
> Acked-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
> ---

Acked-by: Nicolas Saenz Julienne <nsaenzjulienne@xxxxxxx>

Thanks!

> v2:
> - rewrite the commit message to clarify that this is a bugfix
>
> drivers/pci/controller/pcie-brcmstb.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller/pcie-brcmstb.c
> index bea86899bd5d..7c666f4deb47 100644
> --- a/drivers/pci/controller/pcie-brcmstb.c
> +++ b/drivers/pci/controller/pcie-brcmstb.c
> @@ -606,8 +606,7 @@ static void brcm_msi_remove(struct brcm_pcie *pcie)
>
> if (!msi)
> return;
> - irq_set_chained_handler(msi->irq, NULL);
> - irq_set_handler_data(msi->irq, NULL);
> + irq_set_chained_handler_and_data(msi->irq, NULL, NULL);
> brcm_free_domains(msi);
> }
>

Attachment: signature.asc
Description: This is a digitally signed message part