Subject: Re: PCI cards and x86 emulation
To: None <tech-kern@netbsd.org>
From: Michael Richardson <mcr@sandelman.ottawa.on.ca>
List: tech-kern
Date: 08/25/2000 14:24:07
  What I'd like to see is a sequence of in[bwl]]/out[bwl] that are required
to setup or restore stock VGA mode provided to the kernel so that DDB can
just invoke that sequence before it prints its panic messages.
  The sequence would be:

  1. X server starts up, puts display into graphics mode.
  2. X server pretends to put display back into text mode, records the
     in/out sequence, logs sequence to a file and does an ioctl on /dev/vga
     to put this list into the kernel.
     (It could even actually put the display back into text mode and then
     back into graphics mode. Maybe a little flicker on boot, but I don't
     mind)

  3. when experimental kernel crashes, the panic code would run the sequence
  (if it exists), turning off graphics mode, and letting me see/debug the
  crash.

  My problem is that I can't really justify putting a serial console on
everyone's desktop. Yet, occasionally things crash..

  If one were paranoid (or securelevel>=1), then the ioctl would fail, and
one would have to read the log file, and using some utility during
securelevel=0, initialize things.

  I don't know much about video chips beyond the 6845, but I assume that
turning *off* graphics mode isn't too complicated, and doesn't require any
specially timed command sequences. I'd hate to have to run the x86 emulator
inside of DDB.

   :!mcr!:            |  Cow#1: Are you worried about getting Mad Cow Disease?
   Michael Richardson |  Cow#2: No. I'm a duck.
 Home: mcr@sandelman.ottawa.on.ca. PGP key available.