On Sun, 2014-03-23 at 22:30 -0700, Guenter Roeck wrote: > On 03/23/2014 09:25 PM, Joe Perches wrote: > > On Sun, 2014-03-23 at 21:14 -0700, Guenter Roeck wrote: > >> It is always a good idea to use paranthesis around macro parameters > >> to avoid undesired side effects. > >> > >> In this specific case, KELVIN_TO_CELSIUS() is used in > >> drivers/platform/x86/asus-wmi.c with parameter "value & 0xFFFF", > >> which due to operator evaluation order causes more or less random > >> results. > > > > Maybe it's better to use a statement expression to avoid > > multiple calculations of t > > > > Maybe; > > > > #define KELVIN_TO_CELSIUS(t) \ > > ({ \ > > long _t = (long)(t) - 2732; \ > > _t >= 0 ? (_t + 5) / 10 : (_t - 5) / 10; \ > > }) > > > > > > Possibly, but I only want to have a bug fixed which should possibly be applied > to -stable at some point. As such, I prefer the minimalistic approach. > Anything more fancy on top of that can be submitted as separate patch. > I agreed. I will take this patch and push it for stable kernel.
thanks, rui -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/