[PATCH v4 0/1] PCI/ERR: fix regression introduced by 6d2c89441571 ("PCI/ERR: Update error status after reset_link()")

From: Hedi Berriche
Date: Mon Nov 02 2020 - 10:10:14 EST


This is essentially a resend of v3 as it failed to get enough traction;
no code change, I only added Sinan Kaya's Reviewed-by.

- Changes since v3:
* added Sinan Kaya <okaya@xxxxxxxxxx> Reviewed-by

- Changes since v2:
* set status to PCI_ERS_RESULT_RECOVERED, in case of successful link
reset, if and only if the initial value of error status is
PCI_ERS_RESULT_DISCONNECT or PCI_ERS_RESULT_NO_AER_DRIVER.

- Changes since v1:
* changed the commit message to clarify what broke post commit 6d2c89441571
* dropped the misnomer post_reset_status variable in favour of a more natural
approach that relies on a boolean to keep track of the outcome of reset_link()

After commit 6d2c89441571 ("PCI/ERR: Update error status after reset_link()")
pcie_do_recovery() no longer calls ->slot_reset() in the case of a successful
reset which breaks error recovery by breaking driver (re)initialisation.

Cc: Russ Anderson <rja@xxxxxxx>
Cc: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@xxxxxxxxxxxxxxx>
Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
Cc: Ashok Raj <ashok.raj@xxxxxxxxx>
Cc: Joerg Roedel <jroedel@xxxxxxxx>
Cc: Sinan Kaya <okaya@xxxxxxxxxx>

Cc: stable@xxxxxxxxxx # v5.7+

---
Hedi Berriche (1):
PCI/ERR: don't clobber status after reset_link()

drivers/pci/pcie/err.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)

--
2.28.0