On Tue, Mar 04, 2008 at 09:54:40AM -0500, Mark M. Hoffman wrote: <snip> > diff --git a/drivers/hwmon/adt7473.c b/drivers/hwmon/adt7473.c > index 9587869..3807062 100644 > --- a/drivers/hwmon/adt7473.c > +++ b/drivers/hwmon/adt7473.c > @@ -422,11 +422,9 @@ static ssize_t show_volt(struct device *dev, struct device_attribute *devattr, > * number in the range -128 to 127, or as an unsigned number that must > * be offset by 64. > */ > -static int decode_temp(struct adt7473_data *data, u8 raw) > +static int decode_temp(u8 twos_complement, u8 raw) > { > - if (data->temp_twos_complement) > - return (s8)raw; > - return raw - 64; > + return twos_complement ? (s8)raw : raw - 64; Since this patch is to fix a bunch of race conditions, I think this chunk would be better off as a separate cleanup patch. That said, you're the maintainer, so it's your call.... :) I also suspect that ibmpex/i5k-amb will need similar cleanups. I can generate patches if you want, though if you're intent upon fixing all of the drivers as one big push, let me know. For the adt7470/adt7473 bits, Acked-by: Darrick J. Wong <djwong at us.ibm.com> --D