#5990 HIGH Future : lost eth0 on suspend/resume

Zarro Boogs per Child bugtracker at laptop.org
Fri Sep 12 17:25:09 EDT 2008


#5990: lost eth0 on suspend/resume
-------------------------------+--------------------------------------------
   Reporter:  mikus            |       Owner:  dcbw                             
       Type:  defect           |      Status:  new                              
   Priority:  high             |   Milestone:  Future Release                   
  Component:  network manager  |     Version:  Development build as of this date
 Resolution:                   |    Keywords:  wired suspend                    
Next_action:  never set        |    Verified:  0                                
  Blockedby:                   |    Blocking:                                   
-------------------------------+--------------------------------------------

Comment(by pgf):

 the fundamental issue with USB ethernet and suspend/resume is that the USB
 ethernet drivers don't have .reset_resume functions (see Documentation/usb
 /power-management.txt).  1) we power down the devices (as well as the
 internal hub, i believe) during the suspend. 2)  the kernel marks all
 devices as capable of USB-Persist functionality these days (see
 Documentation/usb/persist.txt, and the ifdef at the end of
 usb/core/quirks.c), but 3) USB-Persist assumes there's a .reset_resume
 function to be called, and there isn't one.

 it's not clear, of course, whether all devices could take advantage of
 reset_resume -- they may require a full disconnect.  the full answer may
 well require user-level suspend/resume hooks.

 (btw, i'm not sure powering from an external hub will help much, since the
 kernel will probably do the same thing on resume that it does now, which
 is assume the device lost power.  i don't currently have a powered hub
 here to test with.)

-- 
Ticket URL: <http://dev.laptop.org/ticket/5990#comment:8>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system


More information about the Bugs mailing list