mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 10:00:17 +00:00
powerpc/eeh: Don't report error in eeh_pe_reset_and_recover()
commitaffeb0f2d3upstream. The function eeh_pe_reset_and_recover() is used to recover EEH error when the passthrough device are transferred to guest and backwards, meaning the device's driver is vfio-pci or none. When the driver is vfio-pci that provides error_detected() error handler only, the handler simply stops the guest and it's not expected behaviour. On the other hand, no error handlers will be called if we don't have a bound driver. This ignores the error handler in eeh_pe_reset_and_recover() that reports the error to device driver to avoid the exceptional behaviour. Fixes:5cfb20b9("powerpc/eeh: Emulate EEH recovery for VFIO devices") Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com> Reviewed-by: Russell Currey <ruscur@russell.cc> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
b84c42fe6e
commit
df508c17ff
@@ -504,9 +504,6 @@ int eeh_pe_reset_and_recover(struct eeh_pe *pe)
|
|||||||
/* Save states */
|
/* Save states */
|
||||||
eeh_pe_dev_traverse(pe, eeh_dev_save_state, NULL);
|
eeh_pe_dev_traverse(pe, eeh_dev_save_state, NULL);
|
||||||
|
|
||||||
/* Report error */
|
|
||||||
eeh_pe_dev_traverse(pe, eeh_report_error, &result);
|
|
||||||
|
|
||||||
/* Issue reset */
|
/* Issue reset */
|
||||||
ret = eeh_reset_pe(pe);
|
ret = eeh_reset_pe(pe);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
|
|||||||
Reference in New Issue
Block a user