summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/eeh_pe.c
diff options
context:
space:
mode:
authorSam Bobroff <sbobroff@linux.ibm.com>2018-05-25 13:11:34 +1000
committerMichael Ellerman <mpe@ellerman.id.au>2018-06-03 20:43:39 +1000
commit30424e386a30d1160a0fdf47beafe8b116d0a8f7 (patch)
tree3a09b0713b003110f5ed08b887932017402409da /arch/powerpc/kernel/eeh_pe.c
parent2eae39f29b10038601ddc36dae346cd79c96faa1 (diff)
downloadlinux-30424e386a30d1160a0fdf47beafe8b116d0a8f7.tar.bz2
powerpc/eeh: Clean up pci_ers_result handling
As EEH event handling progresses, a cumulative result of type pci_ers_result is built up by (some of) the eeh_report_*() functions using either: if (rc == PCI_ERS_RESULT_NEED_RESET) *res = rc; if (*res == PCI_ERS_RESULT_NONE) *res = rc; or: if ((*res == PCI_ERS_RESULT_NONE) || (*res == PCI_ERS_RESULT_RECOVERED)) *res = rc; if (*res == PCI_ERS_RESULT_DISCONNECT && rc == PCI_ERS_RESULT_NEED_RESET) *res = rc; (Where *res is the accumulator.) However, the intent is not immediately clear and the result in some situations is order dependent. Address this by assigning a priority to each result value, and always merging to the highest priority. This renders the intent clear, and provides a stable value for all orderings. Signed-off-by: Sam Bobroff <sbobroff@linux.ibm.com> [mpe: Minor formatting (clang-format)] Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/kernel/eeh_pe.c')
0 files changed, 0 insertions, 0 deletions