Most recent kernel where this bug did not occur:2.6.13-15.8 Distribution: SUSE 10.0 Hardware Environment: IBM Netfinity PIII Software Environment: SUSE 10.0 Problem Description: The only 'standby' mode that works with my machine is the S1 mode. Using standby with the previous kernel, 2.6.13-15.7, always worked and was very convenient, as this machine is in and out of standby quite often. A new kernel, 2.6.13-15.8, was released and after rebooting I noticed an unfortunate change: there is about a 10% chance that the keyboard will work after returning from standby. Specifically I have to unplug and then plug back in the keyboard after returning from standby about 90% of the time. The 'num lock' light stays lit throughout the entire process (except of course when unplugged), however, the keyboard does not respond to /any/ input until it is unplugged and plugged back in. I did not get this behavior with 2.6.13-15.7 Steps to reproduce: I use powersave to engage the 'standby' mode -- if I recall properly, I had to enable this mode specifically, however it's the only power-saving mode that my machine appears to support without much more involved issues. The machine goes into standby. I press the power button to return - the screen says "Returning to C!" or something like that. I get my desktop back, but the keyboard is completely unresponsive - the num lock light remains on however, num lock doesn't turn it off, and no keys work, etc... I'll try to provide whatever information I can.
Maybe this will be helpful. Note the last line is where I unplugged and plugged back in the keyboard. Feb 23 19:47:51 linux kernel: USB Universal Host Controller Interface driver v2.3 Feb 23 19:47:51 linux kernel: ACPI: PCI Interrupt 0000:00:1f.2[D] -> Link [PIN4] -> GSI 10 (level, low) -> IRQ 10 Feb 23 19:47:51 linux kernel: PCI: Setting latency timer of device 0000:00:1f.2 to 64 Feb 23 19:47:51 linux kernel: uhci_hcd 0000:00:1f.2: UHCI Host Controller Feb 23 19:47:51 linux kernel: uhci_hcd 0000:00:1f.2: new USB bus registered, assigned bus number 1 Feb 23 19:47:51 linux kernel: uhci_hcd 0000:00:1f.2: irq 10, io base 0x0000fb00 Feb 23 19:47:51 linux kernel: hub 1-0:1.0: USB hub found Feb 23 19:47:51 linux kernel: hub 1-0:1.0: 2 ports detected Feb 23 19:47:51 linux kernel: ohci_hcd: 2005 April 22 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI) Feb 23 19:47:51 linux kernel: ACPI: PCI Interrupt 0000:01:0a.0[A] -> Link [PIN3] -> GSI 5 (level, low) -> IRQ 5 Feb 23 19:47:51 linux kernel: ohci_hcd 0000:01:0a.0: OHCI Host Controller Feb 23 19:47:51 linux kernel: ohci_hcd 0000:01:0a.0: new USB bus registered, assigned bus number 2 Feb 23 19:47:51 linux kernel: ohci_hcd 0000:01:0a.0: irq 5, io mem 0xfebfe000 Feb 23 19:47:51 linux kernel: hub 2-0:1.0: USB hub found Feb 23 19:47:51 linux kernel: hub 2-0:1.0: 3 ports detected Feb 23 19:47:51 linux kernel: usb 1-1: new low speed USB device using uhci_hcd and address 2 Feb 23 19:47:51 linux kernel: input: USB HID v1.10 Mouse [Logitech USB-PS/2 Optical Mouse] on usb-0000:00:1f.2-1 Feb 23 19:47:52 linux kernel: ACPI: PCI Interrupt 0000:01:0a.1[B] -> Link [PIN4] -> GSI 10 (level, low) -> IRQ 10 Feb 23 19:47:52 linux kernel: ohci_hcd 0000:01:0a.1: OHCI Host Controller Feb 23 19:47:52 linux kernel: ohci_hcd 0000:01:0a.1: new USB bus registered, assigned bus number 3 Feb 23 19:47:52 linux kernel: ohci_hcd 0000:01:0a.1: irq 10, io mem 0xfebff000 Feb 23 19:47:52 linux kernel: hub 3-0:1.0: USB hub found Feb 23 19:47:52 linux kernel: hub 3-0:1.0: 2 ports detected Feb 23 19:47:53 linux kernel: Initializing USB Mass Storage driver... Feb 23 19:47:53 linux kernel: usbcore: registered new driver usb-storage Feb 23 19:47:53 linux kernel: USB Mass Storage support registered. Feb 23 19:48:00 linux kernel: input: AT Raw Set 2 keyboard on isa0060/serio1
Here is a paste of what happens when I return from "echo 1 > /proc/acpi/sleep". When I do /that/, the machine goes to standby almost instantly (a bit slower than when I use powersave). However, upon returning, the keyboard still doesn't work *and* it kills my X session: Feb 23 19:51:57 linux kernel: Stopping tasks: =========================================================================| Feb 23 19:51:57 linux kernel: ACPI: PCI interrupt for device 0000:01:0a.2 disabled Feb 23 19:51:57 linux kernel: ACPI: PCI interrupt for device 0000:01:0a.1 disabled Feb 23 19:51:57 linux kernel: ACPI: PCI interrupt for device 0000:01:0a.0 disabled Feb 23 19:51:57 linux kernel: ACPI: PCI interrupt for device 0000:01:08.0 disabled Feb 23 19:51:57 linux kernel: ACPI: PCI interrupt for device 0000:00:1f.5 disabled Feb 23 19:51:57 linux kernel: ACPI: PCI interrupt for device 0000:00:1f.2 disabled Feb 23 19:51:57 linux kernel: Back to C! Feb 23 19:51:57 linux kernel: ACPI: PCI Interrupt 0000:00:02.0[A] -> Link [PIN1] -> GSI 11 (level, low) -> IRQ 11 Feb 23 19:51:57 linux kernel: PCI: Setting latency timer of device 0000:00:1e.0 to 64 Feb 23 19:51:57 linux kernel: ACPI: PCI Interrupt 0000:00:1f.2[D] -> Link [PIN4] -> GSI 10 (level, low) -> IRQ 10 Feb 23 19:51:57 linux gconfd (jnelson-31032): GConf server is not in use, shutting down. Feb 23 19:51:57 linux kernel: PCI: Setting latency timer of device 0000:00:1f.2 to 64 Feb 23 19:51:57 linux gconfd (jnelson-31032): Exiting Feb 23 19:51:57 linux su: (to jnelson) root on none Feb 23 19:51:57 linux kernel: ACPI: PCI Interrupt 0000:00:1f.2[D] -> Link [PIN4] -> GSI 10 (level, low) -> IRQ 10 Feb 23 19:51:57 linux kernel: ACPI: PCI Interrupt 0000:00:1f.5[B] -> Link [PIN2] -> GSI 9 (level, low) -> IRQ 9 Feb 23 19:51:57 linux kernel: PCI: Setting latency timer of device 0000:00:1f.5 to 64 Feb 23 19:51:57 linux kernel: e100: eth0: e100_watchdog: link up, 100Mbps, full-duplex Feb 23 19:51:57 linux kernel: ACPI: PCI Interrupt 0000:01:0a.0[A] -> Link [PIN3] -> GSI 5 (level, low) -> IRQ 5 Feb 23 19:51:57 linux kernel: ACPI: PCI Interrupt 0000:01:0a.0[A] -> Link [PIN3] -> GSI 5 (level, low) -> IRQ 5 Feb 23 19:51:57 linux kernel: ACPI: PCI Interrupt 0000:01:0a.1[B] -> Link [PIN4] -> GSI 10 (level, low) -> IRQ 10 Feb 23 19:51:57 linux kernel: ACPI: PCI Interrupt 0000:01:0a.1[B] -> Link [PIN4] -> GSI 10 (level, low) -> IRQ 10 Feb 23 19:51:57 linux kernel: ACPI: PCI Interrupt 0000:01:0a.2[C] -> Link [PIN1] -> GSI 11 (level, low) -> IRQ 11 Feb 23 19:51:57 linux kernel: ACPI: PCI Interrupt 0000:01:0a.2[C] -> Link [PIN1] -> GSI 11 (level, low) -> IRQ 11 Feb 23 19:51:57 linux kernel: Restarting tasks... done Feb 23 19:52:05 linux kernel: uhci_hcd 0000:00:1f.2: Unlink after no-IRQ? Controller is probably using the wrong IRQ. Feb 23 19:52:06 linux kernel: [drm] DMA Cleanup Feb 23 19:52:08 linux kernel: [drm] Using v1.4 init. Feb 23 19:52:20 linux kernel: input: AT Raw Set 2 keyboard on isa0060/serio1
You could try to remove device_suspend/device_resume calls from S1 code. According to the spec, they are not really neccessary...
Please reopen this bug if: - it is still rpesent in kernel 2.6.19-rc5 and - you can provide the requested information.