* Mark M. Hoffman <mhoffman at lightlink.com> [2003-06-23 23:32:39 -0400]: (replying to himself again...) > > > @@ -1070,8 +1062,6 @@ > > struct lm85_data *data = i2c_get_clientdata(client); > > int i; > > > > - down(&data->update_lock); > > - > > if ( !data->valid || > > (jiffies - data->last_reading > LM85_DATA_INTERVAL ) ) { > > /* Things that change quickly */ > > @@ -1209,8 +1199,6 @@ > > }; /* last_config */ > > > > data->valid = 1; > > - > > - up(&data->update_lock); > > } > > We only want to service one update_client() call per some interval. > I think this lock needs to stay. If this one stays then the one you added in lm85_read_value() must go. Anyway, the latter causes the update_lock to be used before it's initialized - lines 779-780 in lm85_detect(). Regards, -- Mark M. Hoffman mhoffman at lightlink.com