• Gavin Shan's avatar
    powerpc/eeh: Don't report error in eeh_pe_reset_and_recover() · affeb0f2
    Gavin Shan authored
    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")
    Cc: stable@vger.kernel.org #v3.18+
    Signed-off-by: default avatarGavin Shan <gwshan@linux.vnet.ibm.com>
    Reviewed-by: default avatarRussell Currey <ruscur@russell.cc>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    affeb0f2
eeh_driver.c 26.6 KB