PEL: Restore Resolution property for existing PELs
The Resolution D-Bus property is filled in with PEL callouts, but this
wasn't being done on startup for existing PELs. This commit adds that
functionality.
With 2500 PELs this takes a second or less.
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I0d8f381d8f1db8e49cf6d46b5b88ee35c242a509
diff --git a/extensions/openpower-pels/manager.cpp b/extensions/openpower-pels/manager.cpp
index a40305d..e64e858 100644
--- a/extensions/openpower-pels/manager.cpp
+++ b/extensions/openpower-pels/manager.cpp
@@ -197,7 +197,7 @@
// Check if firmware should quiesce system due to error
checkPelAndQuiesce(pel);
updateEventId(pel);
- updateResolution(pel);
+ updateResolution(*pel);
createPELEntry(obmcLogID);
}
else
@@ -404,7 +404,7 @@
// Check if firmware should quiesce system due to error
checkPelAndQuiesce(pel);
updateEventId(pel);
- updateResolution(pel);
+ updateResolution(*pel);
createPELEntry(obmcLogID);
}
@@ -781,14 +781,16 @@
return resolution;
}
-void Manager::updateResolution(std::unique_ptr<openpower::pels::PEL>& pel)
+bool Manager::updateResolution(const openpower::pels::PEL& pel)
{
- std::string callouts = getResolution(*pel);
- auto entryN = _logManager.entries.find(pel->obmcLogID());
+ std::string callouts = getResolution(pel);
+ auto entryN = _logManager.entries.find(pel.obmcLogID());
if (entryN != _logManager.entries.end())
{
entryN->second->resolution(callouts, true);
}
+
+ return false;
}
void Manager::setEntryPath(uint32_t obmcLogID)