[ale] CD Burning / Kernel Panic
Danny Cox
danscox at mindspring.com
Thu Aug 8 11:53:17 EDT 2002
Christopher,
On Thu, 2002-08-08 at 10:57, Christopher R. Curzio wrote:
> Wow, I didn't know the ksymoops utility existed. Neat.
Well, not so neat. See below.
> I put the data from the panic into a text file and ran it through
> ksymoops. Here's what came out:
>
> >>EIP; c01c7980 <idescsi_end_request+74/254> <=====
>
> >>ebx; c027ace0 <idescsi_driver+0/40>
> >>edx; c02e23cc <ide_hwifs+48c/1ea0>
>
> Trace; c01acffb <ide_error+137/188>
> Trace; c01c7b60 <idescsi_pc_intr+0/248>
> Trace; c01adc38 <ide_timer_expiry+19c/1ec>
> Trace; c01ada9c <ide_timer_expiry+0/1ec>
> Trace; c01184fc <timer_bh+218/254>
> Trace; c0118579 <do_timer+41/74>
> Trace; c010aa5a <timer_interrupt+72/120>
> Trace; c01155ce <bh_action+1a/44>
> Trace; c011550c <tasklet_hi_action+40/64>
> Trace; c0115331 <do_softirq+59/a8>
> Trace; c0107f19 <do_IRQ+9d/b0>
> Trace; c0105194 <default_idle+0/28>
> Trace; c0105194 <default_idle+0/28>
> Trace; c0109d38 <call_do_IRQ+5/d>
> Trace; c0105194 <default_idle+0/28>
> Trace; c0105194 <default_idle+0/28>
> Trace; c01051b7 <default_idle+23/28>
> Trace; c0105216 <cpu_idle+3a/50>
> Trace; c0105000 <_stext+0/0>
> Trace; c0105027 <rest_init+27/28>
>
> Code; c01c7980 <idescsi_end_request+74/254>
> 00000000 <_EIP>:
> Code; c01c7980 <idescsi_end_request+74/254> <=====
> 0: c7 80 80 01 00 00 00 movl $0x70000,0x180(%eax) <=====
> Code; c01c7987 <idescsi_end_request+7b/254>
> 7: 00 07 00
> Code; c01c798a <idescsi_end_request+7e/254>
> a: 83 7c 24 10 00 cmpl $0x0,0x10(%esp,1)
> Code; c01c798f <idescsi_end_request+83/254>
> f: 0f 84 74 01 00 00 je 189 <_EIP+0x189> c01c7b09
> <idescsi_end_request+1fd/254>
Well, the stack backtrace look peculiar. We have a bunch of functions
listed twice, and I don't think they're recursive <smile/>, as well as
an "_stext+0/0", which isn't a function, really. The number after the /
in each instance is the length of that function, so....
Nevertheless, the code at that point looks like it was trying to do
"pc->scsi_cmd->result = DID_ERROR << 16;", and one of pc/scsi_cmd is
bad. That's probably either bad memory, bad other h/w, or incorrect
code. It's also saying that whatever it was trying to do, the request
had too many errors to succeed (the statement before reads: "if
(rq->errors >= ERROR_MAX)...".
What kernel are you running?
--
kernel, n.: A part of an operating system that preserves the
medieval traditions of sorcery and black art.
Danny
---
This message has been sent through the ALE general discussion list.
See http://www.ale.org/mailing-lists.shtml for more info. Problems should be
sent to listmaster at ale dot org.
More information about the Ale
mailing list