tl;dr - There is a bug in xfsettingsd that not only affects external
monitors, but primary monitors as well.
I believe that I am encountering the same bug, but by a different
scenario. This may also be the same bug as #1313539.
I am running Xubuntu 14.04 on two of my four computers. I have all four
computers connected to a single keyboard, monitor and mouse via a 4port
KVM switch. Prior 14.04 upgrade, this setup worked like a dream. Post
14.04 upgrade, I have found that switching to either of the Xubuntu
machines results in a blank monitor. On one machine, I am usually able
to get to a virtual console and reset of the video by restarting
lightdm. On the other machine, I am not able to even get a virtual
console, and I have to ssh into the machine in order to restart lightdm.
The dying video happens so frequently that I starting the process of
migrating away to XFCE. I installed Gnome Shell on one machine and
Fluxbox on the other. Neither of these WM's exhibited the dying video
phenomena.
Based upon this bug report, I decided to investigate the possibility
that xfsettingsd might be the problem. Here's what I did.
1) Log in to a Xubuntu session.
2) Open a terminal window. Because I needed to do part of this from the
Xubuntu session and part of this via ssh, I opened a new Byobu session
(screen or tmux would work too). Then,
$ killall xfsettingsd
$ XFSETTINGSD_DEBUG=1 xfsettingsd --replace --no-daemon 2>&1 | tee
output.txt
3) After the initial output from xfsettingsd had finished,
$ cp output.txt before.txt
4) Here's where the fun begins: I unplugged the monitor from the KVM
switch. I waited a few seconds, and then I plugged the monitor back into
the switch. No video. I switched the KVM to one of the other computers
and verified that the monitor was corrected plugged in and working.
5) On one of the other computers with working video, I ssh'ed into the
machine running the Xubuntu session and reconnected to the Byobu
session. I found that xfsettingsd had crashed.
6) Executing "sleep 5; xfsettingsd" on the ssh session and switching to
the Xubuntu machine restored the video.
7) I diff'ed the "before.txt" with the "output.txt". Here is the output
that was generated when the monitor was unplugged and replugged.
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 CRTC 65.
xfce4-settings(displays): Noutput: before = 1, after = 0.
xfce4-settings(displays): Output disconnected: VGA1
xfce4-settings(displays): Disabling CRTC 63.
xfce4-settings(displays): No active output anymore! Attempting to re-enable the
internal output.
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 CRTC 65.
xfce4-settings(displays): Noutput: before = 0, after = 0.
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 CRTC 65.
xfce4-settings(displays): Detected output 66 VGA1.
xfce4-settings(displays): Noutput: before = 0, after = 1.
xfce4-settings(displays): New output connected: VGA1
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 CRTC 65.
xfce4-settings(displays): Noutput: before = 1, after = 0.
xfce4-settings(displays): Output disconnected: VGA1
xfce4-settings(displays): Disabling CRTC 89.
The program 'xfsettingsd' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadRRCrtc (invalid Crtc parameter)'.
(Details: serial 505 error_code 148 request_code 140 minor_code 21)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the --sync command line
option to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1308105
Title:
Xfce resets TV mode to NULL when power cycled
To manage notifications about this bug go to:
https://bugs.launchpad.net/mythbuntu/+bug/1308105/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs