Prevent repeatedly reading PLDM sensors when proc garded
If a processor was garded, the OCC sensor would never be enabled.
The prior could would continue to try reading a sensor until it became
enabled.
Code change will stop attempting to read a sensor once a signal or valid
response has been received.
Tested on HW
Change-Id: I9c43840fb25803af4f320ae9de00e896daf190f6
Signed-off-by: Chris Cain <cjcain@us.ibm.com>
diff --git a/occ_manager.cpp b/occ_manager.cpp
index 72d7ada..75d7b1f 100644
--- a/occ_manager.cpp
+++ b/occ_manager.cpp
@@ -165,8 +165,7 @@
allActiveSensorAvailable = true;
for (auto& obj : statusObjects)
{
- // If active sensor is already true, then no need to query sensor
- if (!obj->occActive())
+ if (!obj->getPldmSensorReceived())
{
auto instance = obj->getOccInstanceID();
// Check if sensor was queued while waiting for discovery
@@ -462,6 +461,7 @@
if (obj != statusObjects.end())
{
+ (*obj)->setPldmSensorReceived(true);
return (*obj)->occActive(status);
}
else