Subject: port-i386/5975: panic: pool_get: must have NOWAIT
To: None <gnats-bugs@gnats.netbsd.org>
From: Dave Huang <khym@bga.com>
List: netbsd-bugs
Date: 08/15/1998 06:49:59
>Number:         5975
>Category:       port-i386
>Synopsis:       panic: pool_get: must have NOWAIT
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    gnats-admin (GNATS administrator)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Aug 15 05:05:01 1998
>Last-Modified:
>Originator:     Dave Huang
>Organization:
Name: Dave Huang     |   Mammal, mammal / their names are called /
INet: khym@bga.com   |   they raise a paw / the bat, the cat /
FurryMUCK: Dahan     |   dolphin and dog / koala bear and hog -- TMBG
Dahan: Hani G Y+C 22 Y++ L+++ W- C++ T++ A+ E+ S++ V++ F- Q+++ P+ B+ PA+ PL++
>Release:        NetBSD-current as of August 14, 1998
>Environment:
	
System: NetBSD dahan.metonymy.com 1.3G NetBSD 1.3G (SPIFF) #241: Sat Aug 15 05:43:25 CDT 1998 khym@dahan.metonymy.com:/usr/src.local/sys/arch/i386/compile/SPIFF i386

Pentium, 166MHz, 64MB RAM

NetBSD 1.3G (SPIFF) #241: Sat Aug 15 05:43:25 CDT 1998
    khym@dahan.metonymy.com:/usr/src.local/sys/arch/i386/compile/SPIFF
cpu0: family 5 model 2 step c
cpu0: Intel Pentium (P54C) (586-class)
real mem  = 66715648
avail mem = 60133376
using 840 buffers containing 3440640 bytes of memory
mainbus0 (root)
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o enabled, memory enabled
pchb0 at pci0 dev 0 function 0
pchb0: Intel 82439HX System Controller (TXC) (rev. 0x03)
pcib0 at pci0 dev 7 function 0
pcib0: Intel 82371SB PCI-to-ISA Bridge (PIIX3) (rev. 0x01)
pciide0 at pci0 dev 7 function 1: Intel 82371SB IDE Interface (PIIX3) (rev. 0x00)
pciide0: device disabled (at device)
ncr0 at pci0 dev 9 function 0: ncr 53c875 fast20 wide scsi
ncr0: interrupting at irq 9
ncr0: minsync=12, maxsync=137, maxoffs=16, 128 dwords burst, large dma fifo
ncr0: single-ended, open drain IRQ driver, using on-chip SRAM
ncr0: restart (scsi reset).
scsibus0 at ncr0: 16 targets
sd0 at scsibus0 targ 0 lun 0: <Quantum, VP32210, L915> SCSI2 0/direct fixed
sd0(ncr0:0:0): 10.0 MB/s (100 ns, offset 15)
sd0: 2103MB, 4243 cyl, 8 head, 126 sec, 512 bytes/sect x 4308352 sectors
sd1 at scsibus0 targ 1 lun 0: <QUANTUM, VIKING 4.5 SCA, 880R> SCSI2 0/direct fixed
sd1(ncr0:1:0): WIDE SCSI (16 bit) enabled
sd1(ncr0:1:0): 40.0 MB/s (50 ns, offset 16)
sd1: 4345MB, 6144 cyl, 8 head, 181 sec, 512 bytes/sect x 8899737 sectors
cd0 at scsibus0 targ 2 lun 0: <TOSHIBA, CD-ROM XM-5301TA, 1895> SCSI2 5/cdrom removable
probe(ncr0:2:1): 4.0 MB/s (250 ns, offset 16)
sd2 at scsibus0 targ 3 lun 0: <QUANTUM, VIKING 4.5 SCA, 880R> SCSI2 0/direct fixed
sd2(ncr0:3:0): WIDE SCSI (16 bit) enabled
sd2(ncr0:3:0): 40.0 MB/s (50 ns, offset 16)
sd2: 4345MB, 6144 cyl, 8 head, 181 sec, 512 bytes/sect x 8899737 sectors
ep0 at pci0 dev 10 function 0: 3Com 3c595-TX Ethernet
ep0: interrupting at irq 10
ep0: address 00:a0:24:01:de:fa, 64KB word-wide FIFO, 3:1 Rx:Tx split
ep0: 10baseT, 100baseTX (default 100baseTX)
vga0 at pci0 dev 12 function 0: Matrox MGA Millennium 2064W ("Storm") (rev. 0x01)
wsdisplay0 at vga0: console (80x25, vt100 emulation)
isa0 at pcib0
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
sb0 at isa0 port 0x220-0x237 irq 5 drq 1 drq2 5: dsp v4.13
audio0 at sb0
midi0 at sb0: <SB MIDI UART>
pckbc0 at isa0 port 0x60-0x64
pckbd0 at pckbc0 (kbd slot)
wskbd0 at pckbd0: console keyboard
pms0 at pckbc0 (aux slot)
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
sysbeep0 at pcppi0
npx0 at isa0 port 0xf0-0xff: using exception 16
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
joy0 at isa0 port 0x201
joy0: joystick not connected
apm0 at mainbus0: Power Management spec V1.1
apm0: A/C state: on
apm0: battery charge state: no battery
biomask 240 netmask 640 ttymask 1642
wscons: wskbd0 glued to wsdisplay0 (console)
disklabel: BIOS sees chs 4243/8/126 as 1020/67/63
disklabel: BIOS sees chs 6144/8/181 as 1023/138/63
disklabel: BIOS sees chs 6144/8/181 as 1023/138/63
boot device: sd0
root on sd0a dumps on sd0b
disklabel: BIOS sees chs 4243/8/126 as 1020/67/63
disklabel: BIOS sees chs 4243/8/126 as 1020/67/63

# SPIFF kernel config
# P166 64MB dev machine

include "arch/i386/conf/std.i386"

maxusers	32		# estimated number of users

options 	I586_CPU

# CPU-related options.
options 	VM86		# virtual 8086 emulation
options 	USER_LDT	# user-settable LDT; used by WINE
# eliminate delay no-ops in I/O; recommended on all but very old machines
options 	DUMMY_NOPS

# Misc. i386-specific options
options 	XSERVER		# X server support in console drivers

# Standard system options

options 	UCONSOLE	# users can use TIOCCONS (for xconsole)
options 	INSECURE	# disable kernel security levels

options		RTC_OFFSET=300	# hardware clock is this many mins. west of GMT
#options 	NTP		# NTP phase/frequency locked loop

options 	KTRACE		# system call tracing via ktrace(1)

options 	UVM
options 	PMAP_NEW

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 	LKM		# loadable kernel modules

# Diagnostic/debugging support options
options 	DIAGNOSTIC	# cheap kernel consistency checks
#options 	DEBUG		# expensive debugging checks/support
#options 	KMEMSTATS	# kernel memory statistics (vmstat -m)
options 	DDB		# in-kernel debugger
#options 	KGDB		# remote debugger
#options 	"KGDB_DEVNAME=\"com\"",KGDBADDR=0x3f8,KGDBRATE=9600
makeoptions	DEBUG="-g"	# compile full symbol table
makeoptions	COPTS="-O2 -march=pentium"

# Compatibility options
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_13	# NetBSD 1.3,
options 	COMPAT_43	# and 4.3BSD

options 	COMPAT_LINUX	# binary compatibility with Linux
options 	COMPAT_FREEBSD	# binary compatibility with FreeBSD

# Executable format options
options 	EXEC_ELF32	# 32-bit ELF executables (SVR4, Linux)

# File systems
file-system 	FFS		# UFS
#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 	PROCFS		# /proc
file-system 	UNION		# union file system

# File system options
options		NFSSERVER	# Network File System server
options 	FIFO		# FIFOs; RECOMMENDED

# Networking options
options 	GATEWAY		# packet forwarding
options 	INET		# IP + ICMP + TCP + UDP
options 	NETATALK	# AppleTalk networking protocols
options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
options 	PPP_DEFLATE	# Deflate compression support for PPP

# These options enable verbose messages for several subsystems.
# Warning, these may compile large string tables into the kernel!
options 	PCIVERBOSE	# verbose PCI device autoconfig messages
options 	SCSIVERBOSE	# human readable SCSI error messages

config		netbsd root on sd0a type ffs dumps on sd0b

#
# Device configuration
#

mainbus0 at root

apm0	at mainbus0			# Advanced power management


# Basic Bus Support

# PCI bus support
pci*	at mainbus? bus ?
pci*	at pchb? bus ?

# PCI bridges
pchb*	at pci? dev ? function ?	# PCI-Host bridges
pcib*	at pci? dev ? function ?	# PCI-ISA bridges

# ISA bus support
isa*	at mainbus?
isa*	at pcib?


# Coprocessor Support

# Math Coprocessor support
npx0	at isa? port 0xf0 irq 13	# x86 math coprocessor

# Console Devices

# ISA console.  You can only configure one of these!
#pc0	at isa? port 0x60 irq 1		# pccons generic PC console driver
#vt0	at isa? port 0x60 irq 1		# PCVT console driver

# wscons
pckbc0	at isa?			# pc keyboard controller
pckbd*	at pckbc?		# PC keyboard
# "pms" should not be enabled together with "psm" or "psmi"
#psm*		at pckbc?		# PS/2 mouse for wsmouse
#psmi*		at pckbc?	# PS/2 "Intelli"mouse for wsmouse
pms*		at pckbc?		# backwards compatible PS/2 mouse
vga*		at pci?
wsdisplay*	at vga? console ?
wskbd*	at pckbd? console ?
#wsmouse*	at psm?
#wsmouse*	at psmi?
# wscons options
options 	WSEMUL_VT100		# VT100 / VT220 emulation
# different kernel output - see dev/wscons/wsdisplayvar.h
options 	WS_KERNEL_FG=WSCOL_GREEN
options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
options 	WSDISPLAY_COMPAT_USL		# VT handling
options 	WSDISPLAY_COMPAT_RAWKBD	# can get raw scancodes

# Serial Devices

# ISA serial interfaces
options 	COM16650		# Support for 16650 UARTs
com0	at isa? port 0x3f8 irq 4	# Standard PC serial ports
com1	at isa? port 0x2f8 irq 3
#com2	at isa? port 0x3e8 irq 7
#com3	at isa? port 0x2e8 irq 9

# Parallel Printer Interfaces

# ISA parallel printer interfaces
#lpt0	at isa? port 0x378 irq 7	# standard PC parallel ports

# SCSI Controllers and Devices

# PCI SCSI controllers
#options 	SCSI_DELAY=10
options 	SCSI_NCR_DFLT_TAGS=8
options 	SCSI_NCR_SYMBIOS_COMPAT
ncr*	at pci? dev ? function ?	# NCR 538XX SCSI controllers

# SCSI bus support
scsibus* at ncr?

# SCSI devices
sd0	at scsibus? target 0 lun 0
sd1	at scsibus? target 1 lun 0
sd*	at scsibus? target ? lun ?	# SCSI disk drives
st*	at scsibus? target ? lun ?	# SCSI tape drives
ch*	at scsibus? target ? lun ?	# SCSI autochangers
cd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
uk*	at scsibus? target ? lun ?	# SCSI unknown

# IDE and Related Devices

# ISA IDE controllers
#wdc0	at isa? port 0x1f0 irq 14	# ST506, ESDI, and IDE controllers
#wdc1	at isa? port 0x170 irq 15

# PCI IDE controllers
pciide*	at pci? dev ? function ?
wdc*	at pciide? channel ?

# IDE drives
wd*	at wdc? drive ?			# the drives themselves

# ATAPI bus support
#atapibus* at wdc?

# ATAPI devices
#cd*	at atapibus? drive ?		# ATAPI CD-ROM drives

# Miscellaneous mass storage devices

# ISA floppy
fdc0	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
fd*	at fdc? drive ?

# Network Interfaces

# PCI network interfaces
ep*	at pci? dev ? function ?	# 3Com 3c59x/3c90x Ethernet

# Audio Devices
sb0	at isa? port 0x220 irq 5 drq 1 drq2 5	# SoundBlaster

# Audio support
audio*	at sb?

# MIDI support
midi*	at sb?

# The spkr driver provides a simple tone interface to the built in speaker.
pcppi0	at isa?
sysbeep0 at pcppi?
spkr0	at pcppi?			# PC speaker

# Mice

# ISA busmice
#pms0	at pckbcport? irq 12		# PS/2 auxiliary port mouse

# Joysticks

# ISA joysticks. Probe is a little strange; add only if you have one.
joy0	at isa? port 0x201

# Pseudo-Devices

# disk/mass storage pseudo-devices
pseudo-device	ccd		2	# concatenated/striped disk devices
pseudo-device	vnd		4	# disk-like interface to files

# network pseudo-devices
pseudo-device	bpfilter	16	# Berkeley packet filter
#pseudo-device	ipfilter		# IP filter (firewall) and NAT
pseudo-device	loop			# network loopback
pseudo-device	ppp		2	# Point-to-Point Protocol
pseudo-device	sl		2	# Serial Line IP
#pseudo-device	tun		2	# network tunneling over tty

# miscellaneous pseudo-devices
pseudo-device	pty	32		# pseudo-terminals
pseudo-device	sequencer	1	# MIDI sequencer

# rnd is EXPERIMENTAL at this point.
pseudo-device	rnd			# /dev/random and in-kernel generator
#options 	RND_COM			# use "com" randomness as well (BROKEN)

>Description:
	Recent kernels seem to have trouble with vnd devices. I tried
to make an install floppy, and the kernel panic'ed after the "SPECIAL
pwd_mkdb ..." line. It's very repeatable for me... I was doing the
make from a union filesystem, if it matters.

(gdb) targe kcore /var/crash/netbsd.50.core
panic: pool_get: must have NOWAIT
#0  0x2 in ?? ()
(gdb) where
#0  0x2 in ?? ()
#1  0xf01cba2c in cpu_reboot (howto=260, bootstr=0x0)
    at ../../../../arch/i386/i386/machdep.c:1316
#2  0xf012960a in panic (fmt=0xf0128cc9 "pool_get: must have NOWAIT")
    at ../../../../kern/subr_prf.c:190
#3  0xf0128db3 in pool_get (pp=0xf046710c, flags=2)
    at ../../../../kern/subr_pool.c:506
#4  0xf0115692 in vndstrategy (bp=0xf0de5da8) at ../../../../dev/vnd.c:380
#5  0xf014b47f in spec_strategy (v=0xf496e934)
    at ../../../../miscfs/specfs/spec_vnops.c:489
#6  0xf01b5e16 in ufs_strategy (v=0xf496e934)
    at ../../../../ufs/ufs/ufs_vnops.c:1663
#7  0xf013b751 in bwrite (bp=0xf0de5da8) at ../../../../sys/vnode_if.h:1062
#8  0xf013b787 in vn_bwrite (v=0xf496e954) at ../../../../kern/vfs_bio.c:358
#9  0xf013b878 in bawrite (bp=0xf0de5da8) at ../../../../sys/vnode_if.h:1077
#10 0xf013f6f2 in vflushbuf (vp=0xf0476800, sync=0)
    at ../../../../kern/vfs_subr.c:601
#11 0xf0147a6b in genfs_fsync (v=0xf496e9cc)
    at ../../../../miscfs/genfs/genfs_vnops.c:86
#12 0xf01b0a6f in ffs_sync (mp=0xf052e200, waitfor=2, cred=0xf045fe80, 
    p=0xf02463f0) at ../../../../sys/vnode_if.h:418
#13 0xf0141afd in sys_sync (p=0xf02463f0, v=0x0, retval=0x0)
    at ../../../../kern/vfs_syscalls.c:509
---Type <return> to continue, or q <return> to quit---
#14 0xf0140e5a in vfs_shutdown () at ../../../../kern/vfs_subr.c:2007
#15 0xf01cba04 in cpu_reboot (howto=256, bootstr=0x0)
    at ../../../../arch/i386/i386/machdep.c:1303
#16 0xf012960a in panic (fmt=0xf0128cc9 "pool_get: must have NOWAIT")
    at ../../../../kern/subr_prf.c:190
#17 0xf0128db3 in pool_get (pp=0xf04628a0, flags=2)
    at ../../../../kern/subr_pool.c:506
#18 0xf0111abf in ccdbuffer (cs=0xf0462800, bp=0xf05863c0, bn=1715512, 
    addr=0xf3538000 " !\001", bcount=4096, cbpp=0xf496eb18)
    at ../../../../dev/ccd.c:802
#19 0xf01118cf in ccdstart (cs=0xf0462800, bp=0xf05863c0)
    at ../../../../dev/ccd.c:701
#20 0xf0111815 in ccdstrategy (bp=0xf05863c0) at ../../../../dev/ccd.c:661
#21 0xf014b47f in spec_strategy (v=0xf496eb64)
    at ../../../../miscfs/specfs/spec_vnops.c:489
#22 0xf01159ff in vndstart (vnd=0xf0467000) at ../../../../sys/vnode_if.h:1062
#23 0xf0115b42 in vndiodone (bp=0xf0586000) at ../../../../dev/vnd.c:622
#24 0xf013c0c1 in biodone (bp=0xf0586000) at ../../../../kern/vfs_bio.c:853
#25 0xf0111c76 in ccdintr (cs=0xf0462800, bp=0xf0586000)
    at ../../../../dev/ccd.c:866
#26 0xf0111da5 in ccdiodone (vbp=0xf057a3a0) at ../../../../dev/ccd.c:930
#27 0xf013c0c1 in biodone (bp=0xf057a3a0) at ../../../../kern/vfs_bio.c:853
#28 0xf01d3fc7 in scsipi_done (xs=0xf04370d8)
---Type <return> to continue, or q <return> to quit---
    at ../../../../dev/scsipi/scsipi_base.c:365
#29 0xf01e86d0 in ncr_complete (np=0xf0433000, cp=0xf046d800)
    at ../../../../dev/pci/ncr.c:5068
#30 0xf01e8721 in ncr_wakeup (np=0xf0433000, code=0)
    at ../../../../dev/pci/ncr.c:5110
#31 0xf01e997f in ncr_exception (np=0xf0433000)
    at ../../../../dev/pci/ncr.c:5893
#32 0xf01e77a2 in ncr_intr (vnp=0xf0433000) at ../../../../dev/pci/ncr.c:4248

>How-To-Repeat:
	Attempt to build an i386 boot floppy.
>Fix:
	Unknown.
>Audit-Trail:
>Unformatted: