Display backlight is reset when internal output is toggled
Submitted by hjan
Assigned to Nick Schermer
Description
Hi there,
when I close the lid of my laptop, it is going to suspend as expected. xfsettingsd then causes the internal output to be toggled. I assume it's to do with applying settings for a multiple monitor setups. (?!)
However, after resuming from suspend (or probably during the suspend already, see debug output), the backlight is set to 0 instead of the value that it was before the suspend.
This only happens when closing the lid is used to trigger the suspend. When using the function key for sleep, it does not happen, because no output is being touched by xfsettingsd at all.
I'm on a Thinkpad T410s here, running Gentoo Linux with systemd-217 and a 3.17.2 kernel. I also encountered this behaviour with systemd-215 and 216 (combined with kernel 3.17.2) and kernel 3.16.3.
Currently I'm running Xfce 4.11.* where xfsettingsd is running with version 4.11.3.
The reason why I think, that xfsettingsd toggling the output causing the backlight to be reset is, that if I kill the xfsettingsd process and suspend/resume by close/open the lid, the backlight is not being reset. Suspend is then handled by systemd.
Please let me know if you need more informations.
so long, hjan
Here follows the debug output of XFSETTINGSD_DEBUG=1 xfsettingsd --replace --no-daemon:
xfce4-settings(xsettings): _XSETTINGS_S0 registered on screen 0
xfce4-settings(xsettings): 27 settings changed (serial=0, len=1032)
xfce4-settings(xsettings): resource manager (xft) changed (len=572)
xfce4-settings(displays): Detected CRTC 63.
xfce4-settings(displays): Detected CRTC 64.
xfce4-settings(displays): Detected output 65 LVDS1.
xfce4-settings(displays): CRTC 63 assigned to LVDS1.
xfce4-settings(displays): CRTC 63, output list[0] -> 65.
xfce4-settings(displays): Total 1 active output(s).
xfce4-settings(displays): Normalized CRTC 63: size=1440x900, pos=0x0.
xfce4-settings(displays): min_h = 200, min_w = 320, max_h = 32767, max_w = 32767, prev_h = 900, prev_w = 1440, prev_hmm
= 238, prev_wmm = 381, h = 900, w = 1440, hmm = 238, wmm = 381.
xfce4-settings(displays): Configuring CRTC 63.
xfce4-settings(displays): Configuring CRTC 64.
xfce4-settings(pointers): initialized xi 2.3
xfce4-settings(pointers): [TPPS/2 IBM TrackPoint] buttonmap not changed
xfce4-settings(pointers): [TPPS/2 IBM TrackPoint] change feedback (threshold=4, accelNum=2, accelDenom=1)
xfce4-settings(keyboards): initialized xkb 1.0
xfce4-settings(keyboards): set auto repeat on
xfce4-settings(keyboards): set key repeat (delay=500, rate=50)
xfce4-settings(keyboards): set numlock off
xfce4-settings(accessibility): AccessXKeys disabled
xfce4-settings(accessibility): stickykeys disabled
xfce4-settings(accessibility): slowkeys disabled
xfce4-settings(accessibility): bouncekeys disabled
xfce4-settings(accessibility): mousekeys disabled
xfce4-settings(keyboard-shortcuts): 11 shortcuts loaded
xfce4-settings(keyboard-layout): spawning "xmodmap /home/smove/.Xmodmap"
xfce4-settings(fontconfig): monitoring 43 paths
xfce4-settings(workspaces): 4 desktop names set from xfconf
xfce4-settings(displays): UPower lid event received (open -> closed).
xfce4-settings(displays): Toggling internal output LVDS1.
xfce4-settings(displays): CRTC 63 assigned to LVDS1.
xfce4-settings(displays): LVDS1 will be disabled.
xfce4-settings(displays): CRTC 63 must be temporarily disabled.
xfce4-settings(displays): Disabling CRTC 63.
xfce4-settings(displays): min_h = 200, min_w = 320, max_h = 32767, max_w = 32767, prev_h = 900, prev_w = 1440, prev_hmm
= 238, prev_wmm = 381, h = 0, w = 0, hmm = 0, wmm = 0.
xfce4-settings(displays): Configuring CRTC 63.
xfce4-settings(displays): Configuring CRTC 64.
xfce4-settings(displays): RRScreenChangeNotify event received.
xfce4-settings(displays): Refreshing RandR cache.
xfce4-settings(displays): Detected CRTC 63.
xfce4-settings(displays): Detected CRTC 64.
xfce4-settings(displays): Detected output 65 LVDS1.
xfce4-settings(displays): Noutput: before = 1, after = 1.
xfce4-settings(displays): UPower lid event received (closed -> open).
xfce4-settings(displays): Toggling internal output LVDS1.
xfce4-settings(displays): CRTC 63 assigned to LVDS1.
xfce4-settings(displays): CRTC 63, output list[0] -> 65.
xfce4-settings(displays): LVDS1 will be re-enabled.
xfce4-settings(displays): Normalized CRTC 63: size=1440x900, pos=0x0.
xfce4-settings(displays): min_h = 200, min_w = 320, max_h = 32767, max_w = 32767, prev_h = 900, prev_w = 1440, prev_hmm
= 238, prev_wmm = 381, h = 900, w = 1440, hmm = 238, wmm = 381.
xfce4-settings(displays): Configuring CRTC 63.
xfce4-settings(displays): Applying changes to CRTC 63.
xfce4-settings(displays): Configuring CRTC 64.
xfce4-settings(displays): RRScreenChangeNotify event received.
xfce4-settings(displays): Refreshing RandR cache.
xfce4-settings(displays): Detected CRTC 63.
xfce4-settings(displays): Detected CRTC 64.
xfce4-settings(displays): Detected output 65 LVDS1.
xfce4-settings(displays): Noutput: before = 1, after = 1.
Version: 4.11.0