<div dir="ltr">Same, I'm ok with this.</div><br><div class="gmail_quote"><div dir="ltr">On Mon, Aug 6, 2018 at 1:09 PM Patrick Venture <<a href="mailto:venture@google.com">venture@google.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Mon, Aug 6, 2018 at 12:10 PM, James Feist<br>
<<a href="mailto:james.feist@linux.intel.com" target="_blank">james.feist@linux.intel.com</a>> wrote:<br>
> I've submitted a change to modify the sensor interface to remove scale, and<br>
> make the sensor value a double. The main reason for doing this is<br>
> simplification of the interface. In most usages, daemons pull the value, and<br>
> the scale, then immediately translate this value to a double. This could<br>
> easily be done once by the sensor producer instead of all daemons. The<br>
> counter example that was given was phosphor-fan-presence, but doing a quick<br>
> grep I can't find scale being used, so this might mean for a scaled fan you<br>
> have to factor that in to all configuration files, or scaled fans aren't<br>
> supported. The threshold interface is not usable independent from the value<br>
> interface, as the thresholds are affected by the same scale. Using a fixed<br>
> scale also won't work well for a logarithmic sensor, while floating point<br>
> would. Realistic precision should not be affected for any common sensor. We<br>
> also in the future may be interested in a daemon producing a threshold for a<br>
> sensor that another daemon owns. With the scale existing elsewhere, this<br>
> would not be trivial to map.<br>
><br>
> Review for context: <a href="https://gerrit.openbmc-project.xyz/#/c/11739/" rel="noreferrer" target="_blank">https://gerrit.openbmc-project.xyz/#/c/11739/</a><br>
><br>
> This change is not ready to be submitted as is, but we would like to hear if<br>
> there are any major objections. If not, we would like to start an upgrade<br>
> path to support both interfaces until it is possible to make the switch.<br>
> Bmcweb already supports both. In most cases this is just pulling the value<br>
> using a visitor, and setting the scale to 0 if it does not exist. Max and<br>
> Min can also be used for IPMI scaling.<br>
<br>
I'm fine with this.  It saves everybody converting it to a double<br>
before using.  Further scaling, which can be necessary can be further<br>
done against the double.  For instance, with ipmi, to fit a value we<br>
sometimes scale again.<br>
<br>
><br>
> Thanks,<br>
><br>
> - James Feist<br>
><br>
><br>
</blockquote></div>