lkml.org 
[lkml]   [2006]   [Sep]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Subject[PATCH] libata: refuse to register IRQless ports
    From
    Date
    We don't currently support pure polled operation so when we meet a BIOS
    which forgot to assign an IRQ to a PCI device it all goes a little pear
    shaped. Trap this case properly.

    Signed-off-by: Alan Cox <alan@redhat.com>

    diff -u --new-file --recursive --exclude-from /usr/src/exclude linux.vanilla-2.6.18-mm1/drivers/ata/libata-core.c linux-2.6.18-mm1/drivers/ata/libata-core.c
    --- linux.vanilla-2.6.18-mm1/drivers/ata/libata-core.c 2006-09-25 12:10:08.000000000 +0100
    +++ linux-2.6.18-mm1/drivers/ata/libata-core.c 2006-09-26 11:47:57.041010560 +0100
    @@ -5460,6 +5460,11 @@
    int rc;

    DPRINTK("ENTER\n");
    +
    + if (ent->irq == 0) {
    + dev_printk(KERN_ERR, dev, "is not available: No interrupt assigned.\n");
    + return 0;
    + }
    /* alloc a container for our list of ATA ports (buses) */
    host = kzalloc(sizeof(struct ata_host) +
    (ent->n_ports * sizeof(void *)), GFP_KERNEL);
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2006-09-26 18:17    [W:0.042 / U:0.860 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site