Date: Thu, 15 Nov 2001 14:56:15 -0700 From: "Kenneth D. Merry" <ken@kdm.org> To: Dirk Froemberg <dirk@FreeBSD.ORG> Cc: stable@FreeBSD.ORG, phk@FreeBSD.ORG Subject: Re: kernel panic if using SCSI CDROM as root device Message-ID: <20011115145615.A34719@panzer.kdm.org> In-Reply-To: <20011115120432.A18404@physik.TU-Berlin.DE>; from dirk@FreeBSD.ORG on Thu, Nov 15, 2001 at 12:04:32PM %2B0100 References: <20011115003027.A87962@physik.TU-Berlin.DE> <20011115120432.A18404@physik.TU-Berlin.DE>
next in thread | previous in thread | raw e-mail | index | archive | help
[ Poul-Henning CCed, since he may have a clue what's going on here ] On Thu, Nov 15, 2001 at 12:04:32 +0100, Dirk Froemberg wrote: > Hi! > > On Thu, Nov 15, 2001 at 12:30:27AM +0100, Dirk Froemberg wrote: > > I build an CDROM image with a boot image containing a GENERIC kernel > > and an "ordinary" FreeBSD-4.4-STABLE installation. > > > > After booting the kernel I get the "mountroot> " prompt. On systems > > having an ATAPI-CDROM mounting the CD as a root filesystem works > > (giving cd9660:/dev/acd0c as root), but not on SCSI systems (giving > > cd9660:/dev/cd0c as root). On such systems a kernel panic occurs > > ("Fatal trap 12: page fault while in kernel mode"). > > Now, some more debug information... > > Regards Dirk > > ok boot -C > /kernel text=0x203a28 data=0x39464+0x19cac syms=[0x4+0x30df0+0x4+0x353fc] > Copyright (c) 1992-2001 The FreeBSD Project. > Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 > The Regents of the University of California. All rights reserved. > FreeBSD 4.4-STABLE #0: Thu Nov 15 11:18:56 CET 2001 > dirk@bach:/usr/obj/usr/src/sys/CDROM > Timecounter "i8254" frequency 1193182 Hz > Timecounter "TSC" frequency 166527838 Hz > CPU: Pentium/P55C (166.53-MHz 586-class CPU) > Origin = "GenuineIntel" Id = 0x543 Stepping = 3 > Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX> > real memory = 67043328 (65472K bytes) > avail memory = 61489152 (60048K bytes) > Preloaded elf kernel "kernel" at 0xc03bf000. > Intel Pentium detected, installing workaround for F00F bug > md0: Malloc disk > Using $PIR table, 6 entries at 0xc00fde70 > npx0: <math processor> on motherboard > npx0: INT 16 interface > pcib0: <VIA 82C598MVP (Apollo MVP3) host bridge> on motherboard > pci0: <PCI bus> on pcib0 > pcib2: <VIA 82C598MVP (Apollo MVP3) PCI-PCI (AGP) bridge> at device 1.0 on pci0 > pci1: <PCI bus> on pcib2 > isab0: <VIA 82C586 PCI-ISA bridge> at device 7.0 on pci0 > isa0: <ISA bus> on isab0 > atapci0: <VIA 82C586 ATA33 controller> port 0x6400-0x640f at device 7.1 on pci0 > fxp0: <Intel Pro 10/100B/100+ Ethernet> port 0x6c00-0x6c3f mem 0xe9000000-0xe901ffff,0xe9020000-0xe9020fff irq 9 at device 9.0 on pci0 > fxp0: Ethernet address 00:02:b3:40:db:8c > inphy0: <i82555 10/100 media interface> on miibus0 > inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto > ahc0: <Adaptec 2940 Ultra2 SCSI adapter> port 0x7000-0x70ff mem 0xe9021000-0xe9021fff irq 12 at device 10.0 on pci0 > aic7890/91: Ultra2 Wide Channel A, SCSI Id=7, 32/255 SCBs > pci0: <Matrox MGA Millennium 2064W graphics accelerator> at 12.0 irq 10 > pcib1: <Host to PCI bridge> on motherboard > pci2: <PCI bus> on pcib1 > orm0: <Option ROMs> at iomem 0xc0000-0xc7fff,0xc8000-0xc97ff,0xca000-0xcf7ff on isa0 > fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0 > fdc0: FIFO enabled, 8 bytes threshold > fd0: <1440-KB 3.5" drive> on fdc0 drive 0 > atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 > atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 > kbd0 at atkbd0 > vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 > sc0: <System console> at flags 0x100 on isa0 > sc0: VGA <16 virtual consoles, flags=0x100> > sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 > sio0: type 16550A, console > sio1 at port 0x2f8-0x2ff irq 3 on isa0 > sio1: type 16550A > Waiting 15 seconds for SCSI devices to settle > Mounting root from cd9660:cd0a > cd0 at ahc0 bus 0 target 3 lun 0 > cd0: <TEAC CD-ROM CD-532S 1.0A> Removable CD-ROM SCSI-2 device > cd0: 20.000MB/s transfers (20.000MHz, offset 16) > cd0: cd present [66018 x 2048 byte records] > da0 at ahc0 bus 0 target 0 lun 0 > da0: <FUJITSU MAB3091SP 0109> Fixed Direct Access SCSI-2 device > da0: 40.000MB/s transfers (20.000MHz, offset 31, 16bit), Tagged Queueing Enabled > da0: 8703MB (17824700 512 byte sectors: 255H 63S/T 1109C) > > > Fatal trap 12: page fault while in kernel mode > fault virtual address = 0x28 > fault code = supervisor read, page not present > instruction pointer = 0x8:0xc01b51aa > stack pointer = 0x10:0xc03e1db4 > frame pointer = 0x10:0xc03e1dd8 > code segment = base 0x0, limit 0xfffff, type 0x1b > = DPL 0, pres 1, def32 1, gran 1 > processor eflags = interrupt enabled, resume, IOPL = 0 > current process = 0 (swapper) > interrupt mask = none > kernel: type 12 trap, code=0 > Stopped at dsioctl+0x42: movl 0xc(%eax),%ecx > db> trace > dsioctl(c0900b80,40046304,c03e1e28,1,c090e844) at dsioctl+0x42 > diskioctl(c0900b80,40046304,c03e1e28,1,c0355b60) at diskioctl+0x6f > iso_get_ssector(c0900b80,c0355b60,0,c0909e00,c0355b60) at iso_get_ssector+0x2e > iso_mountroot(c0909e00,c0355b60,c03e1fb0,c0900e80,c090df30) at iso_mountroot+0x47 > cd9660_mount(c0909e00,0,0,0,c0355b60) at cd9660_mount+0x2c > vfs_mountroot_try(c02dc78a) at vfs_mountroot_try+0x13d > vfs_mountroot(0,3dec00,3e6000,0,c0120670) at vfs_mountroot+0x3c > mi_startup(0,0,0,0,0) at mi_startup+0x68 > begin() at begin+0x47 Can you find out what line of code in dsioctl is causing the problem? If you built a debug kernel, you can do the following: gdb -k kernel.debug list *(dsioctl+0x42) That should indicate which line in dsioctl is blowing up. Ken -- Kenneth Merry ken@kdm.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011115145615.A34719>