On Wed, 5 Jan 2005, Paul Ionescu wrote: > The dmesg from a kernel 2.6.10 with CONFIG_USB_DEBUG > is bellow: > suspended without any device plugged, resumed, plugged > a device in. > > uhci_hcd 0000:00:1d.1: suspend_hc > PM: Preparing system for suspend > ehci_hcd 0000:00:1d.7: --> PCI D3hot > uhci_hcd 0000:00:1d.2: suspend_hc > uhci_hcd 0000:00:1d.2: --> PCI D0/legacy > uhci_hcd 0000:00:1d.1: suspend_hc > uhci_hcd 0000:00:1d.1: --> PCI D0/legacy > uhci_hcd 0000:00:1d.0: suspend_hc > uhci_hcd 0000:00:1d.0: --> PCI D0/legacy > PM: Entering state. > hwsleep-0307 [23] acpi_enter_sleep_state: Entering > sleep state [S3] > Back to C! > Warning: CPU frequency is 1700000, cpufreq assumed > 1000000 kHz. > Debug: sleeping function called from invalid context > at mm/slab.c:2062 > in_atomic():0, irqs_disabled():1 > [<c01188f5>] __might_sleep+0x95/0xb0 > [<c0216247>] acpi_ut_trace+0x28/0x2e > [<c0140690>] kmem_cache_alloc+0x50/0x60 > [<c021d362>] acpi_pci_link_set+0x89/0x26b > [<c021da11>] acpi_pci_link_resume+0x45/0x79 > [<c021da88>] irqrouter_resume+0x43/0x5e > [<c025a0c6>] sysdev_resume+0x66/0xc4 > [<c025dbb5>] device_power_up+0x5/0xa > [<c0131bd0>] suspend_enter+0x30/0x50 > [<c0131c93>] enter_state+0x63/0x90 > [<c021a513>] acpi_suspend+0x28/0x35 > [<c01d9a44>] copy_from_user+0x54/0x90 > [<c021a618>] acpi_system_write_sleep+0x66/0x77 > [<c01548e1>] vfs_write+0xd1/0x130 > [<c01549f1>] sys_write+0x41/0x70 > [<c0102e0d>] sysenter_past_esp+0x52/0x75 > hub 4-0:1.0: resubmit --> -108 > hub 2-0:1.0: resubmit --> -108 > hub 3-0:1.0: resubmit --> -108 > PM: Finishing up. > uhci_hcd 0000:00:1d.0: resume from PCI D0 (legacy) > PCI: Setting latency timer of device 0000:00:1d.0 to > 64 > uhci_hcd 0000:00:1d.1: resume from PCI D0 (legacy) > PCI: Setting latency timer of device 0000:00:1d.1 to > 64 > uhci_hcd 0000:00:1d.2: resume from PCI D0 (legacy) > PCI: Setting latency timer of device 0000:00:1d.2 to > 64 > ehci_hcd 0000:00:1d.7: resume from PCI D3hot
I think you've run across another indication that the suspend/resume support in the USB drivers is not yet ready for prime time. Does the patch below help? (Note: this is meant for use with CONFIG_USB_SUSPEND not set.) Alan Stern --- 2.6.10-orig/drivers/usb/core/hcd.c Mon Jan 3 09:39:35 2005 +++ 2.6.10/drivers/usb/core/hcd.c Thu Jan 6 10:43:16 2005 @@ -534,7 +534,8 @@ /* complete the status urb, or retrigger the timer */ spin_lock (&hcd_data_lock); - if (urb->dev->state == USB_STATE_CONFIGURED) { + if (urb->dev->state == USB_STATE_CONFIGURED && + hcd->state == USB_STATE_RUNNING) { length = hcd->driver->hub_status_data ( hcd, urb->transfer_buffer); if (length > 0) { ------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel