Memory: Remove if (*memorySize == 0)
Sent to mailing list here:
https://lists.ozlabs.org/pipermail/openbmc/2020-October/023744.html
Remove the if MemorySizeInKB is 0 set the "Status""State" to Absent
and return.
More work needed here to make Present and Functional
work correctly.
Tested: Validator passes.
curl -k https://$bmc/redfish/v1/Systems/system/Memory/dimm6
{
"@odata.id": "/redfish/v1/Systems/system/Memory/dimm6",
"@odata.type": "#Memory.v1_7_0.Memory",
"AllowedSpeedsMHz": [],
"BaseModuleType": "RDIMM",
"BusWidthBits": 0,
"CapacityMiB": 0,
"DataWidthBits": 0,
"ErrorCorrection": "NoECC",
"FirmwareRevision": "0",
"Id": "dimm6",
"Manufacturer": "Micron Technology",
"Name": "DIMM Slot",
"OperatingSpeedMhz": 0,
"PartNumber": "",
"RankCount": 0,
"SerialNumber": "0x156d5d4f",
"Status": {
"Health": "OK",
"HealthRollup": "OK",
"State": "Enabled"
}
Change-Id: I40ab44b1cb5db266d0766501a6f625168baaa2a6
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
diff --git a/redfish-core/lib/memory.hpp b/redfish-core/lib/memory.hpp
index aaff473..c85b000 100644
--- a/redfish-core/lib/memory.hpp
+++ b/redfish-core/lib/memory.hpp
@@ -468,15 +468,6 @@
{
// Important property not in desired type
messages::internalError(aResp->res);
-
- return;
- }
- if (*memorySize == 0)
- {
- // Slot is not populated, set status end return
- aResp->res.jsonValue["Status"]["State"] = "Absent";
- aResp->res.jsonValue["Status"]["Health"] = "OK";
- // HTTP Code will be set up automatically, just return
return;
}
aResp->res.jsonValue["CapacityMiB"] = (*memorySize >> 10);