From 5c7a35e3e25232aef8d7aee484436f8cbe3b9b94 Mon Sep 17 00:00:00 2001 From: Gavin Shan Date: Wed, 4 Jun 2014 17:31:52 +1000 Subject: [PATCH] powerpc/powernv: Fix killed EEH event On PowerNV platform, EEH errors are reported by IO accessors or poller driven by interrupt. After the PE is isolated, we won't produce EEH event for the PE. The current implementation has possibility of EEH event lost in this way: The interrupt handler queues one "special" event, which drives the poller. EEH thread doesn't pick the special event yet. IO accessors kicks in, the frozen PE is marked as "isolated" and EEH event is queued to the list. EEH thread runs because of special event and purge all existing EEH events. However, we never produce an other EEH event for the frozen PE. Eventually, the PE is marked as "isolated" and we don't have EEH event to recover it. The patch fixes the issue to keep EEH events for PEs that have been marked as "isolated" with the help of additional "force" help to eeh_remove_event(). Reported-by: Rolf Brudeseth Signed-off-by: Gavin Shan Signed-off-by: Benjamin Herrenschmidt --- Reading git-format-patch failed