Re: [PATCH 3/4] irqchip/sg2042-msi: Fix broken affinity setting
From: Inochi Amaoto
Date: Mon Aug 11 2025 - 18:38:36 EST
On Mon, Aug 11, 2025 at 04:43:00PM +0200, Andy Shevchenko wrote:
> On Thu, Aug 07, 2025 at 07:23:24PM +0800, Inochi Amaoto wrote:
> > When using NVME on SG2044, the NVME always complains "I/O tag XXX
> > (XXX) QID XX timeout, completion polled", which is caused by the
> > broken handler of the sg2042-msi driver.
> >
> > As PLIC driver can only setting affinity when enabling, the sg2042-msi
> > does not properly handled affinity setting previously and enable irq in
> > an unexpected executing path.
> >
> > Since the PCI template domain supports irq_startup/irq_shutdown, set
> > irq_chip_[startup/shutdown]_parent for irq_startup/irq_shutdown. So
> > the irq can be started properly.
>
> > Fixes: e96b93a97c90 ("irqchip/sg2042-msi: Add the Sophgo SG2044 MSI interrupt controller")
> > Reported-by: Han Gao <rabenda.cn@xxxxxxxxx>
>
> Closes ?
>
I got a direct private email from Han, so I think there is no pulic
Closes.
> > Suggested-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> > Signed-off-by: Inochi Amaoto <inochiama@xxxxxxxxx>
>
> ...
>
> > #define SG2042_MSI_FLAGS_REQUIRED (MSI_FLAG_USE_DEF_DOM_OPS | \
> > - MSI_FLAG_USE_DEF_CHIP_OPS)
> > + MSI_FLAG_USE_DEF_CHIP_OPS | \
> > + MSI_FLAG_PCI_MSI_MASK_PARENT |\
>
> Can we indent \ to be on the same column (using TABs)?
>
Yeah, of course
> > + MSI_FLAG_PCI_MSI_STARTUP_PARENT)
>
> ...
>
> > #define SG2044_MSI_FLAGS_REQUIRED (MSI_FLAG_USE_DEF_DOM_OPS | \
> > - MSI_FLAG_USE_DEF_CHIP_OPS)
> > + MSI_FLAG_USE_DEF_CHIP_OPS | \
> > + MSI_FLAG_PCI_MSI_MASK_PARENT |\
> > + MSI_FLAG_PCI_MSI_STARTUP_PARENT)
>
> Ditto.
>
> --
> With Best Regards,
> Andy Shevchenko
>
>