Hello everyone, Here is a second, somewhat deeper, set of cleanups for the EEH code (mostly eeh_drver.c).
These changes are not intended to significantly alter the actual processing, but rather to improve the readability and maintainability of the code. They are subjective by nature so I would appreciate comments and suggestions. The earlier changes are mostly to support the last patch, where we're finally able to use a common infrastructure for the reporting functions (basically wrappers around the driver's handlers). This allows removal of a fair bit of code, and the easy addition of some useful messaging which should make future maintenance easier (as an example, a recent fix in this area "powerpc/eeh: Fix race with driver un/bind" would have required adding two lines rather than 42+/26-). Cheers, Sam. Sam Bobroff (13): powerpc/eeh: Add eeh_max_freezes to initial EEH log line powerpc/eeh: Add final message for successful recovery powerpc/eeh: Fix use-after-release of EEH driver powerpc/eeh: Remove unused eeh_pcid_name() powerpc/eeh: Strengthen types of eeh traversal functions powerpc/eeh: Add message when PE processing at parent powerpc/eeh: Clean up pci_ers_result handling powerpc/eeh: Introduce eeh_for_each_pe() powerpc/eeh: Introduce eeh_edev_actionable() powerpc/eeh: Introduce eeh_set_channel_state() powerpc/eeh: Introduce eeh_set_irq_state() powerpc/eeh: Cleaner handling of EEH_DEV_NO_HANDLER powerpc/eeh: Refactor report functions arch/powerpc/include/asm/eeh.h | 11 +- arch/powerpc/kernel/eeh.c | 19 +- arch/powerpc/kernel/eeh_driver.c | 468 ++++++++++++++++++++------------------- arch/powerpc/kernel/eeh_pe.c | 26 +-- 4 files changed, 268 insertions(+), 256 deletions(-) -- 2.16.1.74.g9b0b1f47b