Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 15 Jul 1998 10:35:38 +0100
From:      Keith Jones <keith@blueberry.co.uk>
Subject:   kernel panic performing large number of writes to vnode FS
Message-ID:  <19980715103538.41845@blueberry.co.uk>

next in thread | raw e-mail | index | archive | help
I posted this message to -questions a short while ago, with no joy:-

I've recently begun experimenting with using a vnode as a filesystem, and
have discovered what appears to be a bug: when copying large numbers of files
to a mounted 'vnode filesystem' the kernel panics and the system hangs.

This problem appears to be similar to that reported by Mark Taylor
<mtaylor@cybernet.com> on 13 April, 1997 (posted to -bugs and -hackers)
though I may be mistaken.

This is what I did:

# dd if=/dev/zero of=/usr/diskimage bs=1024 count=409600
# vnconfig -c -s labels /dev/vn0 /usr/diskimage
# disklabel -w /dev/vn0 400M
# newfs /dev/vn0a
# newfs /dev/vn0e
# newfs /dev/vn0f
# mount /dev/vn0a /mnt
# cd /mnt
# mkdir usr
# mkdir var
# mount /dev/vn0e /mnt/var
# mount /dev/vn0f /mnt/usr

The /etc/disktab entry for 400M is as follows:

400M|400M Disk:\
        :ty=mfs:se#512:nt#16:ns#32:nc#1600: \
        :pa#65536:oa#0:ta=4.2BSD:ba#4096:fa#512:\ 
        :pb#65536:ob#65536:tb=swap: \
        :pc#819200:oc#0: \ 
        :pe#61440:oe#131072:te=4.2BSD:be#4096:fe#512: \
        :pf#626688:of#192512:tf=4.2BSD:bf#4096:ff#512:

Everything works fine up to here, but if I then type (for instance):

# cat /usr/local/ftp/pub/FreeBSD/2.2.6-RELEASE/bin/bin.?? | tar --unlink -xpzf - -C /mnt

around 150 files or so are extracted, then the following kernel messages
appear:

Fatal double fault:
eip=0xf01a0aba
esp=0xefbfcfe0
ebp=0xefbfd058
panic: double fault

Syncing disks...

at which point the system hangs entirely, unable to sync its disks and thus
unable to reboot. The only way out appears to be by resetting the machine.

This problem is mitigated somewhat by sync'ing repeatedly while writing to
/dev/vn0 - though sometimes the system will crash even in this scenario.

intranet# while 1
while? sync
while? end


dmesg output:

Copyright (c) 1992-1998 FreeBSD Inc.
Copyright (c) 1982, 1986, 1989, 1991, 1993
	The Regents of the University of California.  All rights reserved.

FreeBSD 2.2.6-STABLE #0: Tue Jun 30 13:08:32 BST 1998
    root@dummy.blueberry.co.uk:/usr/src/sys/compile/DUMMY
CPU: Pentium II (233.86-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0x633  Stepping=3
  Features=0x80f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,MMX>
real memory  = 67108864 (65536K bytes)
avail memory = 63537152 (62048K bytes)
Probing for devices on PCI bus 0:
chip0 <generic PCI bridge (vendor=8086 device=7180 subclass=0)> rev 3 on pci0:0:0
chip1 <generic PCI bridge (vendor=8086 device=7181 subclass=4)> rev 3 on pci0:1:0
chip2 <Intel 82371AB PCI-ISA bridge> rev 1 on pci0:4:0
chip3 <Intel 82371AB IDE interface> rev 1 on pci0:4:1
chip4 <Intel 82371AB USB interface> rev 1 int d irq 15 on pci0:4:2
chip5 <Intel 82371AB Power management controller> rev 1 on pci0:4:3
de0 <Digital 21041 Ethernet> rev 33 int a irq 9 on pci0:10:0
de0: SMC 21041 [10Mb/s] pass 2.1
de0: address 00:e0:29:0c:9e:7e
vga0 <VGA-compatible display device> rev 20 int a irq 10 on pci0:11:0
ncr0 <ncr 53c875 fast20 wide scsi> rev 3 int a irq 11 on pci0:12:0
ncr0 waiting for scsi devices to settle
(ncr0:0:0): "FUJITSU M2952Q-512 0155" type 0 fixed SCSI 2
sd0(ncr0:0:0): Direct-Access 
sd0(ncr0:0:0): WIDE SCSI (16 bit) enabled
sd0(ncr0:0:0): 40.0 MB/s (50 ns, offset 15)
2291MB (4693462 512 byte sectors)
(ncr0:1:0): "FUJITSU M2954Q-512 0153" type 0 fixed SCSI 2
sd1(ncr0:1:0): Direct-Access 
sd1(ncr0:1:0): WIDE SCSI (16 bit) enabled
sd1(ncr0:1:0): 40.0 MB/s (50 ns, offset 15)
4149MB (8498506 512 byte sectors)
(ncr0:4:0): "HP HP35480A T503" type 1 removable SCSI 2
st0(ncr0:4:0): Sequential-Access 
st0(ncr0:4:0): 5.0 MB/s (200 ns, offset 8)
density code 0x13, variable blocks, write-enabled
Probing for devices on PCI bus 1:
Probing for devices on the ISA bus:
sc0 at 0x60-0x6f irq 1 on motherboard
sc0: VGA color <16 virtual consoles, flags=0x0>
sio0 at 0x3f8-0x3ff irq 4 on isa
sio0: type 16550A
sio1 at 0x2f8-0x2ff irq 3 on isa
sio1: type 16550A
sio2 at 0x3e8-0x3ef irq 5 on isa
sio2: type 16550A
sio3: configured irq 12 not in bitmap of probed irqs 0
sio3 at 0x2e8-0x2ef irq 12 on isa
sio3: type 16550A
lpt0 at 0x378-0x37f irq 7 on isa
lpt0: Interrupt-driven port
lp0: TCP/IP capable interface
fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa
fdc0: FIFO enabled, 8 bytes threshold
fd0: 1.44MB 3.5in
npx0 flags 0x1 on motherboard
npx0: INT 16 interface
de0: enabling 10baseT port
WARNING: / was not properly dismounted.
de0: abnormal interrupt: receive process stopped

Can anyone shed any light on this?

Kind regards

Keith
-- 
v Keith Jones                 Systems Manager, Blueberry New Media Ltd. v
| Postal Mail: 2/10 Harbour Yard, Chelsea Harbour, LONDON, UK. SW10 0XD |
| Telephone: +44 (0)171 351 3313               Fax: +44 (0)171 351 2476 |
^ Email: Keith.Jones@blueberry.co.uk   WWW: http://www.blueberry.co.uk/ ^

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?19980715103538.41845>