[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#596700: The X server does not deallocate its vt upon shutdown. Restarting the X server results in the use of a higher-numbered vt.



Package: xorg
Version: 1:7.5+6

I am running Debian Squeeze on the i386 architecture.  The video card has
an Nvidia RIVA TNT2 chipset.  The nv driver (xserver-xorg-video-nv) is
being used.  The monitor is a CRT multi-sync monitor with DDC2/EDID support.
My Desktop Environment is GNOME.

Here's the scenario:

(1) I boot the system.  The X server starts on vt 7, running the gdm
login interface daemon.  I login on the X console using my non-superuser
userid and password.  This works fine.

(2) I then logout of the desktop environment using System -> Logout
from the GNOME action bar.  Logout proceeds without incident, the
X server shuts down, then restarts automatically.  But when it
restarts, it restarts on vt 8 instead of vt 7.  This is not immediately
apparent, but if I switch to vt 1 via Ctrl+Alt+F1, then attempt
to switch back to the X server via Alt+F7, I see a black screen.
If I use Alt+F8 instead, I see the gdm login screen.

With the help of someone on the debian-user mailing list, plus some
trial-and-error experimentation, I have come up with the following
procedure which I use to get the X server back on vt 7 again,
without a reboot:

(a) When you see the gdm login screen again after logging out,
    switch to text console number 1 via Ctrl+Alt+F1.

(b) login as root on vt 1.  Attempt to deallocate vt 7 with

       deallocvt 7

    This results in an error message:

       VT_DISALLOCATE: Device or resource busy

(c) Issue the command

       killall console-kit-daemon

(d) Once again issue the command

       deallocvt 7

    This time it succeeds.

(e) Restart gdm with

       /etc/init.d/gdm restart

    The X server shuts down and restarts, this time on vt 7.
    Note: for some installations, "/etc/init.d/gdm3 restart" is needed instead.
    Do not login yet!

(f) Switch back to vt 1 via Ctrl+Alt+F1.

(g) Issue the command

       deallocvt 8

    to deallocate vt 8, which was used by the previous instance of the X server.
    This time it works.  It is not necessary to kill the console-kit-daemon
    process this time.

(i) Logout of the root session on vt 1.

(j) Switch back to the X server via Alt+F7.

(k) Login to the X server's desktop environment as usual.

This is a cumbersome and convoluted work-around, but it works.  The problem
does not appear to be GNOME-related.  Someone else on the debian-user mailing
list requested help with these symptoms.  He also was using the nv driver,
but he was not using GNOME.  He started the X server directly with "startx".
I don't remember what window manager he was using, but he was not using a
desktop environment.  All he has to do is stop the X server, manually
deallocate vt 7, and issue startx again.  console-kit-daemon is apparently
not used in his environment.  It is apparently not specific to the nv driver
either.  I have seen these symptoms in the GNOME environment using the intel
driver as well.

-- 
  .''`.     Stephen Powell    
 : :'  :
 `. `'`
   `-



Reply to: