if ((jiffies - data->last_updated > 2 * HZ) || (jiffies < data->last_updated) || !data->valid) { 
if (time_after(jiffies, data->last_updated + 2 * HZ) || !data->valid) { 
static struct fscpos_data *fscpos_update_device(struct device *dev){	struct i2c_client *client = to_i2c_client(dev);	struct fscpos_data *data = i2c_get_clientdata(client);	down(&data->update_lock);	if ((jiffies - data->last_updated > 2 * HZ) ||			(jiffies < data->last_updated) || !data->valid) {		int i;		dev_dbg(&client->dev, "Starting fscpos update\n");		for (i = 0; i < 3; i++) {			data->temp_act[i] = fscpos_read_value(client,						FSCPOS_REG_TEMP_ACT[i]);			data->temp_status[i] = fscpos_read_value(client,						FSCPOS_REG_TEMP_STATE[i]);			data->fan_act[i] = fscpos_read_value(client,						FSCPOS_REG_FAN_ACT[i]);			data->fan_status[i] = fscpos_read_value(client,						FSCPOS_REG_FAN_STATE[i]);			data->fan_ripple[i] = fscpos_read_value(client,						FSCPOS_REG_FAN_RIPPLE[i]);			if (i < 2) {				/* fan2_min is not supported by the chip */				data->pwm[i] = fscpos_read_value(client,							FSCPOS_REG_PWM[i]);			}			/* reset fan status if speed is back to > 0 */			if (data->fan_status[i] != 0 && data->fan_act[i] > 0) {				reset_fan_alarm(client, i);			}		}		data->volt[0] = fscpos_read_value(client, FSCPOS_REG_VOLT_12);		data->volt[1] = fscpos_read_value(client, FSCPOS_REG_VOLT_5);		data->volt[2] = fscpos_read_value(client, FSCPOS_REG_VOLT_BATT);		data->wdog_preset = fscpos_read_value(client,							FSCPOS_REG_WDOG_PRESET);		data->wdog_state = fscpos_read_value(client,							FSCPOS_REG_WDOG_STATE);		data->wdog_control = fscpos_read_value(client,						FSCPOS_REG_WDOG_CONTROL);		data->global_event = fscpos_read_value(client,						FSCPOS_REG_EVENT_STATE);		data->last_updated = jiffies;		data->valid = 1;	}	up(&data->update_lock);	return data;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/0cacdf298211ec9e87354cf102f20d070e76e075/fscpos.c/buggy/drivers/hwmon/fscpos.c