Subject: Re: Can't switch screens right with NetBSD/i386 & latest XFree86
To: None <current-users@NetBSD.ORG>
From: Ken Hornstein <kenh@cmf.nrl.navy.mil>
List: current-users
Date: 03/27/1996 00:45:41
>Is anyone else having problems with the latest version of NetBSD/i386, pcvt,
>and Xfree86 3.1.2D?
>I can switch screens away from my X session just fine.  But when I switch
>back, the screen goes into a text-mode screen and doesn't re-enter X.  Anyone
>else seen this problem?  I'm supped up to yesterday.

Well, I feel stupid.

When I upgraded to -current, I blew away my old kernel config file and
made a new one from scratch (as I recall, the format had changed somewhat).
I had in my old kernel config file "PCVT_NSCREENS=4", because I only use
4 vt's.  When I put that in my new kernel config file, I put in the line
"PCVT_NUMSCREENS=4", which of course does nothing except make me think
I only have 4 virtual screens :-)

Why does this matter?  Well, since I only thought I had 4 virtual screens,
I was only running gettys on the first 4 vty's.  And as it turns out, XFree86
tries to find a "free" vty to run X on.  Since the last four vty's were not
being used, it popped up my X session there.  To me, it just looked like
X came up normally on the same vty.  But when I went back to the screen
I _thought_ X was running on, I just got the text from the XFree86 startup.
X was happily running on a vty that I didn't know that I had.

I guess the morals of this story are:

- Don't be so quick to blame the OS

- Next time, try using ktrace(1) more and printf()'s in the kernel less :-)

--Ken