powerpc/eeh: Manage EEH_PE_RECOVERING inside eeh_handle_normal_event()
authorSam Bobroff <sam.bobroff@au1.ibm.com>
Mon, 19 Mar 2018 02:46:30 +0000 (13:46 +1100)
committerMichael Ellerman <mpe@ellerman.id.au>
Tue, 27 Mar 2018 12:44:58 +0000 (23:44 +1100)
commit37fd8125873031d5c450293bce827c3bf397287d
tree96534921ae9df0f91607395734072986fd27e7bb
parent68701780712f7ddb2fa81032aa1b4a949949ddf8
powerpc/eeh: Manage EEH_PE_RECOVERING inside eeh_handle_normal_event()

Currently the EEH_PE_RECOVERING flag for a PE is managed by both the
caller and callee of eeh_handle_normal_event() (among other places not
considered here). This is complicated by the fact that the PE may
or may not have been invalidated by the call.

So move the callee's handling into eeh_handle_normal_event(), which
clarifies it and allows the return type to be changed to void (because
it no longer needs to indicate at the PE has been invalidated).

This should not change behaviour except in eeh_event_handler() where
it was previously possible to cause eeh_pe_state_clear() to be called
on an invalid PE, which is now avoided.

Signed-off-by: Sam Bobroff <sam.bobroff@au1.ibm.com>
Reviewed-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/include/asm/eeh_event.h
arch/powerpc/kernel/eeh_driver.c
arch/powerpc/kernel/eeh_event.c