Hi Dmitry, Dmitry Torokhov wrote: > Hi Mike, > > On Wed, Jun 03, 2009 at 10:59:27AM +0300, Mike Rapoport wrote: >> This driver supports Synaptics I2C touchpad controller on eXeda >> mobile device. >> >> > > Looks much better, one concern still though: > >> + >> +/* Work Handler */ >> +static void synaptics_i2c_work_handler(struct work_struct *work) >> +{ >> + int data = 1; >> + struct synaptics_i2c *touch = >> + container_of(work, struct synaptics_i2c, dwork.work); >> + unsigned long delay; >> + >> + synaptics_i2c_check_params(touch); >> + >> + do { >> + data = synaptics_i2c_get_input(touch); >> + delay = synaptics_i2c_fix_delay(touch, data); >> + } while (data); >> + > > This will spin in the work handler for the duration of the touch > hogging keventd on this CPU and delaying all other scheduled works. I > don't think we can do that. > > Please try the patchg below and if it still works I will fold it all > together and queue for upstream. Thanks! > Works Ok. Thanks for cleaning up the style :) -- Sincerely yours, Mike. -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html