Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 13 Feb 1999 23:08:37 +0300 (MSK)
From:      kostik@org.chem.msu.su
To:        FreeBSD-gnats-submit@FreeBSD.ORG
Subject:   kern/10066: problem with an x-server and syscons driver seems to be solved
Message-ID:  <199902132008.XAA05957@org.chem.msu.su>

next in thread | raw e-mail | index | archive | help

>Number:         10066
>Category:       kern
>Synopsis:       problem with a X-Window and syscons driver solved
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat Feb 13 12:10:00 PST 1999
>Closed-Date:
>Last-Modified:
>Originator:     Konstantin Y. Pasichnichenko
>Release:        FreeBSD 3.0-RELEASE i386
>Organization:
Russia, Moscow, Moscow State University, Chemistry department.
>Environment:
System: FreeBSD-3.0-Release i386  + XFree86-3.3.2
Architecture: i386 (Pentium-133 system)

>Description:
it is well known problem: switching between consoles using syscons driver
while x-server is starting will hang the syscons driver with a ~50% possibility
(i.e. turn it to unknown abnormal state).

>How-To-Repeat:
start an x-server (xfree86, independently to x-server type)
(or run x-window system), and while x-server _is_ starting
and _is_ switching to next available free console,
quickly switch back to text console by ctrl+alt+f? combination.
it will some times turn syscons console driver
to unknown half-hung state, when it isn't possible to switch back
from graphics-x-server-console to text-cosole.
or, the most better way, run x-window (xfree86-3.3.2) in 8-bpp mode
and then run xf86quake linux version (with a linux emulation enabled).
xf86quake will lock console driver with all x-server. then while running
xf86quake try to switch to text console (regardless which one text console
will need). syscons driver will `beep' but willn't switch back to
text console. after this your may quit from xf86quake - syscons driver
have hung and willn't switch to any text console anymore, he will `beep'
instead, but you still able to run x-server remotely, while loggin in
from network or serial console and to continue your work in x-window;
text-mode consoles will broke.

>Fix:
the following patch applied to syscons driver source
/usr/src/sys/i386/isa/syscons.c
will fix the broblem discussed above in a case of FreeBSD-3.0-RELEASE:

-- file syscons.c.diff --

*** syscons.c.old	Fri Oct  2 01:04:52 1998
--- syscons.c	Thu Jan  7 23:40:04 1999
***************
*** 2312,2317 ****
--- 2312,2328 ----
  	else
  	    switch_in_progress = FALSE;
      }
+     /*
+      * XXX: kostik's hack:
+      *      i found it eliminate console Xserver related problem;
+      *      now console will not hang while switching
+      *      to text console simultaneously with a Xserver starting;
+      *      if it will work for somebody else
+      *        pls, drop me e-mail to kostik@org.chem.msu.su
+      */
+     switch_in_progress = FALSE;
+     delayed_next_scr   = FALSE;
+ 
      return 0;
  }
  

>Release-Note:
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199902132008.XAA05957>