Sorry for that offence, I should ask for your permission. -----Original Message----- From: Joe Perches <[email protected]> Sent: Sunday, September 27, 2020 5:14 PM To: Zhao, Haifeng <[email protected]>; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected] Cc: [email protected]; [email protected]; Jia, Pei P <[email protected]>; [email protected]; Kuppuswamy, Sathyanarayanan <[email protected]>; [email protected] Subject: Re: [PATCH 4/5 V4] PCI: only return true when dev io state is really changed
On Sun, 2020-09-27 at 04:27 -0400, Ethan Zhao wrote: > When uncorrectable error happens, AER driver and DPC driver interrupt > handlers likely call > > pcie_do_recovery() > ->pci_walk_bus() > ->report_frozen_detected() > > with pci_channel_io_frozen the same time. > If pci_dev_set_io_state() return true even if the original state is > pci_channel_io_frozen, that will cause AER or DPC handler re-enter the > error detecting and recovery procedure one after another. > The result is the recovery flow mixed between AER and DPC. > So simplify the pci_dev_set_io_state() function to only return true > when dev->error_state is changed. > > Signed-off-by: Ethan Zhao <[email protected]> > Tested-by: Wen Jin <[email protected]> > Tested-by: Shanshan Zhang <[email protected]> > Reviewed-by: Andy Shevchenko <[email protected]> > Reviewed-by: Alexandru Gagniuc <[email protected]> > Reviewed-by: Joe Perches <[email protected]> Hi Ethan/Haifeng. Like Andy, I did not "review" this patch and sign it. I merely suggested another simplification. Please do not add -by: lines unless actually received by you.

