[PATCH] Future Domain SCSI controller fix for 2.4.x

Mike Harmon (mikeharmon@usa.net)
Mon, 14 May 2001 17:07:32 -0400


Hi, the driver for this card seems to have missed out on one of the changes
to the SCSI layer between 2.2 and 2.4. Specifically, scsi_set_pci_device
now wants an entire SCSI host object, instead of just the pci_dev part.
Without the patch, we get a null kernel pointer dereference when the driver
is initialized. With the single-line update, the driver works again. I've
also included a patch to change an udelay loop into the equivalent mdelay
call for code readability purposes. These are both against 2.4.4; please
apply.

-- 
Email:  mikeharmon@usa.net

--- linux-2.4.4/drivers/scsi/fdomain.old Mon May 14 16:33:11 2001 +++ linux-2.4.4/drivers/scsi/fdomain.c Fri May 4 11:07:41 2001 inline static void fdomain_make_bus_idle( void ) @@ -971,7 +969,7 @@ return 0; shpnt->irq = interrupt_level; shpnt->io_port = port_base; - scsi_set_pci_device(shpnt->pci_dev, pdev); + scsi_set_pci_device(shpnt, pdev); shpnt->n_io_port = 0x10; print_banner( shpnt );

--- linux-2.4.4/drivers/scsi/fdomain.old Mon May 14 16:33:11 2001 +++ linux-2.4.4/drivers/scsi/fdomain.c Fri May 4 11:07:41 2001 @@ -587,9 +587,7 @@ static void do_pause( unsigned amount ) /* Pause for amount*10 milliseconds */ { - do { - udelay(10*1000); - } while (--amount); + mdelay(10*amount); }

2@2 - 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/