Holger, By all means it should adhere to the spec, but I'm confused as to how this 11b value got introduced, when it should have been correct when read from the vendor-supplied SDRs?
Was this value written when setting a threshold perhaps? If so, it seems that the value should have been passed through as provided instead. Andy On Tue, Jul 2, 2013 at 8:56 AM, Liebig, Holger <holger.lie...@ts.fujitsu.com> wrote: > We got a response from one of our customers that an old version of > ipmi-sensors did not report the CPU temperature thresholds with some of our > systems. I checked this and it was easily reproducible with the latest > version of FreeIPMI and quite any of our systems, so I started looking for > the root cause. FreeIPMI is using the sensor capabilities bits to determine > if sensor thresholds are available or not. In our case this is encoded as 11b > for reasons nobody seems to recall. From the spec: > > Sensor Threshold Access Support > [3:2] - 00b = no thresholds. > 01b = thresholds are readable, per Reading Mask, below. > 10b = thresholds are readable and settable per Reading Mask and > Settable Threshold Mask, respectively. > 11b = Fixed, unreadable, thresholds. Which thresholds are supported is > reflected by the Reading Mask. The threshold value fields report > the values that are ‘hard-coded’ in the sensor. > > The only explanation I have is that 11b was interpreted by early Fujitsu SDR > development as "Fixed/hard coded" in the above sentence and then carried over > to any follow up system, while FreeIPMI is focusing on the "unreadable" word > and does no further checking. > > My proposal would be to solve this in an OEM specific way, so > --interpret-oem-data would be needed for correct output. Let me know if you > have any thoughts on this proposal or regarding the interpretation of the > spec. > > Thanks & best regards, > Holger Liebig > > ----------------------------------- > svn diff > Index: ipmi-sensors-output-common.c > =================================================================== > --- ipmi-sensors-output-common.c (revision 9745) > +++ ipmi-sensors-output-common.c (working copy) > @@ -451,12 +451,22 @@ > goto cleanup; > } > > - if (threshold_access_support == IPMI_SDR_NO_THRESHOLDS_SUPPORT > - || threshold_access_support == > IPMI_SDR_FIXED_UNREADABLE_THRESHOLDS_SUPPORT) > - { > - rv = 0; > - goto cleanup; > - } > + if ( state_data->oem_data.manufacturer_id == > IPMI_IANA_ENTERPRISE_ID_FUJITSU) > + { > + /* FTS, indicate fixed thresholds in SDR with 11b. IPMI Spec. > ambiguous if you insist on the 'unreadable' */ > + if (threshold_access_support == IPMI_SDR_NO_THRESHOLDS_SUPPORT ) > + { > + rv = 0; > + goto cleanup; > + } > + } > + > + else if (threshold_access_support == IPMI_SDR_NO_THRESHOLDS_SUPPORT > + || threshold_access_support == > IPMI_SDR_FIXED_UNREADABLE_THRESHOLDS_SUPPORT) > + { > + rv = 0; > + goto cleanup; > + } > > /* achu: > * > > _______________________________________________ > Freeipmi-devel mailing list > Freeipmi-devel@gnu.org > https://lists.gnu.org/mailman/listinfo/freeipmi-devel > _______________________________________________ Freeipmi-devel mailing list Freeipmi-devel@gnu.org https://lists.gnu.org/mailman/listinfo/freeipmi-devel