Follow-up Comment #17, sr #111312 (group freeipmi):

So that's pretty interesting.  It suggests the error is in
ipmi_sensor_decode_value(). i.e. the actual mathematical conversion from the
raw byte to number.

When I compared my code to ipmitool's, there is a minor computational
difference, where I cast an integer to a double BEFORE a mathematical
calculation.  They cast to the double AFTER the calculation.  i.e.  i do

result = (double)a * (double)b

and they do

result = (double) (a * b)

I'm wondering if this could be some very rare precision loss.  Something that
shouldn't be a problem on 99.9% of cases, but somehow you hit it.

I will send you another debug patch tomorrow and we'll see how things are
computed.

If there ends up being a computational difference in there, I will have to dig
into the IPMI spec and see what they really define in there.


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/support/?111312>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/

Attachment: signature.asc
Description: PGP signature

Reply via email to