Re: patch to autosuspend mice

Oliver Neukum <[email protected]>
Newsgroups gmane.linux.usb.devel
Message-ID <[email protected]>
Am Mittwoch, 31. Januar 2007 20:25 schrieb Alan Stern:
> > How do I find out whether the device is idle?
> > The mouse is not idle if it has been moved (or buttons clicked)
> > To find out whether it has been moved the device must not be suspended.
> > At which point in time then should I check? Are you saying that the
> > timer should be started and suspend() should fail if the devices hasn't
> > been idle?
> 
> Logically speaking, the computer doesn't and can't know if the device is 
> currently idle.  After all, it takes several milliseconds for the HID 
> reports indicating any activity to be transferred from the device to the 
> computer, so the computer's knowledge is always at least a little bit out 
> of date.

Yes, this race condition is unavoidable.

> So you shouldn't base any decisions on whether the device is currently
> idle.  Instead, you have to check whether the device has been idle for a
> sufficiently long time.  That's what the timer is for: You restart the

Yes, that's the way I currently do it.

> timer whenever there is any activity, and when the timer expires you know
> the device has been idle long enough that you should suspend it.  That's
> exactly how the autosuspend infrastructure works.

This would call mod_timer() for every completed in-URB. Are you
sure this is better than an approach maintaining a periodical timer
and check for IO in the meantime?

	Regards
		Oliver

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.