Feedback on Current OpenBMC and Proposing Some Improvements ---- "Improvements" Ideas

James Feist james.feist at linux.intel.com
Thu Jul 9 03:55:58 AEST 2020


On 7/1/2020 10:06 AM, Alex Qiu wrote:
>>> For the parser, I'm referring to the function templateCharReplace() in
>>> https://github.com/openbmc/entity-manager/blob/master/src/Utils.cpp#L154.
>>> We found it unintuitive that it does not support parenthesis and does
>>> not follow arithmetic order of operations. If we try to improve it to
>>> support parenthesis and arithmetic order of operations, it will break
>>> compatibility if we don't watch it carefully.

A real parser would be a great addition, at the time we had no idea all 
of the different replacement functions we would be adding.

>> Yes, it's not a real parser, but if you look at the commit for the
>> problem it was fixing (massively duplicated config files for power
>> supplies because of minor changes) then it starts to make more sense
>> that what's there is better than what came before.  If it's important
>> to you, then put together a patch to add a real parser?  Remember that
>> the relevant config files are checked into that repo, so you can
>> actually dump every single config statement and flush it through your
>> parser to test that it gives the same result, and in the cases it
>> doesn't, add parenthesis where required to get the same result.  I
>> would really only expect the quad mode power supply files to even be
>> effected, and I believe (based on how their expression is parsed) they
>> won't be.
> For the concern of compatibility, we worry that other companies are
> also using these features downstream. FYI, we are heavily relying on
> it right now, even though we find out it's not following arithmetic
> order of operations.

I think that is outside of the projects hands, and should influence 
others to upstream their configurations so that they get all necessary 
changes/support when new features are added.


More information about the openbmc mailing list