Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 12 Mar 2000 11:06:41 -0300 (ART)
From:      fpscha@schapachnik.com.ar
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   kern/17339: 3.4-R on a K6-2: panic: pmap_release: freeing held page table page
Message-ID:  <200003121406.LAA00508@localhost.schapachnik.com.ar>

next in thread | raw e-mail | index | archive | help

>Number:         17339
>Category:       kern
>Synopsis:       3.4-R on a K6-2: panic: pmap_release: freeing held page table page
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Mar 12 06:20:01 PST 2000
>Closed-Date:
>Last-Modified:
>Originator:     Fernando P. Schapachnik
>Release:        FreeBSD 3.4-RELEASE i386
>Organization:
>Environment:

	AMD K6-2 400 Mhz, 64 Mb RAM.
	Windows works fine (as it can possible works).
	Working fine with 2.2.6 for a year.
	Upgraded to 3.4-RELEASE (CD-ROM).

>Description:

	The kernel panics. The message is:
	
	panic: pmap_release: freeing held page table page

	It happens with:
	-GENERIC kernel.
	-My custom kernel with or without: CPU_WT_ALLOC and suggested patch
for bug 16568 to pmap.c.

	As a side note, several programs (sendmail, lpr, sh, calendar, etc.)
randomly die with signal 10.

	gdb shows:
	
[101]Recabarren:/var/crash>uname -a
FreeBSD Recabarren 3.4-RELEASE FreeBSD 3.4-RELEASE #3: Thu Mar  9 16:27:43 ART 2000     root@Recabarren:/usr/src/sys/compile/MIKERNEL  i386
[102]Recabarren:/var/crash>gdb -k
GNU gdb 4.18
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-unknown-freebsd".
(kgdb) symbol-file kernel.debug
Reading symbols from kernel.debug...done.
(kgdb) exec-file kernel.2
(kgdb) core-file vmcore.2
IdlePTD 3543040
initial pcb at 2e005c
panicstr: pmap_release: freeing held page table page
panic messages:
---
panic: pmap_release: freeing held page table page

syncing disks... 54 53 44 23 8 done

dumping to dev 20011, offset 892928
dump 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 
---
#0  boot (howto=256) at ../../kern/kern_shutdown.c:285
285			dumppcb.pcb_cr3 = rcr3();
(kgdb) where
#0  boot (howto=256) at ../../kern/kern_shutdown.c:285
#1  0xc01653c8 in at_shutdown (
    function=0xc02b6830 <__set_sysinit_set_sym_memdev_sys_init+212>, 
    arg=0xc04e6760, queue=-1000713124) at ../../kern/kern_shutdown.c:446
#2  0xc0262a66 in pmap_release_free_page (pmap=0xc44fac24, p=0xc04e6760)
    at ../../i386/i386/pmap.c:1221
#3  0xc0262c39 in pmap_release (pmap=0xc44fac24) at ../../i386/i386/pmap.c:1404
#4  0xc023c352 in vmspace_free (vm=0xc44fabc0) at ../../vm/vm_map.c:241
#5  0xc0269ce1 in cpu_wait (p=0xc44f5fa0) at ../../i386/i386/vm_machdep.c:261
#6  0xc015fa51 in wait1 (q=0xc44f5b80, uap=0xc45f0f94, compat=0)
    at ../../kern/kern_exit.c:517
#7  0xc015f804 in wait4 (p=0xc44f5b80, uap=0xc45f0f94)
    at ../../kern/kern_exit.c:399
#8  0xc0266593 in syscall (frame={tf_es = 39, tf_ds = 39, tf_edi = 134828288, 
      tf_esi = 257, tf_ebp = -1077945504, tf_isp = -1000402972, 
      tf_ebx = 134828288, tf_edx = -1077945256, tf_ecx = -1077945268, 
      tf_eax = 7, tf_trapno = 7, tf_err = 2, tf_eip = 134614780, tf_cs = 31, 
      tf_eflags = 514, tf_esp = -1077945524, tf_ss = 39})
    at ../../i386/i386/trap.c:1100
#9  0xc02592cc in Xint0x80_syscall ()
#10 0x8057d93 in ?? ()
#11 0xbfbfdfcc in ?? ()
#12 0x805825b in ?? ()
#13 0x80581c1 in ?? ()
#14 0x805a16e in ?? ()
#15 0x805a38d in ?? ()
#16 0x8049bf8 in ?? ()
#17 0x8049021 in ?? ()
#18 0x80480e9 in ?? ()
[101]Recabarren:/var/crash>dmesg
Copyright (c) 1992-1999 FreeBSD Inc.
Copyright (c) 1982, 1986, 1989, 1991, 1993
	The Regents of the University of California. All rights reserved.
FreeBSD 3.4-RELEASE #3: Thu Mar  9 16:27:43 ART 2000
    root@Recabarren:/usr/src/sys/compile/MIKERNEL
Timecounter "i8254"  frequency 1193182 Hz
CPU: AMD-K6(tm) 3D processor (400.91-MHz 586-class CPU)
  Origin = "AuthenticAMD"  Id = 0x58c  Stepping = 12
  Features=0x8021bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,PGE,MMX>
  AMD Features=0x80000800<SYSCALL,3DNow!>
real memory  = 67108864 (65536K bytes)
config> di psm0
config> di zp0
config> di ze0
config> di ed0
config> di bt0
config> di aic0
config> di aha0
config> di adv0
config> di pcm0
config> pnp 1 0 os enable port0 0x220 port1 0x530 port2 0x388 port3 0x370 irq0 5
config> pnp 1 0 drq0 1 drq1 3
config> q
avail memory = 61804544 (60356K bytes)
Preloaded elf kernel "kernel" at 0xc034f000.
Preloaded userconfig_script "/boot/kernel.conf" at 0xc034f09c.
Probing for devices on PCI bus 0:
chip0: <VIA 82C597 (Apollo VP3) system controller> rev 0x04 on pci0.0.0
chip1: <VIA 82C598MVP (Apollo MVP3) PCI-PCI bridge> rev 0x00 on pci0.1.0
chip2: <VIA 82C586 PCI-ISA bridge> rev 0x47 on pci0.7.0
ide_pci0: <VIA 82C586x (Apollo) Bus-master IDE controller> rev 0x06 on pci0.7.1
chip3: <VIA 82C586B ACPI interface> rev 0x10 on pci0.7.3
vga0: <Trident model 9440 VGA-compatible display device> rev 0xe3 int a irq 255 on pci0.8.0
ed1: <NE2000 PCI Ethernet (ProLAN)> rev 0x00 int a irq 10 on pci0.10.0
ed1: address 48:54:e8:2a:92:7f, type NE2000 (16 bit) 
Probing for devices on PCI bus 1:
Probing for PnP devices:
CSN 1 Vendor ID: YMH0800 [0x0008a865] Serial 0xffffffff Comp ID: PNPb02f [0x2fb0d041]
mss_attach <Yamaha YMF719 OPL-SA3>1 at 0x530 irq 5 dma 1:3 flags 0x13
setting up yamaha registers
set yamaha master volume to max
pcm1 (CS423x/Yamaha/AD1816 <Yamaha YMF719 OPL-SA3> sn 0xffffffff) at 0x530-0x537 irq 5 drq 1 flags 0x13 on isa
Probing for devices on the ISA bus:
sc0 on isa
sc0: VGA color <16 virtual consoles, flags=0x0>
atkbdc0 at 0x60-0x6f on motherboard
atkbd0 irq 1 on isa
sio0 at 0x3f8-0x3ff irq 4 flags 0x10 on isa
sio0: type 16550A
sio1 at 0x2f8-0x2ff irq 3 on isa
sio1: type 16550A
fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa
fdc0: FIFO enabled, 8 bytes threshold
fd0: 1.44MB 3.5in
wdc0 at 0x1f0-0x1f7 irq 14 on isa
wdc0: unit 0 (wd0): <QUANTUM FIREBALL SE2.1A>
wd0: 2014MB (4124736 sectors), 4092 cyls, 16 heads, 63 S/T, 512 B/S
wdc0: unit 1 (wd1): <QUANTUM BIGFOOT1280A>
wd1: 1226MB (2511936 sectors), 2492 cyls, 16 heads, 63 S/T, 512 B/S
wdc1 at 0x170-0x177 irq 15 on isa
wdc1: unit 0 (wd2): <QUANTUM FIREBALL_TM1700A>
wd2: 1628MB (3335472 sectors), 3309 cyls, 16 heads, 63 S/T, 512 B/S
ppc0 at 0x378 irq 7 flags 0x40 on isa
ppc0: Generic chipset (EPP/NIBBLE) in COMPATIBLE mode
ppb0: IEEE1284 device found /NIBBLE/PS2/ECP/ECP_RLE
Probing for PnP devices on ppbus0:
ppbus0: <XEROX 4508> PRINTER PCL5E
lpt0: <generic printer> on ppbus 0
lpt0: Interrupt-driven port
ppi0: <generic parallel i/o> on ppbus 0
plip0: <PLIP network interface> on ppbus 0
vga0 at 0x3b0-0x3df maddr 0xa0000 msize 131072 on isa
npx0 on motherboard
npx0: INT 16 interface
apm0 flags 0x31 on isa
apm: found APM BIOS version 1.2
IP packet filtering initialized, divert enabled, rule-based forwarding disabled, default to accept, logging limited to 100 packets/entry by default
changing root device to wd1s2a
WARNING: / was not properly dismounted
pid 644 (sendmail), uid 0: exited on signal 10


machine		"i386"
cpu		"I586_CPU"
cpu		"I686_CPU"
ident		MIKERNEL
maxusers	32

options 	MATH_EMULATE		#Support for x87 emulation
options 	INET			#InterNETworking
options 	FFS			#Berkeley Fast Filesystem
options 	FFS_ROOT		#FFS usable as root device [keep this!]
options 	MFS			#Memory Filesystem
options 	MFS_ROOT		#MFS usable as root device, "MFS" req'ed
options 	NFS			#Network Filesystem
options 	NFS_ROOT		#NFS usable as root device, "NFS" req'ed
options 	MSDOSFS			#MSDOS Filesystem
options 	"CD9660"		#ISO 9660 Filesystem
options 	"CD9660_ROOT"		#CD-ROM usable as root. "CD9660" req'ed
options 	PROCFS			#Process filesystem
options 	"COMPAT_43"		#Compatible with BSD 4.3 [KEEP THIS!]
options 	SCSI_DELAY=15000	#Be pessimistic about Joe SCSI device
options 	UCONSOLE		#Allow users to grab the console
options 	FAILSAFE		#Be conservative
options 	USERCONFIG		#boot -c editor
options 	VISUAL_USERCONFIG	#visual boot -c editor
options 	KTRACE			#ktrace(1) syscall trace support
options 	SYSVSHM			#SYSV-style shared memory
options 	SYSVMSG			#SYSV-style message queues
options 	SYSVSEM			#SYSV-style semaphores

config		kernel	root on wd0

# To make an SMP kernel, the next two are needed
#options 	SMP			# Symmetric MultiProcessor Kernel
#options 	APIC_IO			# Symmetric (APIC) I/O
# Optionally these may need tweaked, (defaults shown):
#options 	NCPU=2			# number of CPUs
#options 	NBUS=4			# number of busses
#options 	NAPIC=1			# number of IO APICs
#options 	NINTR=24		# number of INTs

controller	isa0
controller	pnp0			# PnP support for ISA
controller	eisa0
controller	pci0

# Floppy drives
controller	fdc0	at isa? port "IO_FD1" bio irq 6 drq 2
disk		fd0	at fdc0 drive 0
disk		fd1	at fdc0 drive 1

# IDE controller and disks
options		"CMD640"	# work around CMD640 chip deficiency
controller	wdc0	at isa? port "IO_WD1" bio irq 14
disk		wd0	at wdc0 drive 0
disk		wd1	at wdc0 drive 1

controller	wdc1	at isa? port "IO_WD2" bio irq 15
disk		wd2	at wdc1 drive 0
disk		wd3	at wdc1 drive 1

# ATAPI devices
options		ATAPI		#Enable ATAPI support for IDE bus
options		ATAPI_STATIC	#Don't do it as an LKM
device		acd0		#IDE CD-ROM
device		wfd0		#IDE Floppy (e.g. LS-120)

# SCSI Controllers
# A single entry for any of these controllers (ncr, ahb, ahc) is
# sufficient for any number of installed devices.
controller	ncr0		# NCR/Symbios Logic
controller	ahb0		# EISA AHA1742 family
controller	ahc0		# AHA2940 and onboard AIC7xxx devices
controller	amd0		# AMD 53C974 (Teckram DC-390(T))
controller	isp0		# Qlogic family
controller	dpt0		# DPT Smartcache - See LINT for options!

controller	adv0	at isa? port ? cam irq ?
controller	adw0
controller	bt0	at isa? port ? cam irq ?
controller	aha0	at isa? port ? cam irq ?
controller	aic0	at isa? port ? cam irq ?

# SCSI peripherals
# Only one of each of these is needed, they are dynamically allocated.
controller	scbus0		# SCSI bus (required)
device		da0		# Direct Access (disks)
device		sa0		# Sequential Access (tape etc)
device		cd0		# CD
device		pass0		# Passthrough device (direct SCSI)

# Proprietary or custom CD-ROM Interfaces
#device		wt0	at isa? port 0x300 bio irq 5 drq 1
#device		mcd0	at isa? port 0x300 bio irq 10
#device		matcd0	at isa? port 0x230 bio
#device		scd0	at isa? port 0x230 bio

# atkbdc0 controls both the keyboard and the PS/2 mouse
controller	atkbdc0	at isa? port IO_KBD tty
device		atkbd0	at isa? tty irq 1
device		psm0	at isa? tty irq 12

device		vga0	at isa? port ? conflicts

# splash screen/screen saver
pseudo-device	splash

# syscons is the default console driver, resembling an SCO console
device		sc0	at isa? tty

# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
#device		vt0	at isa? tty
#options 	XSERVER			# support for X server
#options 	FAT_CURSOR		# start with block cursor
# If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines
#options 	PCVT_SCANSET=2		# IBM keyboards are non-std

# Floating point support - do not disable.
device		npx0	at isa? port IO_NPX irq 13

# Power management support (see LINT for more options)
device		apm0    at isa?	flags 0x31 # Advanced Power Management

# PCCARD (PCMCIA) support
#controller	card0
#device		pcic0	at card?
#device		pcic1	at card?

# Serial (COM) ports
device		sio0	at isa? port "IO_COM1" flags 0x10 tty irq 4
device		sio1	at isa? port "IO_COM2" tty irq 3
device		sio2	at isa? disable port "IO_COM3" tty irq 5
device		sio3	at isa? disable port "IO_COM4" tty irq 9

# Parallel port
device		ppc0	at isa? port? flags 0x40 net irq 7
controller	ppbus0			# Parallel port bus (required)
device		lpt0	at ppbus?	# Printer
device		plip0	at ppbus?	# TCP/IP over parallel
device		ppi0	at ppbus?	# Parallel port interface device
#controller	vpo0	at ppbus?	# Requires scbus and da0

# PCI Ethernet NICs.
device		al0		# ADMtek AL981 (``Comet'')
device		ax0		# ASIX AX88140A
device		de0		# DEC/Intel DC21x4x (``Tulip'')
device		fxp0		# Intel EtherExpress PRO/100B (82557, 82558)
device		mx0		# Macronix 98713/98715/98725 (``PMAC'')
device		pn0		# Lite-On 82c168/82c169 (``PNIC'')
device		rl0		# RealTek 8129/8139
device		sf0		# Adaptec AIC-6915 DuraLAN (``Starfire'')
device		sis0		# Silicon Integrated Systems SiS 900/SiS 7016
device		ste0		# Sundance ST201 (D-Link DFE-550)
device		tl0		# Texas Instruments ThunderLAN
device		tx0		# SMC 9432TX (83c170 ``EPIC'')
device		vr0		# VIA Rhine, Rhine II
device		vx0		# 3Com 3c590, 3c595 (``Vortex'')
device		wb0		# Winbond W89C840F
device		xl0		# 3Com 3c90x (``Boomerang'', ``Cyclone'')

# ISA Ethernet NICs.
# Order is important here due to intrusive probes, do *not* alphabetize
# this list of network interfaces until the probes have been fixed.
# Right now it appears that the ie0 must be probed before ep0. See
# revision 1.20 of this file.
device		ed0	at isa? disable port 0x280 net irq 10 iomem 0xd8000
#device		ie0	at isa? port 0x300 net irq 10 iomem 0xd0000
#device		ep0	at isa? port 0x300 net irq 10
#device		ex0	at isa? port? net irq?
#device		fe0	at isa? port 0x300 net irq ?
#device		le0	at isa? port 0x300 net irq 5 iomem 0xd0000
#device		lnc0	at isa? port 0x280 net irq 10 drq 0
#device		cs0	at isa? port 0x300 net irq ?
# requires PCCARD (PCMCIA) support to be activated
#device		xe0	at isa? port? net irq ?

# PCCARD NIC drivers.
# ze and zp take over the pcic and cannot coexist with generic pccard
# support, nor the ed and ep drivers they replace.
device		ze0	at isa? port 0x300 net irq 10 iomem 0xd8000
device		zp0	at isa? port 0x300 net irq 10 iomem 0xd8000

# Pseudo devices - the number indicates how many units to allocated.
pseudo-device	loop		# Network loopback
pseudo-device	ether		# Ethernet support
pseudo-device	sl	1	# Kernel SLIP
pseudo-device	ppp	1	# Kernel PPP
pseudo-device	tun	1	# Packet tunnel
pseudo-device	pty	16	# Pseudo-ttys (telnet etc)
pseudo-device	gzip		# Exec gzipped a.out's

# The `bpfilter' pseudo-device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
# The number of devices determines the maximum number of
# simultaneous BPF clients programs runnable.
pseudo-device	bpfilter 1	#Berkeley packet filter

# Agregados míos.
device pcm0 at isa? port ? tty irq 10 drq 1 flags 0x0
options		USER_LDT		#allow user-level control of i386 ldt
options		QUOTA			#enable disk quotas
options		SHMALL=2050
options		SHMMAXPGS=2050
pseudo-device	vn 1		#Vnode driver (turns a file into a device)

# Para NATd.
options         IPFIREWALL              #firewall
options         IPFIREWALL_VERBOSE      #print information about
					# dropped packets
options		"IPFIREWALL_VERBOSE_LIMIT=100" #limit verbosity
options		IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default
options		IPDIVERT		#divert sockets

# Protección.
options 	TCP_DROP_SYNFIN		#drop TCP packets with SYN+FIN
options 	TCP_RESTRICT_RST	#restrict emission of TCP RST
options         "ICMP_BANDLIM"


>How-To-Repeat:

	Don't know. Sometimes the kernel panics when the machine just booted
and sometimes it can take hours. Anyway it happens several times a day.

	The machine is a desktop, so the problem does not seems to be due to
load.

>Fix:
	
	Don't know.	


>Release-Note:
>Audit-Trail:
>Unformatted:


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200003121406.LAA00508>