Keyboard backlight isn't properly restored after idle on systems with hardwired configuration

Bug #1583861 reported by Marco Trevisan (Treviño)
52
This bug affects 8 people
Affects Status Importance Assigned to Milestone
Dell Sputnik
New
Undecided
Unassigned
Upower
Unknown
Unknown
gnome-settings-daemon (Ubuntu)
Confirmed
Medium
Unassigned
Xenial
Confirmed
Medium
Unassigned
unity-settings-daemon (Ubuntu)
Fix Released
Medium
Marco Trevisan (Treviño)
Xenial
Fix Released
Medium
Unassigned
upower (Ubuntu)
Fix Released
Medium
Marco Trevisan (Treviño)
Xenial
Confirmed
Medium
Unassigned

Bug Description

In Dell or ThinkPad (for these you need a kernel which includes fix for lp:1574498) notebooks with keyboard backlight, the keybindings to control the keyboard backlight don't emit any event to the userland, about the state change, nor they request userland to change it (as it happens in other models which emits KEY_KBDILLUM{UP,DOWN,TOGGLE} events), this causes unity/gnome-settings daemon not to restore the proper backlight after idle.

Steps to reproduce:
 0) ensure your keyboard backlight is on, and
     gdbus call --system --dest org.freedesktop.UPower \
      --object-path /org/freedesktop/UPower/KbdBacklight \
      --method org.freedesktop.UPower.KbdBacklight.GetBrightness
    returns a value != from 0. If not, just call the SetBrightness
    method with a positive value, to turn on the backlight.

    Now turn off the keyboard backlight (or set it to another level)
    using the laptop keys, and run:
     gsettings set org.gnome.desktop.session idle-delay 1
    to make things easier to test.

 2) Wait one second and the screensaver should start. Wait the screen to
    be turned off. If you just changed the brightness level at the step above,
    once the screen is turned off, also the keyboard backlight should be turned off too.

 3) Now press a key or move the mouse.

Expected behavior:

 4) The keyboard backlight should be set back to the previous level (so it should stay off
    or go back to the level you set before the idle timeout happened).

Actual behavior:

 5) The backlight is set to the level it had at point 0).

To reset the idle-delay, just call
  gsettings reset org.gnome.desktop.session idle-delay

Related branches

Changed in upower (Ubuntu):
importance: Undecided → Medium
Changed in unity-settings-daemon (Ubuntu):
importance: Undecided → Medium
Changed in gnome-settings-daemon (Ubuntu):
importance: Undecided → Medium
Changed in upower (Ubuntu):
assignee: nobody → Marco Trevisan (Treviño) (3v1n0)
Changed in unity-settings-daemon (Ubuntu):
assignee: nobody → Marco Trevisan (Treviño) (3v1n0)
summary: - Keyboard backlight isn't properly reset after idle on systems with
+ Keyboard backlight isn't properly restored after idle on systems with
hardwired configuration
description: updated
Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "upower-always-get-kbd-brightness.debdiff" seems to be a debdiff. The ubuntu-sponsors team has been subscribed to the bug report so that they can review and hopefully sponsor the debdiff. If the attachment isn't a patch, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are member of the ~ubuntu-sponsors, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issue please contact him.]

tags: added: patch
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in gnome-settings-daemon (Ubuntu):
status: New → Confirmed
Changed in unity-settings-daemon (Ubuntu):
status: New → Confirmed
Changed in upower (Ubuntu):
status: New → Confirmed
description: updated
Mathew Hodson (mhodson)
Changed in upower (Ubuntu):
status: Confirmed → Triaged
Changed in unity-settings-daemon (Ubuntu):
status: Confirmed → Triaged
Revision history for this message
Marco Trevisan (Treviño) (3v1n0) wrote :

Upower patch has been applied upstaream. Debdiff for the ubuntu package updated.

Revision history for this message
Martin Pitt (pitti) wrote :

Uplaoded upower fix to yakkety and to xenial-proposed.

Changed in upower (Ubuntu):
status: Triaged → Fix Committed
Changed in upower (Ubuntu Xenial):
status: New → In Progress
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package upower - 0.99.4-2git1

---------------
upower (0.99.4-2git1) yakkety; urgency=medium

  * UpKbdBacklight: Don't cache the brightness level, always read
   it from sysfs. (LP: #1583861)

 -- Martin Pitt <email address hidden> Tue, 24 May 2016 14:53:01 +0200

Changed in upower (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Chris J Arges (arges) wrote : Please test proposed package

Hello Marco, or anyone else affected,

Accepted upower into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/upower/0.99.4-2ubuntu0.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in upower (Ubuntu Xenial):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Marco Trevisan (Treviño) (3v1n0) wrote :

Unfortunately this fails because of https://bugs.freedesktop.org/show_bug.cgi?id=96215

tags: added: regression-proposed verification-failed
removed: verification-needed
Mathew Hodson (mhodson)
Changed in unity-settings-daemon (Ubuntu Xenial):
importance: Undecided → Medium
Changed in upower (Ubuntu Xenial):
importance: Undecided → Medium
Changed in gnome-settings-daemon (Ubuntu Xenial):
importance: Undecided → Medium
Revision history for this message
Martin Pitt (pitti) wrote :

Adjusted patch in https://launchpad.net/ubuntu/+source/upower/0.99.4-2ubuntu0.2, please re-test with this version.

tags: added: verification-needed
removed: regression-proposed verification-failed
tags: added: verification-done
removed: verification-needed
Revision history for this message
Brian Murray (brian-murray) wrote :

I am unsubscribing sponsors as there doesn't appear to be anything left to sponsor here.

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in gnome-settings-daemon (Ubuntu Xenial):
status: New → Confirmed
Changed in unity-settings-daemon (Ubuntu Xenial):
status: New → Confirmed
Revision history for this message
Martín Langberg (martinlangberg) wrote :

Sorry, is this bug already fixed? Because i have the last version of upower (0.99.4-2ubuntu0.2) and I still have this problem. Thanks

Revision history for this message
Marco Trevisan (Treviño) (3v1n0) wrote :

The upower-side of the isuse has been fixed, however unless unity-settings-daemon doesn't land it won't be fixed in yakkety and then in xenial (once SRU'ed)

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity-settings-daemon - 15.04.1+16.10.20160613-0ubuntu1

---------------
unity-settings-daemon (15.04.1+16.10.20160613-0ubuntu1) yakkety; urgency=medium

  [ Marco Trevisan (Treviño) ]
  * PowerManager: connect to keyboard BrightnessChanged signal to update
    the cached current value properly (LP: #1510344)
  * GsdPowerManager: don't cache kbd backlight current value (LP:
    #1583861)
  * common: backport g-s-d commits for having single shared dbus proxies
  * ScreensaverProxy: redirect supported calls to gnome screensaver APIs
    (LP: #1415265, #1584161)

  [ Robert Ancell ]
  * Correctly check value of XDG_CURRENT_DESKTOP.
  * Remove code for disabling plugin under GNOME Shell - they don't use
    u-s-d.
  * Drop print notifications - not used under Unity.

  [ Sebastien Bacher ]
  * power: '0' keyboard backlight is a valid value (LP: #1510344)
  * Don't hit an xerror when a device is removed while being configured
    (LP: #1503758)
  * wacom: don't segfault when a device is removed while being
    configured. (LP: #1439427)
  * power: fix crasher when the plugin is unloaded (LP: #1567116)
  * power: Add sound notification on power plug/unplug

 -- Marco Trevisan (Treviño) <mail@3v1n0.net> Mon, 13 Jun 2016 11:31:26 +0000

Changed in unity-settings-daemon (Ubuntu):
status: Triaged → Fix Released
Revision history for this message
Martin Pitt (pitti) wrote :

Hello Marco, or anyone else affected,

Accepted unity-settings-daemon into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/unity-settings-daemon/15.04.1+16.04.20160701-0ubuntu1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in unity-settings-daemon (Ubuntu Xenial):
status: Confirmed → Fix Committed
tags: removed: verification-done
tags: added: verification-needed
tags: added: verification-done
removed: verification-needed
Revision history for this message
William Hua (attente) wrote :

Thanks, fixed it for me.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity-settings-daemon - 15.04.1+16.04.20160701-0ubuntu1

---------------
unity-settings-daemon (15.04.1+16.04.20160701-0ubuntu1) xenial; urgency=medium

  [ Robert Ancell ]
  * Correctly check value of XDG_CURRENT_DESKTOP.

  [ Marco Trevisan (Treviño) ]
  * PowerManager: connect to keyboard BrightnessChanged signal to update
    the cached current value properly (LP: #1510344)
  * GsdPowerManager: don't cache kbd backlight current value (LP:
    #1583861)
  * common: backport g-s-d commits for having single shared dbus proxies
  * ScreensaverProxy: redirect supported calls to gnome screensaver APIs
    (LP: #1415265, LP: #1584161)

  [ Sebastien Bacher ]
  * Don't hit an xerror when a device is removed while being configured
    (LP: #1503758)
  * wacom: don't segfault when a device is removed while being
    configured. (LP: #1439427)

  [ Marco Trevisan (Treviño) ]
  * GsdPowerManager: use proper return value for upower_kbd_toggle
    wherever we use it (LP: #1592816)

  [ Kai-Heng Feng ]
  * SettingsManager: Queue up signals before getting D-Bus connection.
    (LP: #1571640)

 -- Marco Trevisan (Treviño) <mail@3v1n0.net> Fri, 01 Jul 2016 13:28:54 +0000

Changed in unity-settings-daemon (Ubuntu Xenial):
status: Fix Committed → Fix Released
Revision history for this message
Adam Conrad (adconrad) wrote : Update Released

The verification of the Stable Release Update for unity-settings-daemon has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
GrzesiekC (grzesiekc) wrote :

Hi all,
I've got Dell Latitude E7470:

#uname -a
Linux E7470 4.4.0-31-generic #50-Ubuntu SMP Wed Jul 13 00:07:12 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

#dpkg -s upower | grep -i 'status\|version'
Status: install ok installed
Version: 0.99.4-2ubuntu0.3

#dpkg -s unity-settings-daemon | grep -i 'status\|version'
Status: install ok installed
Version: 15.04.1+16.04.20160701-0ubuntu1

My Keyboard lights all time (doesn't time-out). I can disable it by FN+F10, but it will light again after boot/resume/unlock-weak-up. When I boot to BIOS all is OK. It time-outs after 10 seconds.

Should I perform any additional steps (i.e. packages reconfiguration) ?

Regards
Grzesiek

Revision history for this message
Amr Ibrahim (amribrahim1987) wrote :

The upower Xenial task is Fix Committed, but there is no package in xenial-proposed!
Is the task closed or not?

Changed in upower (Ubuntu Xenial):
status: Fix Committed → Confirmed
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.