Subject: Re: problems with pnp support in 1.2G
To: None <current-users@NetBSD.ORG, buhrow@cats.ucsc.edu>
From: Mike Long <mikel@shore.net>
List: current-users
Date: 08/15/1997 19:23:14
>From: buhrow@cats.ucsc.edu (Brian Buhrow)
>Date: Fri, 15 Aug 1997 15:54:37 +0000
>
>	Hello folks.  I've been building the world of NetBSD/i386  from
>sources as of August 3, 1997.  As I've been booting the kernel I
>constructed on various pentiums around here, I've noticed that I see two
>behaviors which I believe are related.
>	The first machine I tested on, a 486 DX/50, has the sympton that if I
>do a shutdown -fr, the machine gets to the point just after probing the
>SCSI bus on its way back up and then freezes.  If I hit the reset button,
>causing a cold start, it comes up just fine with no complaints.  This is an
>ISA machine with no VLB or PCI.  

Is there any Plug-and-Pr^Hlay hardware in that machine?

>	The other machines, which are all Triton PCI machines, boot to the
>point where they're about to announce the boot disk and then "boom".  Since
>the error goes by so fast, it's hard to know what it is, but I believe it
>says "Illegal page fault in supervisor mode". 

What ISA PnP hardware is in these machines?

One thing I've noticed about the isapnp code is that it does a full
reset of all PnP devices during its probe and attach routines.  If
some vital hardware (e.g. the disk controller for your root and swap
disk(s)) is PnP-aware then Bad Things may happen here.

Another problem is that isapnp0 may find a PnP device that has already
been found by isa0 (because it's a boot device, or was configured by
the machine's PnP BIOS) and blindly reassign its I/O range, IRQ, or
DRQ.  The isa0 driver then loses sight of the hardware and Bad Things
happen.

>	Thinking it might be the 3c509 cards we have which have pnp disabled,
>I enabled pnp support to see if that made them happier.  Although they saw
>the pnp card on the way up, they still choked at the same time.  To get
>things working, I commented pnp0 at isa? out of the configuration file and
>then all of the devices that used pnp0.  That solved my problem.  I still
>have to enable pnp support and then, one-by-one, re-enable each device
>until I hit the magic death device.

If there is one.  I suspect you're being hosed by isapnp0 itself.  A
number of changes have been made to /sys/dev/isapnp since 19970803,
please update and let us know if your problems go away.

>(Here's a sample dmesg output from a machine after I commented out the pnp
>support.  I'll put brackets after the last line we can see before it panics
>when pnp is enabled.)

>fd0 at fdc0 drive 0: 1.44MB 80 cyl, 2 head, 18 sec
>[PANIC!!!!!!!]
>biomask 840 netmask c40 ttymask 1cc2

I'm not sure, but I think it's at about this point in the boot process
that the kernel enables interrupts.
-- 
Mike Long <mikel@shore.net>                http://www.shore.net/~mikel
"Every normal man must be tempted at times to spit on his hands,
hoist the black flag, and begin slitting throats." -- H.L. Mencken