Panic with ATAng + atapicam

From: Daniel Eischen <eischen_at_vigrid.com>
Date: Wed, 10 Sep 2003 20:42:24 -0400 (EDT)
FYI, a fresh cvsup from yesterdays sources causes a panic with atapicam
in the kernel.  My previous kernel was before ATAng was imported.

Fatal trap 18: integer divide fault while in kernel mode
instruction pointer     = 0x8:0xc03dcd5b
stack pointer           = 0x10:0xd70977c0
frame pointer           = 0x10:0xd7097840
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         = 20 (swi3: cambio)
kernel: type 18 trap, code = 0
Stopeed at __qdivrem+0x3b: divl %ecx, %ecx
db> trace
__qdivrem(dec0addf,0,0,0,0) at __qdivrem+0x3b
__udivdi3(dec0addf,0,0,0,d7099910) at __udivdi3+0x2e
cam_calc_geometry(d7099910,1,c028f8c0,c04a1ab0,1) at cam_calc_geometry+0x37
atapi_action(c41ecd00,d7097910,d70978f8,c027cd1a,c049c800) at atapi_action+0x2a0
xpt_action(d7097910,c45ca50,1,1,20) at xpt_action+-x32a
dasetgeom(c41fd400,dec0adde,dec0adde,0,c41f0800) at dasetgeom+0x79
dadone(c41fd400,c41f1400,c0412745,0,c0485340) at dadone+0x3af
camisr(c0485340,0,c0412745,215,c1526790) at camisr+0x23f
ithread_loop(c151d580,d7097d48,c041259f,314,0) at ithread_loop+0x182
fork_exit(c0254f80,c151d580,d7097d48) at fork_exit+0xcf
fork_trampoline() at fork_trampoline+0x8
--- trap 0x1, eip = 0, esp=0xd7097a7c, ebp=0 ---

nm /boot/kernel/kernel | sort | more
...
c03dcb50 T __divdi3
c03dcbf0 T __moddi3
c03dcca0 t shl
c03dcd20 T __qdivrem
c03dd180 T __ucmpdi2
...

It also detects a CD being present when there isn't one present.
dmesg from kernel without atapicam:

Copyright (c) 1992-2003 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 5.1-CURRENT #2: Wed Sep 10 11:48:35 EDT 2003
    root_at_goldwing:/opt/FreeBSD/obj/opt/FreeBSD/src/src/sys/goldwing
Preloaded elf kernel "/boot/kernel/kernel.crashes" at 0xc05e8000.
Preloaded elf module "/boot/kernel/acpi.ko" at 0xc05e824c.
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel Pentium III (797.42-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0x683  Stepping = 3

Features=0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE>
real memory  = 536608768 (511 MB)
avail memory = 514768896 (490 MB)
Pentium Pro MTRR support enabled
npx0: [FAST]
npx0: <math processor> on motherboard
npx0: INT 16 interface
acpi0: <D815EA EA81510A> on motherboard
pcibios: BIOS version 2.10
Using $PIR table, 12 entries at 0xc00f2c00
    ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
acpi0: power button is handled as a fixed feature programming model.
Timecounter "ACPI-fast" frequency 3579545 Hz quality 0
    ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
unknown: I/O range not supported
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x408-0x40b on acpi0
acpi_cpu0: <CPU> port 0x530-0x537 on acpi0
acpi_button0: <Sleep Button> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
pcib0: slot 31 INTD is routed to irq 11
pcib0: slot 31 INTB is routed to irq 9
pcib0: slot 31 INTC is routed to irq 10
pcib0: slot 31 INTB is routed to irq 9
agp0: <Intel 82815 (i815 GMCH) host to PCI bridge> mem 0xf8000000-0xfbffffff at
device 0.0 on pci0
pcib1: <PCI-PCI bridge> at device 1.0 on pci0
pci2: <PCI bus> on pcib1
pcib0: slot 1 INTA is routed to irq 11
pcib1: slot 0 INTA is routed to irq 11
pci2: <display, VGA> at device 0.0 (no driver attached)
pcib2: <ACPI PCI-PCI bridge> at device 30.0 on pci0
pci1: <ACPI PCI bus> on pcib2
pcib2: slot 8 INTA is routed to irq 11
pcib2: slot 10 INTA is routed to irq 11
fxp0: <Intel 82801BA/CAM (ICH2/3) Pro/100 Ethernet> port 0xdf00-0xdf3f mem
0xfd9fe000-0xfd9fefff irq 11 at device 8.0 on pci1
fxp0: Ethernet address 00:d0:b7:c1:55:7d
miibus0: <MII bus> on fxp0
inphy0: <i82562ET 10/100 media interface> on miibus0
inphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
pcm0: <Creative EMU10K1> port 0xdf80-0xdf9f irq 11 at device 10.0 on pci1
pcm0: <SigmaTel STAC9708/11 AC97 Codec>
isab0: <PCI-ISA bridge> at device 31.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel ICH2 UDMA100 controller> port 0xffa0-0xffaf at device 31.1 on
pci0
ata0: at 0x1f0 irq 14 on atapci0
ata0: [MPSAFE]
ata1: at 0x170 irq 15 on atapci0
ata1: [MPSAFE]
uhci0: <Intel 82801BA/BAM (ICH2) USB controller USB-A> port 0xef40-0xef5f irq 11
at device 31.2 on pci0
usb0: <Intel 82801BA/BAM (ICH2) USB controller USB-A> on uhci0
usb0: USB revision 1.0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
pci0: <serial bus, SMBus> at device 31.3 (no driver attached)
uhci1: <Intel 82801BA/BAM (ICH2) USB controller USB-B> port 0xef80-0xef9f irq 10
at device 31.4 on pci0
usb1: <Intel 82801BA/BAM (ICH2) USB controller USB-B> on uhci1
usb1: USB revision 1.0
uhub1: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 2 ports with 2 removable, self powered
pcm1: <Intel ICH2 (82801BA)> port 0xef00-0xef3f,0xe800-0xe8ff irq 9 at device
31.5 on pci0
pcm1: <Analog Devices AD1885 AC97 Codec>
    ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
    ACPI-0175: *** Error: Method execution failed [\\_SB_.PCI0.SBRG.PS2M._STA]
(Node 0xc4042a20), AE_AML_REGION_LIMIT
atkbdc0: <Keyboard controller (i8042)> port 0x64,0x60 irq 1 on acpi0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
fdc0: <Enhanced floppy controller (i82077, NE72065 or clone)> port
0x3f7,0x3f4-0x3f5,0x3f2-0x3f3,0x3f0-0x3f1 irq 6 drq 2 on acpi0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
sio0 port 0x3f8-0x3ff irq 4 on acpi0
sio0: type 16550A
sio1 port 0x2f8-0x2ff irq 3 on acpi0
sio1: type 16550A
ppc0 port 0x378-0x37f irq 7 on acpi0
ppc0: Generic chipset (EPP/NIBBLE) in COMPATIBLE mode
ppbus0: <Parallel port bus> on ppc0
plip0: <PLIP network interface> on ppbus0
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0
orm0: <Option ROMs> at iomem 0xc8000-0xc97ff,0xc0000-0xc7fff on isa0
pmtimer0 on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
Timecounter "TSC" frequency 797416329 Hz quality 800
Timecounters tick every 10.000 msec
GEOM: create disk ad0 dp=0xc412ce70
ad0: 28613MB <MAXTOR 6L040J2> [58135/16/63] at ata0-master UDMA100
acd0: CDROM <SONY CD-ROM CDU4821> at ata1-master PIO4
GEOM: create disk afd0 dp=0xc41f887c
afd0: REMOVABLE <IOMEGA ZIP 100 ATAPI> at ata1-slave PIO3
GEOM: create disk da0 dp=0xc41fc050
cd0 at ata1 bus 0 target 0 lun 0
cd0: <SONY CD-ROM CDU4821 S0.P> Removable CD-ROM SCSI-0 device 
cd0: 16.000MB/s transfers
cd0: cd present [3737169375 x 3737169374 byte records]

Note CD is falsly detected as present above.

-- 
Dan Eischen
Received on Wed Sep 10 2003 - 15:42:26 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:22 UTC