[PATCH 4.9 16/87] cxl: Force psl data-cache flush during device shutdown

From: Greg Kroah-Hartman
Date: Mon Nov 13 2017 - 07:59:52 EST


4.9-stable review patch. If anyone has any objections, please let me know.

------------------

From: Vaibhav Jain <vaibhav@xxxxxxxxxxxxxxxxxx>


[ Upstream commit d7b1946c7925a270062b2e0718aa57b42ba619c0 ]

This change adds a force psl data cache flush during device shutdown
callback. This should reduce a possibility of psl holding a dirty
cache line while the CAPP is being reinitialized, which may result in
a UE [load/store] machine check error.

Signed-off-by: Vaibhav Jain <vaibhav@xxxxxxxxxxxxxxxxxx>
Reviewed-by: Andrew Donnellan <andrew.donnellan@xxxxxxxxxxx>
Acked-by: Frederic Barrat <fbarrat@xxxxxxxxxxxxxxxxxx>
Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
Signed-off-by: Sasha Levin <alexander.levin@xxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
drivers/misc/cxl/pci.c | 3 +++
1 file changed, 3 insertions(+)

--- a/drivers/misc/cxl/pci.c
+++ b/drivers/misc/cxl/pci.c
@@ -1620,6 +1620,9 @@ static void cxl_pci_remove_adapter(struc
cxl_sysfs_adapter_remove(adapter);
cxl_debugfs_adapter_remove(adapter);

+ /* Flush adapter datacache as its about to be removed */
+ cxl_data_cache_flush(adapter);
+
cxl_deconfigure_adapter(adapter);

device_unregister(&adapter->dev);