Battery disappears on restore, no longer reacts to lid close

Bug #147902 reported by Ian Hollander
8
Affects Status Importance Assigned to Milestone
kde-guidance (Ubuntu)
Invalid
Undecided
Luka Renko

Bug Description

Upon the 4+ restore, the battery icon disappears from guidance. Once this happens the KDE will no longer suspend/hibernate when the lid is closed. Restarting guidance-power-manager usually fixes the problem.

Running updated Kubuntu Gusty Tribe5
Toshiba M105-S3084

I'm guessing this is similar to Bug #116416.

Revision history for this message
Luka Renko (lure) wrote :

So everything works for couple of suspend/resume cycles, but stops working after you did it for 4-th time?

Can you provide lshal output when it stops working?

Changed in kde-guidance:
assignee: nobody → lure
status: New → Incomplete
Revision history for this message
Luka Renko (lure) wrote :

Can you also Quit applet and start guidance-power-manager from command line (Konsole) and check if any errors are reported on the console?

Revision history for this message
bendis (bendis) wrote :

I have a very similar problem - after two or three suspend/resume cycles the system suspends no more when the lid is closed. Restarting guidance-power-manager fixes the problem.

lshal output when everything works fine:

...
<<lid closed>>
14:22:39.888: computer_logicaldev_input_2 property button.state.value = true
14:22:39.890: computer_logicaldev_input_2 condition ButtonPressed = lid
14:22:43.856: net_00_16_36_46_0c_05 removed
14:22:43.980: net_00_16_6f_81_72_e2 removed
<<lid opened>>
14:23:00.949: computer_logicaldev_input_2 property button.state.value = false
14:23:00.954: computer_logicaldev_input_2 condition ButtonPressed = lid
14:23:01.191: usb_device_45e_39_noserial_if0_logicaldev_input removed
14:23:01.194: usb_device_45e_39_noserial_if0 removed
14:23:01.199: usb_device_45e_39_noserial_usbraw removed
14:23:01.321: usb_device_45e_39_noserial removed
14:23:01.325: usb_device_483_2016_noserial_if0 removed
14:23:01.330: usb_device_483_2016_noserial_usbraw removed
14:23:01.337: usb_device_483_2016_noserial removed
14:23:01.586: net_00_16_36_46_0c_05 added
14:23:01.928: net_00_16_6f_81_72_e2 added
14:23:02.118: computer_logicaldev_input_0 removed
14:23:02.121: computer_logicaldev_input_2 removed
14:23:02.122: computer_logicaldev_input_1 removed
14:23:02.245: usb_device_45e_39_noserial added
14:23:02.399: usb_device_45e_39_noserial_if0 added
14:23:02.405: computer_logicaldev_input_0 added
14:23:02.415: usb_device_45e_39_noserial_usbraw added
14:23:02.415: usb_device_45e_39_noserial_if0_logicaldev_input added
14:23:02.420: computer_logicaldev_input_1 added
14:23:02.480: computer_logicaldev_input_2 added
14:23:02.622: usb_device_483_2016_noserial added
14:23:02.673: usb_device_483_2016_noserial_if0 added
14:23:02.700: usb_device_483_2016_noserial_usbraw added
...

lshal output when the problem appears:

...
<<lid closed>>
14:23:18.010: computer_logicaldev_input_1 property button.state.value = true
14:23:18.015: computer_logicaldev_input_1 condition ButtonPressed = lid
<<lid opened>>
14:23:33.827: computer_logicaldev_input_1 property button.state.value = false
14:23:33.830: computer_logicaldev_input_1 condition ButtonPressed = lid
...

Note that "computer_logicaldev_input_2 property button.state.value = true" changes to "computer_logicaldev_input_1 property button.state.value = true" when the guidance-power-manager stops to react on lid closing.

Regards,
Bendis

Revision history for this message
bendis (bendis) wrote :
Download full text (4.7 KiB)

I don't know how HAL and guidance-power-manager exactly work, but IMHO the source of the problem is the change of the udi of the "lid" button:

lshal before suspend:

...
udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_2'
  button.has_state = false (bool)
  button.type = 'sleep' (string)
  info.addons = {'hald-addon-keyboard'} (string list)
  info.capabilities = {'input', 'button'} (string list)
  info.category = 'input' (string)
  info.parent = '/org/freedesktop/Hal/devices/computer' (string)
  info.product = 'Sleep Button (CM)' (string)
  info.udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_2' (string)
  input.device = '/dev/input/event6' (string)
  input.product = 'Sleep Button (CM)' (string)
  linux.device_file = '/dev/input/event6' (string)
  linux.hotplug_type = 2 (0x2) (int)
  linux.subsystem = 'input' (string)
  linux.sysfs_path = '/sys/class/input/input28/event6' (string)

udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_1'
  button.has_state = false (bool)
  button.type = 'power' (string)
  info.addons = {'hald-addon-keyboard'} (string list)
  info.capabilities = {'input', 'button'} (string list)
  info.category = 'input' (string)
  info.parent = '/org/freedesktop/Hal/devices/computer' (string)
  info.product = 'Power Button (FF)' (string)
  info.udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_1' (string)
  input.device = '/dev/input/event2' (string)
  input.product = 'Power Button (FF)' (string)
  linux.device_file = '/dev/input/event2' (string)
  linux.hotplug_type = 2 (0x2) (int)
  linux.subsystem = 'input' (string)
  linux.sysfs_path = '/sys/class/input/input26/event2' (string)

udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_0'
  button.has_state = true (bool)
  button.state.value = false (bool)
  button.type = 'lid' (string)
  info.addons = {'hald-addon-keyboard'} (string list)
  info.capabilities = {'input', 'input.switch', 'button'} (string list)
  info.category = 'input' (string)
  info.parent = '/org/freedesktop/Hal/devices/computer' (string)
  info.product = 'Lid Switch' (string)
  info.udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_0' (string)
  input.device = '/dev/input/event4' (string)
  input.product = 'Lid Switch' (string)
  linux.device_file = '/dev/input/event4' (string)
  linux.hotplug_type = 2 (0x2) (int)
  linux.subsystem = 'input' (string)
  linux.sysfs_path = '/sys/class/input/input27/event4' (string)
...

and after resume:
...
udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_2'
  button.has_state = true (bool)
  button.state.value = false (bool)
  button.type = 'lid' (string)
  info.addons = {'hald-addon-keyboard'} (string list)
  info.capabilities = {'input', 'input.switch', 'button'} (string list)
  info.category = 'input' (string)
  info.parent = '/org/freedesktop/Hal/devices/computer' (string)
  info.product = 'Lid Switch' (string)
  info.udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_2' (string)
  input.device = '/dev/input/event6' (string)
  input.product = 'Lid Switch' (string)
  linux.device_file = '/dev/input/event6' (string)
  linux.hotplu...

Read more...

Revision history for this message
Alexei Colin (alexei.colin) wrote :

A similar problem happens in gnome:

After restarting HAL (i.e. sudo /etc/init.d/hal restart), the suspend button on the
keyboard stops working and the system does not respond to lid closure. Suspend
(and resume) continue to work fine through the GUI menu button in the
gnome-panel.

I manually restart HAL as a fix of a separate problem: wireless controller is lost
(i.e. not detected) after resuming. It reappears after a HAL restart, so I put the
command for restarting HAL in a script that is run on each resume. The problem
in this post is of course not applicable if I remove the script.

Please let me know if I should post this as a separate bug-report or if you came
across an existing report. Thank you!

Revision history for this message
Jonathan Thomas (echidnaman) wrote :

Is this still a problem in Kubuntu Intrepid?

Revision history for this message
Jonathan Thomas (echidnaman) wrote :

We are closing this bug report because it lacks the information we need to investigate the problem, as described in the previous comments. Please reopen it if you can give us the missing information, and don't hesitate to submit bug reports in the future. To reopen the bug report you can click on the current status, under the Status column, and change the Status back to "New". Thanks again!

Changed in kde-guidance:
status: Incomplete → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.