-
Notifications
You must be signed in to change notification settings - Fork 25
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
While BMC is updating image, firmware inventory will generate redundant ID #13
Comments
I think it's a known behavior, bmcweb will get all the firmware from the DBus.
What do you suggest to handle this case? |
FW update, can be spited to three steps
The following table compare the properties Activation and RequestedActivation for current FW and new FW . So as you can see , if RequestedActivation=None and Activation=Active that it is necessarily the current FW. base on that, my suggestion is to add better filtering to bmcweb code. Does it reasonable solution ? |
I think it depends on Redfish to define "what the FirmwareInventory should contain", should it contain the active ones only, or it should contain the uploaded ones? |
Issue:
Redundant values returned by Redfish GET request from
/redfish/v1/UpdateService/FirmwareInventory
Description:
The Redfish GET request from
/redfish/v1/UpdateService/FirmwareInventory
is returning redundant values. This issue seems to be related to thephosphor-bmc-code-mgmt
functionality.During a BMC firmware update, a new object is created that includes the
xyz.openbmc_project.Software.Version
interface. This interface plays a crucial role in listing all the firmware inventory using the Redfish GET request.However, when performing a firmware update and calling the GET request, the result list includes the new BMC firmware object, even though it should not be part of the firmware inventory list since the image is not yet active.
Related Code:
phosphor-bmc-code-mgmt
image_manager.cppbmcweb
update_service.hppThis issue is not BMCWEB issue , seems to me that the the fix should be at the phosphor-bmc-code-mgmt.
Redfish output Example:
{
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory",
"@odata.type": "#SoftwareInventoryCollection.SoftwareInventoryCollection",
"Members": [
{
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/bd850aa9" (This is the running BMC)
},
{
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/e2960819" (The new BMC FW, not running )
}
],
"[email protected]": 2,
"Name": "Software Inventory Collection"
}
Questions:
The text was updated successfully, but these errors were encountered: