Ok my attempt to get the card failed so we are going to have to do this the hard way. See where this patch crashes and what it prints (On top of the other patches) diff -u --new-file --recursive --exclude-from /usr/src/exclude linux.vanilla-2.6.24-rc8-mm1/drivers/scsi/initio.c linux-2.6.24-rc8-mm1/drivers/scsi/initio.c --- linux.vanilla-2.6.24-rc8-mm1/drivers/scsi/initio.c 2008-01-19 14:22:43.000000000 +0000 +++ linux-2.6.24-rc8-mm1/drivers/scsi/initio.c 2008-01-21 14:54:48.000000000 +0000 @@ -2537,10 +2537,12 @@ struct Scsi_Host *dev = dev_id; unsigned long flags; int r; - + + printk("ISR\n"); spin_lock_irqsave(dev->host_lock, flags); r = initio_isr((struct initio_host *)dev->hostdata); spin_unlock_irqrestore(dev->host_lock, flags); + printk("ISR DONE %d\n", r); if (r) return IRQ_HANDLED; else @@ -2643,6 +2645,7 @@ struct initio_host *host = (struct initio_host *) cmd->device->host->hostdata; struct scsi_ctrl_blk *cmnd; + printk("SCB QUEUE\n"); cmd->scsi_done = done; cmnd = initio_alloc_scb(host); @@ -2650,7 +2653,9 @@ return SCSI_MLQUEUE_HOST_BUSY; initio_build_scb(host, cmnd, cmd); + printk("SCB EXEC\n"); initio_exec_scb(host, cmnd); + printk("SCB EXEC DONE\n"); return 0; } @@ -2766,6 +2771,8 @@ struct scsi_cmnd *cmnd; /* Pointer to SCSI request block */ struct initio_host *host; struct scsi_ctrl_blk *cblk; + + printk("SCB POST\n"); host = (struct initio_host *) host_mem; cblk = (struct scsi_ctrl_blk *) cblk_mem; @@ -2934,9 +2941,11 @@ pci_set_drvdata(pdev, shost); + printk("SAH\n"); error = scsi_add_host(shost, &pdev->dev); if (error) goto out_free_irq; + printk("SSH\n"); scsi_scan_host(shost); return 0; out_free_irq: - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html