Re: After install - Fatal trap 18 ATA problem?

From: Yar Tikhiy <yar_at_comp.chem.msu.su>
Date: Mon, 19 Jun 2006 22:09:32 +0400
On Fri, Jun 16, 2006 at 01:32:55PM -0400, Anish Mistry wrote:
> I'm trying to get FreeBSD installed on one of my systems and I'm 
> getting the error stated below.  I did have FreeBSD 6-STABLE 
> installed a few months ago on this very system.  The only change is 
> that FreeBSD is now installed on the second harddrive instead of the 
> first.  This is using the -CURRENT snapshot for this month.  The 
> install goes just fine.  I also get a very similar error when I 
> install 6.1 too.
> 
> This seems to be the same problem as:
> http://unix.derkeiler.com/Mailing-Lists/FreeBSD/stable/2006-03/msg00539.html
> 
> But I don't have a built-in compact flash reader attached via. ATA.
> 
> Full verbose boot+backtrace:
> http://am-productions.biz/docs/boot-panic-script.txt.gz
> 
> rr232x: no controller detected.
> ata0-slave: pio=PIO4 wdma=WDMA2 udma=UDMA100 cable=80 wire
> ata0-master: pio=PIO4 wdma=WDMA2 udma=UDMA66 cable=80 wire
> ad0: setting PIO4 on nForce2 Pro chip
> ad0: setting UDMA66 on nForce2 Pro chip
> ad0: 17206MB <IBM DJNA-371800 J78OA30K> at ata0-master UDMA66
> 
> 
> Fatal trap 18: integer divide fault while in kernel mode
> cpuid = 0; apic id = 00
> instruction pointer	= 0x20:0xc089b49f
> stack pointer	        = 0x28:0xc0c20b64
> frame pointer	        = 0x28:0xc0c20bec
> 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)
> [thread pid 0 tid 0 ]
> Stopped at      __qdivrem+0x3b: divl    %ecx,%eax
> db> bt
> Tracing pid 0 tid 0 td 0xc0a02fb8
> __qdivrem(219b700,0,0,0,0) at __qdivrem+0x3b
> __udivdi3(219b700,0,0,0) at __udivdi3+0x16
                      ^^^
Looks like an attempt to divide something (0x219b700) by zero
using quad_t arithmetics.

> ad_describe(c26e8580,c26e8580,c262c280,c265e400,c25ec200) at 
> ad_describe+0x1b3
> ad_attach(c26e8580) at ad_attach+0x1e7
> device_attach(c26e8580,c0957850,c26e8580,c265e000,c265e400) at 
> device_attach+0x58
> device_probe_and_attach(c26e8580) at device_probe_and_attach+0xe0
> bus_generic_attach(c25d2a80,c25d2a80,1,0,c26e8580) at 
> bus_generic_attach+0x16
> ata_identify(c25d2a80) at ata_identify+0x1c8
> ata_boot_attach(0) at ata_boot_attach+0x3e
> run_interrupt_driven_config_hooks(0,c1ec00,c1e000,0,c0450af5) at 
> run_interrupt_driven_config_hooks+0x18
> mi_startup() at mi_startup+0x96
> begin() at begin+0x2c
> db> ps
> -- 
> Anish Mistry

FWIW, I saw an integer divide fault apparently related to the ata
driver when I tried to test a low-end VIA-based mobo with FreeBSD.
I gave it away soon and had had no time for debugging though.

Could you see using gdb what C code is at ad_describe+0x1b3
in your kernel?

-- 
Yar
Received on Mon Jun 19 2006 - 16:09:43 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:57 UTC