[SRU] Xfce resets TV mode to NULL when power cycled
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Xfce4 Settings |
Fix Released
|
Critical
|
|||
xfce4-settings (Ubuntu) |
Fix Released
|
Medium
|
Unassigned | ||
Xenial |
Fix Released
|
Medium
|
Unassigned | ||
Bionic |
Fix Released
|
Medium
|
Unassigned |
Bug Description
[Impact]
* When a TV is power-cycled, it is no longer detected as an available display.
* The root issue is in xfce4-settings: xfsettingsd.
* The related patch correctly handles the NULL mode the TV enters when powered off.
[Test Case]
* Connect a TV to a computer running xfce4-settings 4.12.0, this can be in a single configuration or dual-monitor.
* Power the TV off.
* Power the TV on.
* Expected: TV powers on and remains connected as an available display.
* Actual: TV powers on and is not connected or detected.
[Regression Potential]
* Regression potential is minimal: The associated patch targets this very specific scenario and behavior, and does not interact with the rest of the codebase.
[Original Report]
I had an HTPC with Mythbuntu 12.04 installed. Upon upgrading a new behavior that if the TV is power cycled it no longer detects a link with the HTPC.
When this happens I can find in the xorg log that there is an accompanying log item:
[ 39829.509] (II) NVIDIA(0): Setting mode "NULL"
After debugging with NVIDIA at https:/
Working through the list in an Xfce environment, the culprit is xfsettingsd. If xfsettingsd is running, it causes the TV to come up in a NULL mode. If it's killed, it remains in the mode it was previously running in.
Until this is fixed, this behavior can be worked around with a simple shell script:
=======
#!/bin/sh
#Fix TV state when HDMI link is lost.
#By Mario Limonciello <email address hidden>
OUTPUT="HDMI-0"
BAD_MODE="1280x720"
GOOD_MODE=
for MODE in $BAD_MODE $GOOD_MODE; do
DISPLAY=:0 xrandr --output $OUTPUT --mode $MODE
sleep 2
done
=======
description: | updated |
Changed in xfce4-settings: | |
importance: | Unknown → Medium |
status: | Unknown → Confirmed |
tags: | added: downstream |
Changed in xfce4-settings: | |
status: | Confirmed → Incomplete |
Changed in xfce4-settings: | |
status: | Incomplete → In Progress |
Changed in xfce4-settings: | |
status: | In Progress → Fix Released |
Changed in xfce4-settings: | |
importance: | Medium → Critical |
status: | Fix Released → Confirmed |
tags: | added: patch |
Changed in xfce4-settings: | |
status: | Confirmed → Fix Released |
tags: | added: xenial |
summary: |
- Xfce resets TV mode to NULL when power cycled + [SRU] Xfce resets TV mode to NULL when power cycled |
Changed in nvidia-graphics-drivers (Ubuntu Xenial): | |
status: | New → Invalid |
Changed in nvidia-graphics-drivers (Ubuntu Bionic): | |
status: | New → Invalid |
Changed in nvidia-graphics-drivers-331 (Ubuntu Xenial): | |
status: | New → Invalid |
Changed in nvidia-graphics-drivers-331 (Ubuntu Bionic): | |
status: | New → Invalid |
Changed in xfce4-settings (Ubuntu Bionic): | |
status: | New → Fix Released |
description: | updated |
no longer affects: | nvidia-graphics-drivers (Ubuntu) |
no longer affects: | nvidia-graphics-drivers (Ubuntu Xenial) |
no longer affects: | nvidia-graphics-drivers-331 (Ubuntu) |
no longer affects: | nvidia-graphics-drivers (Ubuntu Bionic) |
no longer affects: | nvidia-graphics-drivers-331 (Ubuntu Xenial) |
no longer affects: | nvidia-graphics-drivers-331 (Ubuntu Bionic) |
affects: | mythbuntu → ubuntu-translations |
no longer affects: | ubuntu-translations |
tags: |
added: regression-release verification-done-xenial removed: dist-upgrade downstream verification-needed verification-needed-xenial |
Changed in xfce4-settings (Ubuntu): | |
importance: | Undecided → Medium |
Changed in xfce4-settings (Ubuntu Xenial): | |
importance: | Undecided → Medium |
Changed in xfce4-settings (Ubuntu Bionic): | |
importance: | Undecided → Medium |
For people on mythbuntu who encounter this with a mceusb remote, here's how i'm working around it:
1) Save this file to /home/user/ fix_tv_ state.sh and make it executable ======= ======= ======= ==
=======
#!/bin/sh
#Fix TV state when HDMI link is lost.
#By Mario Limonciello <email address hidden>
OUTPUT="HDMI-0" "1920x1080"
BAD_MODE="1280x720"
GOOD_MODE=
for MODE in $BAD_MODE $GOOD_MODE; do ======= ======= ======= ==
DISPLAY=:0 xrandr --output $OUTPUT --mode $MODE
sleep 2
done
=======
2) Create ~/.lirc/irexec and put these contents: ======= ======= ======= == fix_tv_ state.sh ======= ======= ======= ==
=======
begin
remote = mceusb
button = KEY_POWER
prog = irexec
repeat = 0
config = /home/user/
end
=======
3) Add to ~/.lircrc this line:
include ~/.lirc/irexec
4) Restart machine, lightdm or log out/in
Now power button on your mceusb remote will fix the HTPC video output state.