[lkml]   [2005]   [Feb]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    Patch in this message
    Subject2.6.11-rc4 libata-core (irq 30: nobody cared!)
    I see this problem with the sata_sil.c driver and
    SII3112 card. Others have reported seeing a similar

    There seems to be a pending interrupt from the drive,
    but the code has already set the NIEN bit, so the
    ATA_IRQ_TRAP macro doesn't help (the ata_interrupt
    handler never calls ata_host_intr in this case).

    I've implemented a quick workaround hack, but others
    should investigate a better fix (maybe acking pending
    interrupts before setting NIEN bit in ata_tf_load??)


    --- libata-core.c.orig 2005-02-23 17:41:03.831836464
    +++ libata-core.c 2005-02-23 17:31:07.930427248
    @@ -3158,6 +3158,11 @@
    if (qc && (!(qc->tf.ctl &
    ATA_NIEN))) {
    handled |=
    ata_host_intr(ap, qc);
    + else {
    + /* bk - just ack
    spurious interrupt here - temp workaround */
    + ata_irq_ack(ap, 0);
    + printk(KERN_WARNING
    "ata%d: irq trap\n", ap->id);
    + }

    Linux version 2.6.11-rc4 (root@localhost.localdomain)
    (gcc version 3.3.2) #27 Wed Feb 23 17:49:05 PST 2005
    Built 1 zonelists
    Kernel command line: root=/dev/ram rw ramdisk=36000
    PID hash table entries: 1024 (order: 10, 16384 bytes)
    Console: colour dummy device 80x25
    Dentry cache hash table entries: 32768 (order: 5,
    131072 bytes)
    Inode-cache hash table entries: 16384 (order: 4, 65536
    Memory: 120832k available (2136k kernel code, 916k
    data, 108k init, 0k highmem)
    Mount-cache hash table entries: 512 (order: 0, 4096
    checking if image is isn't (no cpio
    magic); looks like an initrd
    Freeing initrd memory: 5709k freed
    NET: Registered protocol family 16
    PCI: Probing PCI hardware
    SCSI subsystem initialized
    Installing knfsd (copyright (C) 1996
    Initializing Cryptographic API
    Serial: 8250/16550 driver $Revision: 1.90 $ 6 ports,
    IRQ sharing disabled
    ttyS0 at MMIO 0x0 (irq = 0) is a 16550A
    ttyS1 at MMIO 0x0 (irq = 1) is a 16550A
    io scheduler noop registered
    io scheduler anticipatory registered
    io scheduler deadline registered
    io scheduler cfq registered
    RAMDISK driver initialized: 16 RAM disks of 36000K
    size 1024 blocksize
    loop: loaded (max 8 devices)
    mal0: Initialized, 1 tx channels, 1 rx channels
    emac: IBM EMAC Ethernet driver, version 2.0
    Maintained by Benjamin Herrenschmidt
    eth0: IBM emac, MAC 08:00:3e:26:15:59
    eth0: Found Generic MII PHY (0x06)
    Uniform Multi-Platform E-IDE driver Revision:
    ide: Assuming 33MHz system bus speed for PIO modes;
    override with idebus=xx
    ata1: SATA max UDMA/100 cmd 0xC9002E80 ctl 0xC9002E8A
    bmdma 0xC9002E00 irq 30
    ata2: SATA max UDMA/100 cmd 0xC9002EC0 ctl 0xC9002ECA
    bmdma 0xC9002E08 irq 30
    irq 30: nobody cared!
    Call trace:
    [c0005630] dump_stack+0x18/0x28
    [c003ae0c] __report_bad_irq+0x34/0xac
    [c003af38] note_interrupt+0x98/0xd4
    [c003a92c] __do_IRQ+0x15c/0x160
    [c0003e54] do_IRQ+0x50/0x98
    [c0002f64] ret_from_except+0x0/0x18
    [c0003ed4] default_idle+0x38/0x5c
    [c0003f20] cpu_idle+0x28/0x38
    [c00023a4] rest_init+0x24/0x34
    [c02dc614] start_kernel+0x170/0x1a8
    [c00022a4] start_here+0x44/0xb0
    [<c015fc28>] (ata_interrupt+0x0/0x27c)
    Disabling IRQ #30
    ata1: dev 0 ATA, max UDMA7, 234493056 sectors: lba48
    eth0: Link is Up
    eth0: Speed: 100, Full duplex.

    Do you Yahoo!?
    Yahoo! Mail - 250MB free storage. Do more. Manage less.
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at
     \ /
      Last update: 2005-03-22 14:10    [W:0.025 / U:1.868 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site