Subject: Odd kernel reboots
To: None <current-users@NetBSD.ORG>
From: Dave Burgess <burgess@cynjut.neonramp.com>
List: current-users
Date: 10/13/1997 21:36:23
I Have been able to successfully reproduce this particular problem for
several weeks now. I have a suspicion on the solution and would like
some thoughts/validation.
I have built a kernel using the config file below. It is for our news
server. The machine has an IDE hard drive that I cannot diable the
drive on; it disables the controller if I try and I need the IDE drive.
In spite of that, I want to boot off the SCSI drive. Using some
relatively new bootblocks, I am able to allow the system to boot
normally by including an "hd1a:/netbsd" in the boot selector.
This works well with a 1.2G kernel compiled from last July. I have
recently tried to upgrade the system (to avoid the 'page fault in
supervisor mode' problem). Every kernel I've built since the middle of
September exhibits the same odd behavior.
- I copy the working kernel to /onetbsd
- I copy the new kernel to /netbsd
- I reboot.
- The system comes up normally, until it probes the IDE controller.
The system then spontaneously reboots. This cycle will repeat until I
tell it to boot from the onetbsd kernel.
I thought for a while that it might be a bad copy of some source code,
or an old source file, but all of the rest of the computers I've built
kernels for work fine. I'm working from one now.
I'm guessing that I need to install the new boot code. I'm retiscent to
do it without some planning, since I can't really afford for this
machine to be down for extended (several hour) periods.
Attachment 2 is the dmesg output from the existing (working) kernel.
Does anyone have any suggestions to offer?
ATCH 1 - config file.
# $NetBSD: GENERIC,v 1.83 1997/07/02 02:44:10 cjs Exp $
#
# NEON -- Specifically, the news server
#
include "arch/i386/conf/std.i386"
options I386_CPU # CPU classes; at least one is REQUIRED
options I486_CPU
options I586_CPU
options I686_CPU
options MATH_EMULATE # floating point emulation
#options VM86 # Virtual 8086 emulation
# Some BIOSes don't get the size of extended memory right. If you
# have a broken BIOS, uncomment the following and set the value
# properly for your system.
#options BIOSEXTMEM=... # size of extended memory
options DUMMY_NOPS # speed hack; recommended
options XSERVER,UCONSOLE
options INSECURE # insecure; allow /dev/mem writing for X
maxusers 32 # estimated number of users
options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
#options NTP # NTP phase/frequency locked loop
#
# If this machine crashes, I REALLY need to just reboot. Debugging
# would just slow down the reboot, so I disable it.
#
#options DDB # in-kernel debugger
#makeoptions DEBUG="-g" # compile full symbol table
#options DIAGNOSTIC # internal consistency checks
#options KTRACE # system call tracing, a la ktrace(1)
options SYSVMSG # System V-like message queues
options SYSVSEM # System V-like semaphores
options SYSVSHM # System V-like memory sharing
#options SHMMAXPGS=1024 # 1024 pages is the default
options COMPAT_NOMID # compatibility with 386BSD, BSDI, NetBSD 0.8,
options COMPAT_09 # NetBSD 0.9,
options COMPAT_10 # NetBSD 1.0,
options COMPAT_11 # NetBSD 1.1,
options COMPAT_12 # NetBSD 1.2,
options COMPAT_43 # and 4.3BSD
options TCP_COMPAT_42 # TCP bug compatibility with 4.2BSD
options NMBCLUSTERS=2048
#
# Nothing but NetBSD executables here.
#
#options COMPAT_SVR4 # binary compatibility with SVR4
#options COMPAT_IBCS2 # binary compatibility with SCO and ISC
#options COMPAT_LINUX # binary compatibility with Linux
#options COMPAT_FREEBSD # binary compatibility with FreeBSD
#options EXEC_ELF32 # 32-bit ELF executables (SVR4, Linux)
#options USER_LDT # user-settable LDT; used by WINE
options LKM # loadable kernel modules
#
# I wouldn't have the DOS file system if I didn't have customers with
# Windows floppies.
#
file-system FFS # UFS
#file-system EXT2FS # second extended file system (linux)
#file-system LFS # log-structured file system
#file-system MFS # memory file system
file-system NFS # Network File System client
file-system CD9660 # ISO 9660 + Rock Ridge file system
file-system MSDOSFS # MS-DOS file system
file-system FDESC # /dev/fd
file-system KERNFS # /kern
#file-system NULLFS # loopback file system
#file-system PORTAL # portal filesystem (still experimental)
file-system PROCFS # /proc
#file-system UMAPFS # NULLFS + uid and gid remapping
file-system UNION # union file system
options QUOTA # UFS quotas
options NFSSERVER # Network File System server
options FIFO # FIFOs; RECOMMENDED
#options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
# immutable) behave as system flags.
#
# Inet only - no other network protocols needed.
#
#options GATEWAY # packet forwarding
options INET # IP + ICMP + TCP + UDP
options MROUTING # IP multicast routing
#options NS # XNS
#options NSIP # XNS tunneling over IP
#options ISO,TPIP # OSI
#options EON # OSI tunneling over IP
#options CCITT,LLC,HDLC # X.25
options PFIL_HOOKS # pfil(9) packet filter hooks
config netbsd root on sd0a type ? dumps on sd0b
#options COMCONSOLE=0,CONADDR=0x3f8,CONUNIT=0,CONSPEED=9600
#
# This machine has a PCI bus - the IDE controller lives on it.
#
#options EISAVERBOSE # verbose EISA device messages
options PCIVERBOSE # verbose PCI device messages
mainbus0 at root
pci0 at mainbus0 bus ?
#eisa0 at mainbus0
ppb* at pci? dev ? function ? # PCI-PCI bridges
pci* at ppb? bus ?
pchb* at pci? dev ? function ? # PCI-Host bridges
pci* at pchb?
pcib* at pci? dev ? function ? # PCI-ISA bridges
isa* at pcib? # ISA on PCI-ISA bridge
isa* at mainbus0 # all other ISA
#apm0 at mainbus0 # Advanced power management
npx0 at isa? port 0xf0 # math coprocessor
#pc0 at isa? port 0x60 irq 1 # generic PC console device
vt0 at isa? port 0x60 irq 1
com0 at isa? port 0x3f8 irq 4 # standard PC serial ports
com1 at isa? port 0x2f8 irq 3
com2 at isa? port 0x3e8 irq 5
com3 at isa? port 0x2e8 irq 9
lpt0 at isa? port 0x378 # standard PC parallel ports
bha0 at isa? port 0x330 irq ? drq ? # BusLogic [57]4X SCSI controllers
bha1 at isa? port 0x334 irq ? drq ? # BusLogic [57]4X SCSI controllers
bha* at pci? dev ? function ?
scsibus* at bha?
sd* at scsibus? target ? lun ? # SCSI disk drives
st* at scsibus? target ? lun ? # SCSI tape drives
cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
ch* at scsibus? target ? lun ? # SCSI autochangers
ss* at scsibus? target ? lun ? # SCSI scanners
uk* at scsibus? target ? lun ? # SCSI unknown
fdc0 at isa? port 0x3f0 irq 6 drq 2 # standard PC floppy controllers
fd* at fdc? drive ?
wdc0 at isa? port 0x1f0 irq 14 # ST506, ESDI, and IDE controllers
wdc1 at isa? port 0x170 irq 15
wd* at wdc? drive ?
#atapibus* at wdc?
#acd* at atapibus? drive ?
ed0 at isa? port 0x280 iomem 0xd0000 irq 9 # WD/SMC, 3C503, and NE[12]000
ed1 at isa? port 0x250 iomem 0xd8000 irq 9 # ethernet cards
ed2 at isa? port 0x300 iomem 0xcc000 irq 10
sb0 at isa? port 0x220 irq 7 drq 1 # SoundBlaster
spkr0 at pckbd? port 0x61
include "arch/i386/conf/GENERIC.local"
pseudo-device loop 1 # network loopback
pseudo-device bpfilter 4 # packet filter
#pseudo-device sl 2 # CSLIP
#pseudo-device ppp 2 # PPP
#pseudo-device tun 2 # network tunneling over tty
#pseudo-device ipfilter # ip filter
pseudo-device pty 64 # pseudo-terminals
pseudo-device tb 1 # tablet line discipline
pseudo-device vnd 4 # paging to files
pseudo-device ccd 4 # concatenated disk devices
ATCH 2 - dmesg output from a working kernel
NetBSD 1.2G (NEON) #0: Tue Jul 15 22:50:25 CDT 1997
burgess@cynjut.neonramp.com:/usr/src/local/-current/src/sys/arch/i386/compile/NEON
cpu0: family 5 model 1 step 3
cpu0: Intel Pentium (586-class)
real mem = 41545728
avail mem = 37408768
using 532 buffers containing 2179072 bytes of memory
mainbus0 (root)
pci0 at mainbus0 bus 0: configuration mode 2
pchb0 at pci0 dev 0 function 0
pchb0: Intel 82434LX/NX (Mercury/Neptune) PCI, Cache, and DRAM Controller (rev. 0x01)
PC Technology RZ1000 (IDE mass storage, revision 0x01) at pci0 dev 1 function 0 not configured
pcib0 at pci0 dev 2 function 0
pcib0: Intel 82378IB PCI-ISA Bridge (System I/O) (rev. 0x00)
ILLEGITIMATE VENDOR ID product 0x0140 (SCSI mass storage) at pci0 dev 6 function 0 not configured
ATI Technologies Mach32 (VGA display, revision 0x01) at pci0 dev 14 function 0 not configured
isa0 at pcib0
bha0 at isa0 port 0x330-0x333 irq 11
bha0: model BT-946C, firmware 4.22
bha0: sync, parity
bha0 targ 0: sync, offset 15, period 100nsec
scsibus0 at bha0: 8 targets
sd0 at scsibus0 targ 0 lun 0: <SEAGATE, ST32430N, 0090> SCSI2 0/direct fixed
sd0: 2049MB, 3992 cyl, 9 head, 116 sec, 512 bytes/sec x 4197405 sectors
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
lpt0 at isa0 port 0x378-0x37b: polled
wdc0 at isa0 port 0x1f0-0x1f7 irq 14
wd0 at wdc0 drive 0: <WDC AC11000H>
wd0: 1007MB, 2046 cyl, 16 head, 63 sec, 512 bytes/sec
wd0: using 16-sector 16-bit pio transfers, lba addressing
ed0 at isa0 port 0x280-0x29f irq 9
ed0: address 00:40:33:29:e4:36, type NE2000 (16-bit)
npx0 at isa0 port 0xf0-0xff: using exception 16
WARNING: Pentium FDIV bug detected!
vt0 at isa0 port 0x60-0x6f irq 1
vt0: generic, 80 col, color, 8 scr, mf2-kbd, [R3.32]
spkr0 at vt0 port 0x61
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
fd0 at fdc0 drive 0: 1.44MB 80 cyl, 2 head, 18 sec
fd1 at fdc0 drive 1: 1.2MB 80 cyl, 2 head, 15 sec
biomask 4840 netmask 4a40 ttymask 4a42
boot device: sd0
root on sd0a dumps on sd0b
root file system type: ffs
mb_map full
--
Dave Burgess Network Engineer - Nebraska On-Ramp, Inc.
*bsd FAQ Maintainer / SysAdmin for the NetBSD system in my spare bedroom
"Just because something is stupid doesn't mean there isn't someone that
doesn't want to do it...."