On Thu, Mar 04, 2021 at 04:23:01PM -0800, Dan Williams wrote: > On Thu, Mar 4, 2021 at 3:19 PM Kuppuswamy, Sathyanarayanan > <sathyanarayanan.kuppuswamy@xxxxxxxxx> wrote: > > > If the handler is not available due to AER being owned by firmware, > > then it needs to be fixed. In EDR mode, even if DPC/AER is owned > > by firmware , OS need to own the recovery part. So I think it > > needs further investigation to understand why it reports, > > PCI_ERS_RESULT_NO_AER_DRIVER > > As far as I can see the only way to get PCI_ERS_RESULT_NO_AER_DRIVER > is when there actually is no handler, or the device io state has set > to failed. I notice the hotplug handler sets the device io state to > failed while processing link down. If the device is actually missing a > handler definition then disconnect seems the right response. Hypothetically speaking, if a DPC event occurs at the Root Port above a deep PCIe topology, it only takes one device with no handler to spoil the recovery for the well behaved drivers lower in the hierarchy. We can probably handle that better if this scenario actually happens. Not sure if does happen, but the switchtec driver looks sus.