bmcweb non-standard OEM integration

Gunnar Mills gmills at linux.vnet.ibm.com
Thu Oct 28 07:42:22 AEDT 2021


On 10/27/2021 10:22 AM, Ed Tanous wrote:
> On Tue, Oct 26, 2021 at 9:37 PM Vernon Mauery
> <vernon.mauery at linux.intel.com> wrote:
>>
>> I can't imagine that Intel is the only company on this project that has
>> a set of patches against bmcweb. 

IBM has a growing number of patches against bmcweb as well.


>> Some of these are for features that
>> have not yet been released. Some of these are for OEM things that don't
>> fit any of the Redfish-OEM schemas. Some are for features that are
>> long-standing upstream reviews that have not yet been merged for
>> whatever reason.

Are OEM things a majority of these patches? Would allowing "OEM 
customization" make much difference in the number of patches against 
bmcweb? I know for us only a small percentage of patches against bmcweb 
are adding Redfish OEM.

>>
>> We want to move away from patches.
> 
> 
> As an attempt to make this more concrete, I tried to look at Intel-BMC
> to figure out what you're talking about.  The only OEM schema I see is
> 0001-Firmware-update-configuration-changes.patch, which adds support
> for defaulting the setup on a firmware update.  DMTF has been
> discussing this idea of defaulting a setup very recently (I think we
> talked about it last week), so that will hopefully be in the standard
> soon, and if you're interested in particular properties of it, you
> might want to participate there
I briefly looked too at Intel-BMC, saw several patches that look to be 
implementing standard Redfish. Things that are already in Redfish. In 
some cases, I didn't see an upstream review. Is there a reason why these 
can't be upstream? What things can we do to help?

> 
> That's the only OEM patch I see;  Is there more?

+1. I would like to understand what Redfish OEM features you are trying 
to add.

> 
>> We want to be able to share our
>> changes with the community. Right now, there is not a way for this sort
>> of OEM changes getting into bmcweb.
> 
> I'm not sure why you think this, but the current policy is definitely
> not "no way". 

OpenBMC has 5 OEM schemas today.
There is also an IBM and Google Rest API. Although I don't think I would 
recommend this approach.

Have you read the doc on this?
> https://github.com/openbmc/bmcweb/blob/master/OEM_SCHEMAS.md
> 
> To paraphrase, the above doesn't say "no OEM schemas in
> upstream".  It says "OEM schema features need to be discussed in the
> relevant communities".  This policy as written was attempting to be
> similar to our policy on systemd, linux, ect.

IBM has had quite a bit of success adding additional features to 
Redfish. Anyone can post to https://redfishforum.com/ and Redfish member 
companies can open issues, attend meetings, and submit PRs.

After adding to Redfish, the bmcweb code is a lot more straightforward. 
For example, we got IdlePowerSave added to the 2021.2 Redfish release, 
the bmcweb commit then doesn't involve much schema discussion and can 
move faster https://gerrit.openbmc-project.xyz/c/openbmc/bmcweb/+/47776

Thanks,
Gunnar



More information about the openbmc mailing list