From owner-freebsd-hackers Fri Aug 8 13:58:47 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id NAA13225 for hackers-outgoing; Fri, 8 Aug 1997 13:58:47 -0700 (PDT) Received: from phaeton.artisoft.com (phaeton.Artisoft.COM [198.17.250.50]) by hub.freebsd.org (8.8.5/8.8.5) with SMTP id NAA13215 for ; Fri, 8 Aug 1997 13:58:43 -0700 (PDT) Received: (from terry@localhost) by phaeton.artisoft.com (8.6.11/8.6.9) id NAA27986; Fri, 8 Aug 1997 13:55:45 -0700 From: Terry Lambert Message-Id: <199708082055.NAA27986@phaeton.artisoft.com> Subject: Re: reset screen hardware? To: perlsta@sunyit.edu (Alfred Perlstein) Date: Fri, 8 Aug 1997 13:55:45 -0700 (MST) Cc: hackers@FreeBSD.ORG In-Reply-To: from "Alfred Perlstein" at Aug 8, 97 12:59:19 pm X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-hackers@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk > Last night X crashed on me, i thought my machine needed to be rebooted, > but first i tried to telnet into it, i was able and i killed X and had to > restart X twice to get it to work, well everything seemed fine after that, > however my Text consols were all fubar'd and i had no idea how to reset > the text part of my display to i wound up rebooting anyway. > > What could i have done to reset the text screens? You could have modified X to use a DDX in the kernel so that when the X server was killed, the kernel driver would be able to restore the video card to the pre-X server state. Failing that, the console driver has no idea what the X server has done to the I/O ports and video card reigsters; not knowing what was done to the card means it can't know how to undo it. So, you could have tried to less destructively kill the X server (kill -1 or -15 instead of -9) and prayed the signal handler did the cleanup. If it didn't, there was nothing you could do, period. This is a basic problem with the design of the X-server/video card interface for user space X server code. Nothing short of a redesign can really fix it. By the same token, the kernel debugger can't restore the video state when you drop into the kernel debugger from X in the event of a fault or debugging trap. This is one of my most long-standing gripes with UNIX systems since the first days of X windows. 8-(. Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers.