Hi all. I'm glad my findings helped.
For me, I learned from your comments: I wasn't even aware of the fact
that initctl supplies a VTx parameter to gdm on first launch. That
certainly explains how things go haywire _after_ on quick relaunch(es).
I will post later with more information about the actual command line
params to X.
I'm not fond of my workaround, myself:
(a) it doesn't work well with deviant numbers of vts (especially fewer)
(b) it will on average make boot to desktop take longer than necessary
(c) it doesn't actually address the issue: a pre-start scriptlet containing a
stupid little 'sleep 1' would likely do exactly as well. Worst thing is, even
with vt's completely initializing, things might still turn out a bit too fast
for the nvidia/ATI module to be ready.
I'd say the real fix ought to be based on one of the following ideas:
(A) On X video driver initialization detect when nvidia module is ready
(probably doable from with xorg by waiting for it some limited amount of
time?). This will make us dependent on upstream for a fix (Xorg or worse:
nvidia)
(B) pass the VTx parameter in some other way - a (more) persistent way. We
might set a config in /var/run/{plymouth|gdm} - or and read it. There could be
a smart algo that checks to see whether that vt is still available and use it
if so. Otherwise, all bets are off and best we can do is resort to current
behaviour (e.g. when starting secondary X servers: it will find the boot-time
configuration parameter (VTx=/dev/tty7) in a file, and detects it is already
taken. Then the best thing to do is to fall back to the next available vt, like
it does right now).
This system (B) is probably not completely foolproof but it would be my
preference:
- it is the smallest possible change to current setup.
- it will work way better and 'explainable' than the current situation
- it should be foolproof as long as upstart passes the right VTx param in the
first place (not a vt that might be (accidentally) shared with a getty
A minimal hack would be to keep the upstart scripts largely unchanged,
except for _also_ storing the optional VTx param in a file. I think I'll
do just that tonight (have to start making dinner now :))
$0.02
--
X starts on wrong tty: pressing enter after 5 minutes crashes X
https://bugs.launchpad.net/bugs/625239
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs