incorrect bits used to determine b's sign - leads to wildly off readings #4
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
While testing on a Dell PowerEdge R630, we noticed temperature readings that were wildly off:
We observed that the value of B used in the reading conversion formula was 896, but the Full sensor record SDR defines B as a 10-bit signed integer. We tracked it down to
FullSensorRecord::parse(...)
using one of the accuracy bits to determine the sign of B.With this change, we see sensible numbers that are in line with what we get from ipmitool (debug prints added). I'm still investigating why ipmi-rs gives us a bogus value for lower non-recoverable.