The patch below removes an unused function from drivers/scsi/wd7000.c .
I've tested the compilation with 2.5.72-mm2.
cu
Adrian
--- linux-2.5.72-mm2/drivers/scsi/wd7000.c.old 2003-06-22 01:07:59.000000000 +0200
+++ linux-2.5.72-mm2/drivers/scsi/wd7000.c 2003-06-22 01:08:34.000000000 +0200
@@ -1605,22 +1605,6 @@
}
/*
- * I have absolutely NO idea how to do an abort with the WD7000...
- */
-static int wd7000_abort(Scsi_Cmnd * SCpnt)
-{
- Adapter *host = (Adapter *) SCpnt->device->host->hostdata;
-
- if (inb(host->iobase + ASC_STAT) & INT_IM) {
- printk("wd7000_abort: lost interrupt\n");
- wd7000_intr_handle(host->irq, NULL, NULL);
- return FAILED;
- }
- return FAILED;
-}
-
-
-/*
* I also have no idea how to do a reset...
*/
On Sul, 2003-06-22 at 01:05, Adrian Bunk wrote:
> The patch below removes an unused function from drivers/scsi/wd7000.c .
>
> I've tested the compilation with 2.5.72-mm2.
What you actually need to do for wd7000 is to make that a new_eh abort
handler. The card every so often loses an IRQ (or we do something that
upsets it - who knows). In that situation we fake an IRQ event which
causes the card to recover and life to continue happily.
Providing you hold the lock all will then untangle.