[PATCH] PCI: layerscape: Change back to the default error response behavior

Z.q. Hou zhiqiang.hou at nxp.com
Mon Oct 12 00:33:32 EDT 2020


Hi Rob and Kishon,

> -----Original Message-----
> From: Rob Herring <robh at kernel.org>
> Sent: 2020年9月30日 23:08
> To: Kishon Vijay Abraham I <kishon at ti.com>
> Cc: Z.q. Hou <zhiqiang.hou at nxp.com>; PCI <linux-pci at vger.kernel.org>;
> linux-kernel at vger.kernel.org; linux-arm-kernel
> <linux-arm-kernel at lists.infradead.org>; Lorenzo Pieralisi
> <lorenzo.pieralisi at arm.com>; Bjorn Helgaas <bhelgaas at google.com>; M.h.
> Lian <minghuan.lian at nxp.com>; Roy Zang <roy.zang at nxp.com>; Mingkai
> Hu <mingkai.hu at nxp.com>; Leo Li <leoyang.li at nxp.com>
> Subject: Re: [PATCH] PCI: layerscape: Change back to the default error
> response behavior
> 
> On Wed, Sep 30, 2020 at 8:29 AM Kishon Vijay Abraham I <kishon at ti.com>
> wrote:
> >
> > Hi Hou,
> >
> > On 29/09/20 6:43 pm, Zhiqiang Hou wrote:
> > > From: Hou Zhiqiang <Zhiqiang.Hou at nxp.com>
> > >
> > > In the current error response behavior, it will send a SLVERR
> > > response to device's internal AXI slave system interface when the
> > > PCIe controller experiences an erroneous completion (UR, CA and CT)
> > > from an external completer for its outbound non-posted request,
> > > which will result in SError and crash the kernel directly.
> > > This patch change back it to the default behavior to increase the
> > > robustness of the kernel. In the default behavior, it always sends
> > > an OKAY response to the internal AXI slave interface when the
> > > controller gets these erroneous completions. And the AER driver will
> > > report and try to recover these errors.
> >
> > I don't think not forwarding any error interrupts is a good idea.
> 
> Interrupts would be fine. Abort/SError is not. I think it is pretty clear what the
> correct behavior is for config accesses.

I agree with Rob.

> 
> > Maybe
> > you could disable it while reading configuration space registers
> > (vendorID and deviceID) and then enable error forwarding back?
> 
> To add to the locking (or lack of) problems in config accesses?

If take this approach, during the hole of CFG access, the error of MEM_rd will also not be forwarded, so it's not a reliable mechanism for user.

Thanks,
Zhiqiang

> 
> Rob


More information about the linux-arm-kernel mailing list