Problems with sleep mode and sleep button on Dell Latitude D410
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
acpi-support (Ubuntu) |
Fix Released
|
Medium
|
Thom May |
Bug Description
I've installed Ubuntu Hoary on a Dell Latitude D410, a centrino laptop that uses
Intel 915GM chipset. All hardware was automatically detected and configured. But
actually it's not possible to get this laptop into sleep mode. The button event
is recognized, as you can see:
$ acpi_listen
button/sleep SBTN 00000080 00000002
And this is what it's reported on /var/log/acpid when pressing this button (Fn+Esc):
[Wed Mar 2 14:57:20 2005] received event "button/sleep SBTN 00000080 00000001"
[Wed Mar 2 14:57:20 2005] notifying client 8150[1000:1000]
[Wed Mar 2 14:57:20 2005] notifying client 12646[1000:1000]
[Wed Mar 2 14:57:20 2005] client has disconnected
[Wed Mar 2 14:57:20 2005] executing action "/etc/acpi/
[Wed Mar 2 14:57:20 2005] BEGIN HANDLER MESSAGES
[Wed Mar 2 14:57:20 2005] END HANDLER MESSAGES
[Wed Mar 2 14:57:20 2005] action exited with status 0
[Wed Mar 2 14:57:20 2005] completed event "button/sleep SBTN 00000080 00000001"
We've also tried to put the laptop manually into sleep mode using sysfs interface:
echo mem > /sys/power/state
In this case, graphics mode change to a text mode, it announces that it's
stopping all tasks, and after a few seconds, it returns to initial state,
without sleeping. According to /etc/default/
standby sleep mode:
echo standby > /sys/power/state
With similar results.
Ok, let's see /var/log/syslog
Mar 2 15:21:23 localhost kernel: cs: IO port probe 0x0a00-0x0aff: clean.
Mar 2 15:21:23 localhost kernel: Bluetooth: L2CAP ver 2.7
Mar 2 15:21:23 localhost kernel: Bluetooth: L2CAP socket layer initialized
Mar 2 15:21:23 localhost kernel: Bluetooth: RFCOMM ver 1.5
Mar 2 15:21:23 localhost kernel: Bluetooth: RFCOMM socket layer initialized
Mar 2 15:21:23 localhost kernel: Bluetooth: RFCOMM TTY layer initialized
Mar 2 15:21:23 localhost kernel: Stopping tasks:
=======
Mar 2 15:21:23 localhost kernel: stopping tasks failed (1 tasks remaining)
Mar 2 15:21:23 localhost kernel: Restarting tasks...<6> Strange, mysqld not stopped
Mar 2 15:21:23 localhost kernel: done
Mar 2 15:21:35 localhost postfix/
/etc/aliases.db: No such file or directory
Mar 2 15:21:36 localhost postfix/
/usr/lib/
Mar 2 15:21:36 localhost postfix/
bad command startup -- throttling
Hummm... so the problem is with mysql server (why is not stopped?). Ok, let's
stop it manually and try again:
# /etc/init.d/mysql stop
# echo mem > /sys/power/state
This time laptop go to suspend mode. Great! (I thinked). But only for a few
moments. When pressing power button to wake up, screen remains off, and I had to
ssh to the laptop to see that all the other things seems to be ok. This time,
this is what we could see on /var/log/syslog:
Mar 2 15:22:24 localhost mysqld[6855]: 050302 15:22:24 /usr/sbin/mysqld: Normal
shutdown
Mar 2 15:22:24 localhost mysqld[6855]:
Mar 2 15:22:24 localhost mysqld[6855]: 050302 15:22:24 /usr/sbin/mysqld:
Shutdown Complete
Mar 2 15:22:24 localhost mysqld[6855]:
Mar 2 15:22:24 localhost mysqld_safe[7692]: ended
Mar 2 15:22:40 localhost kernel: Stopping tasks:
=======
Mar 2 15:22:40 localhost kernel: stopping tasks failed (1 tasks remaining)
Mar 2 15:22:40 localhost kernel: Restarting tasks...<6> Strange, mysqld not stopped
Mar 2 15:22:40 localhost kernel: done
Mar 2 15:22:40 localhost kernel: Stopping tasks:
=======
Mar 2 15:22:40 localhost kernel: eth1: Going into suspend...
Mar 2 15:22:40 localhost kernel: Back to C!
Mar 2 15:22:40 localhost kernel: hub 2-0:1.0: resubmit --> -108
Mar 2 15:22:40 localhost kernel: hub 3-0:1.0: resubmit --> -108
Mar 2 15:22:40 localhost kernel: hub 4-0:1.0: resubmit --> -108
Mar 2 15:22:40 localhost kernel: PCI: Setting latency timer of device
0000:00:1d.0 to 64
Mar 2 15:22:40 localhost kernel: PCI: Setting latency timer of device
0000:00:1d.1 to 64
Mar 2 15:22:40 localhost kernel: PCI: Setting latency timer of device
0000:00:1d.2 to 64
Mar 2 15:22:40 localhost kernel: PCI: Setting latency timer of device
0000:00:1d.3 to 64
Mar 2 15:22:40 localhost kernel: PCI: cache line size of 32 is not supported by
device 0000:00:1d.7
Mar 2 15:22:40 localhost kernel: ehci_hcd 0000:00:1d.7: USB 2.0 restarted, EHCI
1.00, driver 26 Oct 2004
Mar 2 15:22:40 localhost kernel: ACPI: PCI interrupt 0000:00:1e.2[A] -> GSI 16
(level, low) -> IRQ 16
Mar 2 15:22:40 localhost kernel: PCI: Setting latency timer of device
0000:00:1e.2 to 64
Mar 2 15:22:40 localhost kernel: ACPI: PCI interrupt 0000:00:1f.1[A] -> GSI 16
(level, low) -> IRQ 16
Mar 2 15:22:40 localhost hcid[7305]: HCI dev 0 down
Mar 2 15:22:40 localhost hcid[7305]: Stoping security manager 0
Mar 2 15:22:40 localhost udev[7730]: removing device node '/dev/vcsa63'
Mar 2 15:22:40 localhost udev[7741]: removing device node '/dev/vcs63'
Mar 2 15:22:41 localhost hcid[7305]: HCI dev 0 unregistered
Mar 2 15:22:44 localhost postfix/
/etc/aliases.db: No such file or directory
Mar 2 15:22:45 localhost postfix/
/usr/lib/
Mar 2 15:22:45 localhost postfix/
bad command startup -- throttling
So there are two problems: first of all, sleep mode doesn't work well on this
laptop. And second, sleep button doesn't seem to be triggered so it activates
"suspend to ram" mode throught sysfs interface.
The lid is correctly triggered, because the screen goes to a console text mode
when closing it, and returns again to x.org with xscreensaver running when
opening, as script /etc/acpi/lid.sh describes. It would be really great if
screen goes completely off when closing the lid, but probably this is very
dependant of graphics card or computer bios.
To enable sleep you must uncomment the #ACPI_SLEEP=true from acpi-support. You should then find that sleep.sh works correctly;
/etc/default/
including stopping mysql at the correct point