Re: [PATCH] PCI/ERR: Fix run error recovery callbacks for all affected devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 1/28/2019 10:47 AM, Sinan Kaya wrote:
also have different PFs (device numbers are different) under the same bus.
This case do not need to brodcast all the devices under the same bus.

Even if OS was to call pcie_do_recovery() for other devices, nothing should
happen because the expectation for other devices' AER status register to report
no errors. This is the case we want you to validate. If this is not true, you
are looking at a firmware/HW bug.

Slight clarification about the statement above. Based on quick code scan,
pcie_do_recovery() should only be called if there is an outstanding AER error
for the first AER device in non-FF (non-firmware-first) scenario.

Whereas it gets called per AER device on FF scenario and this is where the
conflict is.

I think your argument is that "if there is a non-fatal error on the parent,
should it be broadcasted to all children devices in pcie_do_recovery()?"

IMO, I think the answer is yes only if the children's AER status reports a
problem and I don't see this check in the code.

Code needs to be refactored to follow a similar pattern to FF scenario and
pci_walk_bus() calls should be removed from the NON-FATAL path.




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux