On Wednesday 07 December 2005 11:19 am, Alan Stern wrote:
> Dave:
> 
> We need to settle on a policy for handling USB drivers that don't have 
> suspend/resume support.  The current code in 2.6.15-rc returns 0 for the 
> interface suspend call but doesn't change the interface's power_state 
> value.  As a result, the suspend call for the device fails, aborting the 
> entire system sleep transition.

It could return a failure code, not zero.  ;)


> We could not worry about it and call mark_quiesced for the interface.  Or

Except ... that it is NOT quiesced.  That driver might just go issue an
URB right away.  Having the infrastructure going about lying about things
like that would be error prone...

A better option might be to mark the device dead/disconnected.  None
of the invariants would be broken, and the behavior is one that should
already be well tested (on resume).  And suspend could still work.


> we could unbind the driver, in accord with a FIXME comment (although there
> are locking issues).  One or the other is necessary before 2.6.15 is
> released; otherwise there will be lots of complaints about USB updates
> breaking suspend.

Yes, my patch for the FIXME thing was DOA because of locking problems.
My notes say:

   ... driver core suspend() calls are made with dev->sem held,
   which means calls to usb_driver_release_interface() always
   deadlock when they try to claim the same lock.

So I'm afraid that "early" disconnect won't work, and it'll have to
be done later (by khubd after resume).

- Dave



-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to