[PATCH] cxl: Don't remove AFUs/vPHBs in cxl_reset

Sudip Mukherjee
2015-09-27T06:48:54Z

From: Daniel Axtens <dja@axtens.net>

commit 4e1efb403c1c016ae831bd9988a7d2e5e0af41a0 upstream.

If the driver doesn't participate in EEH, the AFUs will be removed
by cxl_remove, which will be invoked by EEH.

If the driver does particpate in EEH, the vPHB needs to stick around
so that the it can particpate.

In both cases, we shouldn't remove the AFU/vPHB.

Reviewed-by: Cyril Bur <cyrilbur@gmail.com>
Signed-off-by: Daniel Axtens <dja@axtens.net>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Reported-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
Cc: <stable@vger.kernel.org> # 4.1.9
---
drivers/misc/cxl/pci.c | 3 ---
1 file changed, 3 deletions(-)

diff --git a/drivers/misc/cxl/pci.c b/drivers/misc/cxl/pci.c
index 9eab76c..4f1b0bd 100644
--- a/drivers/misc/cxl/pci.c
+++ b/drivers/misc/cxl/pci.c
@@ -781,9 +781,6 @@ int cxl_reset(struct cxl *adapter)

dev_info(&dev->dev, "CXL reset\n");

- for (i = 0; i < adapter->slices; i++)
- cxl_remove_afu(adapter->afu[i]);
-
/* pcie_warm_reset requests a fundamental pci reset which includes a
* PERST assert/deassert. PERST triggers a loading of the image
* if "user" or "factory" is selected in sysfs */
--
1.9.1