Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 18 Sep 1999 20:59:21 +0100 (BST)
From:      Adrian Wontroba <aw1@stade.co.uk>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   kern/13810: 3.3 panic rlist_free: free start overlaps already freed area
Message-ID:  <199909181959.UAA07953@titus.stade.co.uk>

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

>Number:         13810
>Category:       kern
>Synopsis:       3.3 panic rlist_free: free start overlaps already freed area
>Confidential:   yes
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat Sep 18 16:20:01 PDT 1999
>Closed-Date:
>Last-Modified:
>Originator:     Adrian Wontroba
>Release:        FreeBSD 3.3-STABLE i386
>Organization:
Yes, some would be nice!
>Environment:

	3.3-STABLE, cvsupped at 14:12 BST on 18 September

	FreeBSD titus.stade.co.uk
	3.3-STABLE FreeBSD 3.3-STABLE #0: Sat Sep 18 17:34:12 BST 1999
	toor@titus.stade.co.uk:/d3p2/FreeBSD/stable/src/sys/compile/TITUS  i386

>Description:

	From time to time over the last month or so this system has paniced with
	rlist_free.  Till recently this was an occasional happening.  Recently, the
	panics have become more frequent, prompting me to:

	Ensure I had a debugging kernel.

	Capture the crash dump.

	Amend what I suspect is one of the triggers for the problem - a long pipeline
	containing several image processing programs, which grow very large.

	kernel configuration, dmesg, and gdb output:

==> config <==
# $Header: /p1/home/aw1/kernel-config/TITUS,v 1.25 1999/08/29 12:39:22 aw1 Exp aw1 $
# kernel configuration for titus
#
# based on 
#	Id: GENERIC,v 1.143.2.14 1999/05/17 05:49:45 obrien Exp $

machine		"i386"
cpu		"I686_CPU"
ident		TITUS
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=8000		#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		SOFTUPDATES
options         INCLUDE_CONFIG_FILE     # Include this file in kernel
options		"NO_F00F_HACK"
options		"MD5"
options		"VM86"
options		VESA			# needs VM86 defined too!!
options		SCSI_REPORT_GEOMETRY

config		kernel	root on da0

controller	isa0
controller	pnp0
controller	eisa0
controller	pci0

controller	fdc0	at isa? port "IO_FD1" bio irq 6 drq 2
disk		fd0	at fdc0 drive 0

controller	ahc0
options		AHC_ALLOW_MEMIO

controller	scbus0 at ahc0
disk		da0 at scbus0 target 0 unit 0
disk		da1 at scbus0 target 1 unit 0
tape		sa0 at scbus0 target 2 unit 0
disk		da2 at scbus0 target 3 unit 0
device		cd0 at scbus0 target 4 unit 0
# target 5 - spare
disk		da3 at scbus0 target 6 unit 0
# target 7 - controller

device		pass0

# atkbdc0 controlls 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

device		npx0	at isa? port IO_NPX irq 13

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

device		sio0	at isa? port "IO_COM1" flags 0x10 tty irq 4
device		sio1	at isa? port "IO_COM2" tty irq 3

# Parallel port
device		ppc0	at isa? port? flags 0x40 net irq 7
controller	ppbus0
device		lpt0	at ppbus?
device		plip0	at ppbus?
device		ppi0	at ppbus?
#controller	vpo0	at ppbus?

device ep0 at isa? port 0x340 net irq 10

pseudo-device	loop
pseudo-device	ether
pseudo-device	sl	1
pseudo-device	ppp	1
pseudo-device	tun	1
pseudo-device	pty	32
pseudo-device	gzip		# Exec gzipped a.out's
pseudo-device	vn		#Vnode driver (turns a file into a device)
pseudo-device	snp	3	#Snoop device - to look at pty/vty/etc..

options		KTRACE		#kernel tracing

options		SYSVSHM
options		SYSVMSG
options		SYSVSEM

pseudo-device	bpfilter 4	#Berkeley packet filter

# Luigi's snd code (use INSTEAD of snd0 and all VOXWARE drivers!). 
device pcm0 at isa? port ? irq 7 drq 1

# SMB bus
# System Management Bus support provided by the 'smbus' device.
controller smbus0
device smb0	at smbus?

# I2C Bus
controller iicbus0
controller iicbb0
device ic0	at iicbus?
device iic0	at iicbus?
device iicsmb0	at iicbus?

# bt848 device (needs pci / smb / i2c)
device	bktr0

==> 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.3-STABLE #0: Sat Sep 18 17:34:12 BST 1999
    toor@titus.stade.co.uk:/d3p2/FreeBSD/stable/src/sys/compile/TITUS
Timecounter "i8254"  frequency 1193182 Hz
CPU: Pentium Pro (199.43-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0x619  Stepping = 9
  Features=0xf9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV>
real memory  = 134217728 (131072K bytes)
config> pnp 1 0 os enable irq0 5 drq0 0 drq1 1 port0 0x220 port1 0x300 port2 0x388
config> pnp 1 1 os enable port0 0x201
config> quit
avail memory = 127205376 (124224K bytes)
Preloaded elf kernel "kernel" at 0xc0331000.
Preloaded userconfig_script "/boot/kernel.conf" at 0xc033109c.
Preloaded elf module "splash_bmp.ko" at 0xc03310ec.
Preloaded splash_image_data "/boot/images/daemon_640.bmp" at 0xc0331190.
Pentium Pro MTRR support enabled
Probing for devices on PCI bus 0:
chip0: <Intel 82440FX (Natoma) PCI and memory controller> rev 0x02 on pci0.0.0
chip1: <Intel 82371SB PCI to ISA bridge> rev 0x01 on pci0.7.0
vga0: <Matrox MGA 2064W graphics accelerator> rev 0x01 int a irq 11 on pci0.11.0
bktr0: <BrookTree 848A> rev 0x12 int a irq 15 on pci0.15.0
bti2c0: <bt848 Hard/Soft I2C controller>
iicbb0: <I2C generic bit-banging driver> on bti2c0
iicbus0: <Philips I2C bus> on iicbb0 master-only
iicsmb0: <I2C to SMB bridge> on iicbus0
smbus0: <System Management Bus> on iicsmb0
smb0: <SMBus general purpose I/O> on smbus0
iic0: <I2C general purpose I/O> on iicbus0
smbus1: <System Management Bus> on bti2c0
smb1: <SMBus general purpose I/O> on smbus1
bktr0: Hauppauge Model 60134 CV  
Hauppauge WinCast/TV, Philips FR1216 PAL tuner, msp3400c stereo.
bktr0: Detected a MSP3410D-B4
ahc0: <Adaptec 2940A Ultra SCSI adapter> rev 0x01 int a irq 15 on pci0.17.0
ahc0: aic7860 Single Channel A, SCSI Id=7, 3/255 SCBs
Probing for PnP devices:
CSN 1 Vendor ID: CTL00f0 [0xf0008c0e] Serial 0xffffffff Comp ID: PNPb02f [0x2fb0d041]
pcm1 (SB16pnp <Vibra16X> sn 0xffffffff) at 0x220-0x22f irq 5 drq 0 flags 0x11 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
psm0 irq 12 on isa
psm0: model Generic PS/2 mouse, device ID 0
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
ppc0 at 0x378 irq 7 flags 0x40 on isa
ppc0: Generic chipset (ECP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/8 bytes threshold
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
1 3C5x9 board(s) on ISA found at 0x340
ep0 at 0x340-0x34f irq 10 on isa
ep0: aui/utp/bnc[*UTP*] address 00:60:97:94:d0:e7
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
pcm0 not found
Waiting 8 seconds for SCSI devices to settle
sa0 at ahc0 bus 0 target 2 lun 0
sa0: <HP C1533A 9406> Removable Sequential Access SCSI-2 device 
sa0: 10.000MB/s transfers (10.000MHz, offset 8)
da1 at ahc0 bus 0 target 1 lun 0
da1: <FUJITSU M2694ES-512 8134> Fixed Direct Access SCSI-CCS device 
da1: 3.300MB/s transfers
da1: 1033MB (2117025 512 byte sectors: 255H 63S/T 131C)
da0 at ahc0 bus 0 target 0 lun 0
da0: <FUJITSU M2954S-512 0147> Fixed Direct Access SCSI-2 device 
da0: 10.000MB/s transfers (10.000MHz, offset 15), Tagged Queueing Enabled
da0: 4149MB (8498506 512 byte sectors: 255H 63S/T 529C)
da2 at ahc0 bus 0 target 3 lun 0
da2: <SEAGATE ST118273N 6244> Fixed Direct Access SCSI-2 device 
da2: 10.000MB/s transfers (10.000MHz, offset 15), Tagged Queueing Enabled
da2: 17366MB (35566480 512 byte sectors: 255H 63S/T 2213C)
changing root device to da0s2a
da3 at ahc0 bus 0 target 6 lun 0
da3: <QUANTUM FIREBALL SE8.4S PJ09> Fixed Direct Access SCSI-2 device 
da3: 10.000MB/s transfers (10.000MHz, offset 15), Tagged Queueing Enabled
da3: 8191MB (16777215 512 byte sectors: 255H 63S/T 1044C)
cd0 at ahc0 bus 0 target 4 lun 0
cd0: <PLEXTOR CD-ROM PX-32CS 1.00> Removable CD-ROM SCSI-2 device 
cd0: 10.000MB/s transfers (10.000MHz, offset 15)
cd0: Attempt to query device size failed: NOT READY, Medium not present
WARNING: / was not properly dismounted

==> gdb <==
aw1@titus sys/compile/TITUS$ gdb -k kernel.debug /var/crash/vmcore.8
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"...
IdlePTD 3420160
initial pcb at 27962c
panicstr: rlist_free: free start overlaps already freed area
panic messages:
---
panic: rlist_free: free start overlaps already freed area

syncing disks... 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 giving up

dumping to dev 30401, offset 131072
dump 128 127 126 125 124 123 122 121 120 119 118 117 116 115 114 113 112 111 110 109 108 107 106 105 104 103 102 101 100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 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  0xc014f670 in at_shutdown (
    function=0xc0247de4 <__set_sysinit_set_sym_logdev_sys_init+124>, arg=0x7, 
    queue=0) at ../../kern/kern_shutdown.c:446
#2  0xc01590a2 in rlist_free (rlh=0xc0295524, start=0, end=7)
    at ../../kern/subr_rlist.c:159
#3  0xc01f3b6b in swap_pager_freeswapspace (object=0xc6490000, from=0, to=7)
    at ../../vm/swap_pager.c:422
#4  0xc01f3c4c in swap_pager_freespace (object=0xc6490000, start=33, 
    size=101149) at ../../vm/swap_pager.c:445
#5  0xc01f90ad in vm_map_delete (map=0xc6391500, start=134807552, 
    end=549113856) at ../../vm/vm_map.c:1833
#6  0xc01f9150 in vm_map_remove (map=0xc6391500, start=134807552, 
    end=549113856) at ../../vm/vm_map.c:1874
#7  0xc02007e7 in obreak (p=0xc639f600, uap=0xc643ef84)
    at ../../vm/vm_unix.c:107
#8  0xc021f1ef in syscall (frame={tf_es = 39, tf_ds = 39, tf_edi = 134807552, 
      tf_esi = 134549824, tf_ebp = -1077946604, tf_isp = -968626220, 
      tf_ebx = 671987336, tf_edx = 671987316, tf_ecx = 671987312, tf_eax = 17, 
      tf_trapno = 7, tf_err = 2, tf_eip = 671951256, tf_cs = 31, 
      tf_eflags = 647, tf_esp = -1077946640, tf_ss = 39})
    at ../../i386/i386/trap.c:1100
#9  0xc021225c in Xint0x80_syscall ()
#10 0x280d2402 in ?? ()
#11 0x804c1d0 in ?? ()
#12 0x804b09f in ?? ()
#13 0x804a6d9 in ?? ()
#14 0x8049115 in ?? ()
(kgdb) quit

>How-To-Repeat:

	I have been unable to reproduce the problem on demand.  Possibly relevant
	components of the problem are:

	These pipelines:

        tifftopnm PYEA87.TIF |
                ppmquant -floyd 2 |
                pnmflip -r90 |
                pnmscale -xsize 1181 |
                ppmtogif -interlace  > out

        tifftopnm PYEA97.TIF |
                ppmquant -floyd 2 |
                pnmscale -xsize 750 |
                ppmtogif -interlace > out

	(now amended to run singly with intermediate files)

        sendmail / procmail - the pipelines are run as part of a
        make, run by cron. Quite often after the crash my mailbox is
        corrupted, with a message terminating with a number of nulls,
        followed by the cron message.

        A heavy system load - inn processing "suck"ed news, sendmail,
        often cvsup or cvs.

	If changing the pipeline makes the problem go away, I'll still be able to reinstate
	it if needed for diagnostic patches, etc.

>Fix:
	
	Wish I knew.

>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?199909181959.UAA07953>