On 1/28/2019 9:54 AM, Dongdong Liu wrote:
In this case the AER error status of other functions should not report any
outstanding event. Please verify this. Otherwise, you are looking at a device quirk.
Agree, multiple errors bit can be set, AER driver or firmware will collect the error
devices and call pcie_do_recovery() for every error devices.
pcie_do_recovery() is also being called for non-firmware first scenario where OS
has no prior knowledge of which devices are in fault.
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.