diff options
author | Vaibhav Jain <vaibhav@linux.vnet.ibm.com> | 2017-02-23 06:27:26 +0300 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2017-03-20 12:19:36 +0300 |
commit | 07f5ab6002a4f0b633f3495157166f9f6180871b (patch) | |
tree | 06dabfd6c40e6e786269674611ce12d2cb13669c /net | |
parent | 97da3854c526d3a6ee05c849c96e48d21527606c (diff) | |
download | linux-07f5ab6002a4f0b633f3495157166f9f6180871b.tar.xz |
cxl: Route eeh events to all slices for pci_channel_io_perm_failure state
Fix a boundary condition where in some cases an eeh event with state ==
pci_channel_io_perm_failure wont be passed on to a driver attached to
the virtual PCI device associated with a slice. This will happen in case
the slice just before (n-1) doesn't have any vPHB bus associated with
it, that results in an early return from cxl_pci_error_detected()
callback.
With state == pci_channel_io_perm_failure, the adapter will be removed
irrespective of the return value of cxl_vphb_error_detected(). So we now
always return PCI_ERS_RESULT_DISCONNECTED for this case i.e even if
the AFU isn't using a vPHB (currently returns PCI_ERS_RESULT_NONE).
Fixes: e4f5fc001a6("cxl: Do not create vPHB if there are no AFU configuration records")
Signed-off-by: Vaibhav Jain <vaibhav@linux.vnet.ibm.com>
Reviewed-by: Matthew R. Ochs <mrochs@linux.vnet.ibm.com>
Reviewed-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
Acked-by: Frederic Barrat <fbarrat@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'net')
0 files changed, 0 insertions, 0 deletions