From owner-freebsd-current Tue Sep 8 13:49:04 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id NAA10747 for freebsd-current-outgoing; Tue, 8 Sep 1998 13:49:04 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from hillbilly.hayseed.net (hillbilly.hayseed.net [204.62.130.2]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id NAA10740 for ; Tue, 8 Sep 1998 13:49:01 -0700 (PDT) (envelope-from enkhyl@hayseed.net) Received: from hillbilly.hayseed.net (enkhyl@hillbilly.hayseed.net [204.62.130.2]) by hillbilly.hayseed.net (8.9.1/8.8.5) with ESMTP id NAA32047; Tue, 8 Sep 1998 13:51:17 -0700 Date: Tue, 8 Sep 1998 13:51:17 -0700 (PDT) From: Enkhyl To: Dag-Erling Coidan =?iso-8859-1?Q?Sm=F8rgrav?= cc: current@FreeBSD.ORG Subject: Re: DEVFS panic In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN Content-Transfer-Encoding: 8BIT Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG The exact same thing happened to me last night when I CVSup'd Monday's changes and tried recompiling my kernel. I think I traced it to the following commit, since a kernel with the previous days source worked fine: bde 1998/09/07 06:17:06 PDT Modified files: sys/cfs cfs_vfsops.c sys/gnu/ext2fs ext2_vfsops.c sys/isofs/cd9660 cd9660_vfsops.c sys/miscfs/devfs devfs_vfsops.c sys/miscfs/fdesc fdesc_vfsops.c sys/miscfs/kernfs kernfs_vfsops.c sys/miscfs/nullfs null_vfsops.c sys/miscfs/portal portal_vfsops.c sys/miscfs/procfs procfs_vfsops.c sys/miscfs/umapfs umap_vfsops.c sys/miscfs/union union_vfsops.c sys/msdosfs msdosfs_vfsops.c sys/nfs nfs_vfsops.c sys/sys mount.h sys/ufs/ffs ffs_vfsops.c sys/ufs/mfs mfs_vfsops.c Log: Removed statically configured mount type numbers (MOUNT_*) and all references to them. The change a couple of days ago to ignore these numbers in statically configured vfsconf structs was slightly premature because the cd9660, cfs, devfs, ext2fs, nfs vfs's still used MOUNT_* instead of the number in their vfsconf struct. Revision Changes Path 1.3 +6 -3 src/sys/cfs/cfs_vfsops.c 1.35 +3 -3 src/sys/gnu/ext2fs/ext2_vfsops.c 1.43 +3 -3 src/sys/isofs/cd9660/cd9660_vfsops.c 1.32 +6 -6 src/sys/miscfs/devfs/devfs_vfsops.c 1.16 +2 -2 src/sys/miscfs/fdesc/fdesc_vfsops.c 1.23 +2 -2 src/sys/miscfs/kernfs/kernfs_vfsops.c 1.28 +2 -2 src/sys/miscfs/nullfs/null_vfsops.c 1.22 +2 -2 src/sys/miscfs/portal/portal_vfsops.c 1.26 +2 -2 src/sys/miscfs/procfs/procfs_vfsops.c 1.23 +2 -2 src/sys/miscfs/umapfs/umap_vfsops.c 1.30 +2 -2 src/sys/miscfs/union/union_vfsops.c 1.36 +2 -2 src/sys/msdosfs/msdosfs_vfsops.c 1.76 +4 -4 src/sys/nfs/nfs_vfsops.c 1.67 +5 -54 src/sys/sys/mount.h 1.86 +2 -2 src/sys/ufs/ffs/ffs_vfsops.c 1.44 +2 -2 src/sys/ufs/mfs/mfs_vfsops.c On 8 Sep 1998, Dag-Erling Coidan [iso-8859-1] Smørgrav wrote: > One of my freshly cvsupped and 'make world'ed -current box will > repeatedly and reliably panic if booted with a DEVFS kernel (SLICE or > no SLICE). The panic occurs right after the memory count (i.e. where a > successful kernel would print "DEVFS: ready for devices"). The details > of the panic are as follows (copied via paper): > > Fatal trap 12: page fault while in kernel mode > fault virtual address = 0x14 > fault code = supervisor read, page not present > instruction pointer = 0x8:0xf013d2b5 > stack pointer = 0x10:0xf01fcf5c > frame pointer = 0x10:0xf01fcf74 > code segment = base 0x0, limit 0xfffff, type 0x1b > = DPL 0, pres 1, def32 1, gran 1 > processor eflags = resume, IOPL = 0 > current process = 0 () > interrupt mask = net tty bio cam > trap number = 12 > > Of course, there's no dump, but I can provide a copy of the faulty > kernel (stripped, unfortunately; I forgot to keep an unstripped copy). > The exact same kernel without DEVFS works flawlessly. An older kernel > (August 2nd) with the same configuration works flawlessly with DEVFS > and SLICE. > > The faulty kernel was compiled with the following version of DEVFS: > > root@fixus-ipv6 /usr/src/sys/miscfs/devfs# ident * > README: > > devfs_proto.h: > > devfs_tree.c: > $Id: devfs_tree.c,v 1.56 1998/07/05 23:10:21 julian Exp $ > > devfs_vfsops.c: > $Id: devfs_vfsops.c,v 1.32 1998/09/07 13:17:00 bde Exp $ > > devfs_vnops.c: > $Id: devfs_vnops.c,v 1.60 1998/09/04 08:06:56 dfr Exp $ > > devfsdefs.h: > $Id: devfsdefs.h,v 1.16 1998/07/05 23:10:22 julian Exp $ > > reproto.sh: > > Here's the kernel config: > > # > # Kernel configuration for fixus-ipv6.ifi.uio.no > # > machine "i386" > cpu "I686_CPU" > ident "fixus-ipv6" > maxusers 64 > > # General kernel options > options "AUTO_EOI_1" > #options "AUTO_EOI_2" > options BOUNCE_BUFFERS > options "COMPAT_43" > options FFS > options INCLUDE_CONFIG_FILE > options INET > options "MD5" > options "NMBCLUSTERS=8192" > options "NO_F00F_HACK" > options DEVFS > #options SLICE > options PROCFS > options SOFTUPDATES > options SYSVMSG > options SYSVSEM > options SYSVSHM > options UCONSOLE > options USERCONFIG > options VISUAL_USERCONFIG > config kernel root on wd0 > > # Buses > controller isa0 > controller pci0 > controller pnp0 > > # Numeric coprocessor > device npx0 at isa? port "IO_NPX" flags 0x1 irq 13 vector npxintr > > # Floppy controller > controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr > disk fd0 at fdc0 drive 0 > > # Primary IDE channel > controller wdc0 at isa? port "IO_WD1" bio irq 14 vector wdintr > disk wd0 at wdc0 drive 0 flags 0x80ff > #disk wd1 at wdc0 drive 1 flags 0x80ff > > # Secondary IDE channel > controller wdc1 at isa? port "IO_WD2" bio irq 15 vector wdintr > #disk wd2 at wdc1 drive 0 flags 0x80ff > #disk wd3 at wdc1 drive 1 flags 0x80ff > > # ATAPI CD-ROM support > options ATAPI > options ATAPI_STATIC > device wcd0 > > # System console with PS/2 mouse > device sc0 at isa? port "IO_KBD" tty irq 1 flags 0x06 vector scintr > options "SC_HISTORY_SIZE=1024" > options "MSGBUF_SIZE=32768" > #options SC_DISABLE_REBOOT > device psm0 at isa? port "IO_KBD" conflicts tty irq 12 vector psmintr > > # Audio hardware > device pcm0 at isa? port ? tty irq 10 drq 1 flags 0x0 vector pcmintr > > # Serial and parallell ports > device sio0 at isa? port "IO_COM1" tty irq 4 vector siointr > device sio1 at isa? port "IO_COM2" tty irq 3 vector siointr > device lpt0 at isa? port? tty irq 7 vector lptintr > > # Network adapter (3Com Etherlink III XL) > #device vx0 > device xl0 > > # Pseudo-devices > pseudo-device bpfilter 4 > pseudo-device ether > pseudo-device gzip > pseudo-device loop > pseudo-device pty 64 > pseudo-device tun 4 > pseudo-device vn 4 > > # Sound hardware > device pcm0 at isa? port? tty irq 5 drq 1 flags 0x15 vector pcmintr > > > Here's a dmesg of the same kernel without DEVFS: > > Copyright (c) 1992-1998 FreeBSD Inc. > Copyright (c) 1982, 1986, 1989, 1991, 1993 > The Regents of the University of California. All rights reserved. > FreeBSD 3.0-CURRENT #1: Tue Sep 8 14:02:49 CEST 1998 > root@:/usr/src/sys/compile/fixus-ipv6 > Calibrating clock(s) ... TSC clock: 298023586 Hz, i8254 clock: 1193288 Hz > CLK_USE_I8254_CALIBRATION not specified - using default frequency > Timecounter "i8254" frequency 1193182 Hz cost 3031 ns > CLK_USE_TSC_CALIBRATION not specified - using old calibration method > Timecounter "TSC" frequency 297998312 Hz cost 163 ns > CPU: Pentium II (298.00-MHz 686-class CPU) > Origin = "GenuineIntel" Id = 0x633 Stepping=3 > Features=0x80f9ff > real memory = 134217728 (131072K bytes) > Physical memory chunk(s): > 0x00001000 - 0x0009efff, 647168 bytes (158 pages) > 0x001f8000 - 0x07ff7fff, 132120576 bytes (32256 pages) > avail memory = 128172032 (125168K bytes) > Found BIOS32 Service Directory header at 0xf00ffe80 > Entry = 0xffe90 (0xf00ffe90) Rev = 0 Len = 1 > PCI BIOS entry at 0xcc1e > Other BIOS signatures found: > ACPI: 00000000 > $PnP: 000fe2d0 > pci_open(1): mode 1 addr port (0x0cf8) is 0x8000384c > pci_open(1a): mode1res=0x80000000 (0x80000000) > pci_cfgcheck: device 0 [class=060000] [hdr=00] is there (id=71808086) > Probing for devices on PCI bus 0: > found-> vendor=0x8086, dev=0x7180, revid=0x03 > class=06-00-00, hdrtype=0x00, mfdev=0 > map[0]: type 3, range 32, base f4000000, size 26 > chip0: rev 0x03 on pci0.0.0 > found-> vendor=0x8086, dev=0x7181, revid=0x03 > class=06-04-00, hdrtype=0x01, mfdev=0 > chip1: rev 0x03 on pci0.1.0 > found-> vendor=0x8086, dev=0x7110, revid=0x01 > class=06-01-00, hdrtype=0x00, mfdev=1 > chip2: rev 0x01 on pci0.7.0 > found-> vendor=0x8086, dev=0x7111, revid=0x01 > class=01-01-80, hdrtype=0x00, mfdev=0 > ide_pci0: rev 0x01 on pci0.7.1 > intel_piix_status: primary master sample = 3, master recovery = 1 > intel_piix_status: primary master fastDMAonly disabled, pre/post enabled, > intel_piix_status: IORDY sampling enabled, > intel_piix_status: fast PIO enabled > intel_piix_status: primary slave sample = 5, slave recovery = 4 > intel_piix_status: primary slave fastDMAonly disabled, pre/post disabled, > intel_piix_status: IORDY sampling disabled, > intel_piix_status: fast PIO disabled > ide_pci: busmaster 0 status: 24 from port: 0000ffa2 > ide_pci: ide0:0 has been configured for DMA by BIOS > intel_piix_status: secondary master sample = 3, master recovery = 3 > intel_piix_status: secondary master fastDMAonly disabled, pre/post disabled, > intel_piix_status: IORDY sampling enabled, > intel_piix_status: fast PIO enabled > intel_piix_status: secondary slave sample = 5, slave recovery = 4 > intel_piix_status: secondary slave fastDMAonly disabled, pre/post disabled, > intel_piix_status: IORDY sampling disabled, > intel_piix_status: fast PIO disabled > ide_pci: busmaster 1 status: 04 from port: 0000ffaa > found-> vendor=0x8086, dev=0x7112, revid=0x01 > class=0c-03-00, hdrtype=0x00, mfdev=0 > intpin=d, irq=11 > chip3: rev 0x01 int d irq 11 on pci0.7.2 > found-> vendor=0x8086, dev=0x7113, revid=0x01 > class=06-80-00, hdrtype=0x00, mfdev=0 > chip4: rev 0x01 on pci0.7.3 > found-> vendor=0x102b, dev=0x051b, revid=0x00 > class=03-00-00, hdrtype=0x00, mfdev=0 > intpin=a, irq=9 > map[0]: type 3, range 32, base f9000000, size 24 > map[1]: type 1, range 32, base ff800000, size 14 > map[2]: type 1, range 32, base ff000000, size 23 > vga0: rev 0x00 int a irq 9 on pci0.14.0 > found-> vendor=0x1011, dev=0x0024, revid=0x02 > class=06-04-00, hdrtype=0x01, mfdev=0 > chip5: rev 0x02 on pci0.15.0 > found-> vendor=0x10b7, dev=0x9050, revid=0x00 > class=02-00-00, hdrtype=0x00, mfdev=0 > intpin=a, irq=11 > map[0]: type 4, range 32, base 0000dc80, size 6 > xl0: <3Com 3c905 Fast Etherlink XL 10/100BaseTX> rev 0x00 int a irq 11 on pci0.17.0 > xl0: Ethernet address: 00:c0:4f:a9:14:1a > xl0: media options word: e040 > xl0: probing for a PHY > xl0: checking address: 0 > xl0: checking address: 1 > xl0: checking address: 2 > xl0: checking address: 3 > xl0: checking address: 4 > xl0: checking address: 5 > xl0: checking address: 6 > xl0: checking address: 7 > xl0: checking address: 8 > xl0: checking address: 9 > xl0: checking address: 10 > xl0: checking address: 11 > xl0: checking address: 12 > xl0: checking address: 13 > xl0: checking address: 14 > xl0: checking address: 15 > xl0: checking address: 16 > xl0: checking address: 17 > xl0: checking address: 18 > xl0: checking address: 19 > xl0: checking address: 20 > xl0: checking address: 21 > xl0: checking address: 22 > xl0: checking address: 23 > xl0: checking address: 24 > xl0: found PHY at address 24, vendor id: 2000 device id: 5c01 > xl0: PHY type: > xl0: found MII > xl0: PHY status word: 7849 > xl0: 10Mbps half-duplex mode supported > xl0: 10Mbps full-duplex mode supported > xl0: 100Mbps half-duplex mode supported > xl0: 100Mbps full-duplex mode supported > xl0: autoneg supported > bpf: xl0 attached > Probing for devices on PCI bus 1: > found-> vendor=0x1002, dev=0x4744, revid=0x5c > class=03-00-00, hdrtype=0x00, mfdev=0 > map[0]: type 1, range 32, base fd000000, size 24 > map[1]: type 4, range 32, base 0000ec00, size 8 > map[2]: type 1, range 32, base fcfff000, size 12 > vga1: rev 0x5c on pci1.0.0 > Probing for devices on PCI bus 2: > Initializing PnP override table > Probing for PnP devices: > Trying Read_Port at 203 > CSN 1 Vendor ID: CSC6835 [0x3568630e] Serial 0xffffffff > Called nullpnp_probe with tag 0x00000001, type 0x3568630e > Probing for devices on the ISA bus: > sc0: the current keyboard controller command byte 0065 > kbdio: DIAGNOSE status:0055 > kbdio: TEST_KBD_PORT status:0000 > kbdio: RESET_KBD return code:00fa > kbdio: RESET_KBD status:00aa > sc0: keyboard device ID: ab41 > sc0 at 0x60-0x6f irq 1 flags 0x6 on motherboard > sc0: BIOS video mode:3 > sc0: VGA registers upon power-up > 50 18 10 00 10 00 03 00 02 67 60 4f 50 83 55 81 > bf 1f 00 4f 0d 0e 00 00 07 80 9c 8e 8f 28 1f 96 > b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c > 3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff > sc0: video mode:24 > sc0: VGA registers in BIOS for mode:24 > 50 18 10 00 10 00 03 00 02 67 60 4f 50 83 55 81 > bf 1f 00 4f 0d 0e 00 00 00 00 9c 8e 8f 28 1f 96 > b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c > 3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff > sc0: VGA registers to be used for mode:24 > 50 18 10 00 10 00 03 00 02 67 60 4f 50 83 55 81 > bf 1f 00 4f 0d 0e 00 00 00 00 9c 8e 8f 28 1f 96 > b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c > 3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff > sc0: rows_offset:1 > sc0: VGA color <16 virtual consoles, flags=0x6> > psm0: current command byte:0065 > kbdio: TEST_AUX_PORT status:0000 > kbdio: RESET_AUX return code:00fa > kbdio: RESET_AUX status:00aa > kbdio: RESET_AUX ID:0000 > psm: status 00 02 64 > psm: status 00 00 64 > psm: status 00 03 64 > psm: status 00 03 64 > psm: status 10 00 64 > psm: data 08 00 00 > psm: data 08 00 00 > psm: status 00 02 64 > psm0 at 0x60-0x64 irq 12 on motherboard > psm0: model Generic PS/2 mouse, device ID 0, 2 buttons > psm0: config:00000000, flags:00000000, packet size:3 > psm0: syncmask:c0, syncbits:00 > mss_probe: no address supplied, try default 0x530 > mss_detect - chip revision 0x0a > mss_detect warning - I11: 0x04/0x00 > mss_detect() - Detected CS4236 > pcm0 at 0x530 irq 10 drq 1 flags 0xa600 on isa > mss_attach 0 at 0x530 irq 10 dma 1:1 flags 0xa600 > sio0: irq maps: 0x1 0x11 0x1 0x1 > sio0 at 0x3f8-0x3ff irq 4 on isa > sio0: type 16550A > sio1: irq maps: 0x1 0x9 0x1 0x1 > sio1 at 0x2f8-0x2ff irq 3 on isa > sio1: type 16550A > lpt0 at 0x378-0x37f irq 7 on isa > lpt0: Interrupt-driven port > lp0: TCP/IP capable interface > bpf: lp0 attached > 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): , 32-bit, multi-block-16 > wd0: 4119MB (8436960 sectors), 8928 cyls, 15 heads, 63 S/T, 512 B/S > wd0: ATA INQUIRE valid = 0007, dmamword = 0007, apio = 0003, udma = 0407 > wdc1 at 0x170-0x177 irq 15 on isa > wdc1: unit 0 (atapi): , removable, accel, ovlap, dma, iordy > wcd0: 4133/4134Kb/sec, 256Kb cache, audio play, 255 volume levels, ejectable tray > wcd0: no disc inside, unlocked > npx0 flags 0x1 on motherboard > npx0: INT 16 interface > imasks: bio c008c040, tty c003149a, net c0060800 > BIOS Geometries: > 0:020bfe3f 0..523=524 cylinders, 0..254=255 heads, 1..63=63 sectors > 0 accounted for > Device configuration finished. > bpf: tun0 attached > bpf: tun1 attached > bpf: tun2 attached > bpf: tun3 attached > bpf: lo0 attached > Considering FFS root f/s. > changing root device to wd0s2a > wd0s1: type 0x6, start 63, end = 4192964, size 4192902 : OK > wd0s2: type 0xa5, start 4192965, end = 8434124, size 4241160 : OK > ffs_mountfs: superblock updated > ffs_mountfs: superblock updated > ffs_mountfs: superblock updated > ffs_mountfs: superblock updated > xl0: autoneg complete, link status good (full-duplex, 100Mbps) > > DES > -- > Dag-Erling Smørgrav - dag-erli@ifi.uio.no > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-current" in the body of the message > -- Christopher Nielsen Scient: The Art and Science of Electronic Business cnielsen@scient.com To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message