Re: [PATCH v17 09/12] PCI/AER: Allow clearing Error Status Register in FF mode

From: Kuppuswamy Sathyanarayanan
Date: Wed Mar 11 2020 - 19:10:27 EST


Hi Bjorn,

Re-sending the response in text mode.

On 3/11/20 3:23 PM, Bjorn Helgaas wrote:
Is any synchronization needed here between the EDR path and the
hotplug/enumeration path?
If we want to follow the implementation note step by step (in sequence) then
we need some synchronization between EDR path and enumeration path. But
if its OK the achieve the same end result by following steps out of sequence
then we don't need to create any dependency between EDR and enumeration
paths. Currently we follow the later approach.

For example, consider the case in flow chart where after sending success _OST,
firmware decides to stop the recovery of the device.

if we follow the flow chart as its then the steps should be,

1. clear the DPC status trigger
2. Send success code via _OST, and wait for return from _OST
3. if successful return then enumerate the child devices and reassign bus numbers.

In current approach the steps followed are,

1. Clear the DPC status trigger.
2. Send success code via _OST
2. In parallel, LINK UP event path will enumerate the child devices.
3. if firmware decides not to recover the device, then LINK DOWN event will eventually
ÂÂÂ remove them again.

--
Sathyanarayanan Kuppuswamy
Linux kernel developer