Re: Panic in "irq15: ata1" (perhaps just ATAPICAM...?)

From: Damian Gerow <dgerow_at_afflictions.org>
Date: Fri, 2 Jul 2004 00:32:01 -0400
Thus spake Brian Fundakowski Feldman (green_at_freebsd.org) [01/07/04 15:10]:
: Can you get a crashdump?  They seem to be broken for me (and lock up the
: system instead), but if you can do "call doadump" from the ddb> prompt
: you should be able to get it so we can further debug what's happening.
: It might be telling that you're able to get a panic without using DMA
: whereas I get a lockup with DMA, and quite possibly the same problem.
: Is there anything in dmesg, like messages about resetting devices?

I have a crashdump, and I've got gdb6 (from the ports) installed and
running.

You can find a dmesg (with debug.bootverbose=1) at
http://www.afflictions.org/dmesg.

I /do/ get continuous errors when dealing with acd1:

    acd1: FAILURE - READ_CD ILLEGAL REQUEST asc=0x64 ascq=0x00 error=4<ABORTED>

(I'm pretty sure that one is because EMI has broken the redbook standard.)

And cd1:

    Jul  1 13:04:29 dementia kernel: acd1: FAILURE - ATAPI_RESET no interrupt

I generally get at /least/ one of those per track.

As for getting the whole *aip -- I've no clue what I'm doing right now.
Lots of things look like excessive information.  I can be a monkey, though
-- just let me know what I'm looking for, and I'll pull the information out.

I /think/ this might be helpful:

    # cd cd /usr/obj/usr/src/sys/dementia
    # gdb6 -k kernel.debug /var/crash/vmcore.1 
    GNU gdb 20040615 [GDB v6.x for FreeBSD]
    Copyright 2004 Free Software Foundation, Inc.
    GDB is free software, covered by the GNU General Public License, and you are
    welcome to change it and/or distribute copies of it under certain
    conditions.
    Type "show copying" to see the conditions.
    There is absolutely no warranty for GDB.  Type "show warranty" for details.
    This GDB was configured as "i386-portbld-freebsd5.2"...
    panic messages:
    ---
    Fatal trap 12: page fault while in kernel mode
    cpuid = 0; apic id = 00
    fault virtual address   = 0xc1c55eb0
    fault code              = supervisor write, page not present
    instruction pointer     = 0x8:0xc049a4a9
    stack pointer           = 0x10:0xd42bac74
    frame pointer           = 0x10:0xd42baca8
    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         = 26 (irq15: ata1)
    kernel: type 12 trap, code=0
    Dumping 511 MB
     16 32 48 64 80 96 112 128 144 160 176 192 208 224 240 256 272 288 304 320 336 352 368 384 400 416 432 448 464 480 496
    ---
    #0  doadump () at /usr/src/sys/kern/kern_shutdown.c:236
    236             dumping++;
    doadump () at /usr/src/sys/kern/kern_shutdown.c:236
    236             dumping++;
    (kgdb) list *0xc1c55eb0
    No source file for address 0xc1c55eb0.
    (kgdb) list *0xc049a4a9
    0xc049a4a9 is in ata_pio_read (cpufunc.h:217).
    212     }
    213     
    214     static __inline void
    215     insw(u_int port, void *addr, size_t cnt)
    216     {
    217             __asm __volatile("cld; rep; insw"
    218                              : "+D" (addr), "+c" (cnt)
    219                              : "d" (port)
    220                              : "memory");
    221     }
    (kgdb)

Let me know if more is needed, or if another panic is required.

  - Damian
Received on Fri Jul 02 2004 - 02:33:18 UTC

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