Hi all, On Tue, 13 Sep 2005, Guennadi Liakhovetski wrote: > On Mon, 12 Sep 2005, James Bottomley wrote: > > > On Mon, 2005-09-05 at 23:50 +0200, Guennadi Liakhovetski wrote: > > > > > > 2) try to find some beta-testers by applying something like the below: > > > > OK, why don't we do this. I'll put it into scsi-misc-2.6; that will > > queue it for 2.6.14 and also put it in -mm. It will probably be a month > > at least before scsi-misc-2.6 goes into 2.6.14, so you have until that > > time to find problems in it and back it out ... > > You mean option 2? Then, please, take the one below - it will not give > false positives on dc395x. You were faster than I - I checked scsi-misc-2.6, you already applied the first version:-( But it will trigger on every dc395x, which is, of course, useless. Could you, please, replace it with the one below, or should I send an incremental patch? Really sorry. Thanks Guennadi --- Guennadi Liakhovetski Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@xxxxxx> Index: linux-2_6/drivers/scsi/dc395x.c =================================================================== RCS file: /usr/src/cvs/linux-2_6/drivers/scsi/dc395x.c,v retrieving revision 1.1.1.8 diff -u -p -r1.1.1.8 dc395x.c --- linux-2_6/drivers/scsi/dc395x.c 2 Sep 2005 19:16:29 -0000 1.1.1.8 +++ linux-2_6/drivers/scsi/dc395x.c 5 Sep 2005 20:38:23 -0000 @@ -976,6 +976,16 @@ } } +static inline void pio_trigger(void) +{ + static int feedback_requested; + + if (!feedback_requested) { + feedback_requested = 1; + printk(KERN_WARNING "%s: Please, contact <linux-scsi@xxxxxxxxxxxxxxx> " + "to help improve support for your system.\n", __FILE__); + } +} /* Prepare SRB for being sent to Device DCB w/ command *cmd */ static void build_srb(struct scsi_cmnd *cmd, struct DeviceCtlBlk *dcb, @@ -2320,6 +2330,7 @@ CFG2_WIDEFIFO); while (DC395x_read8(acb, TRM_S1040_SCSI_FIFOCNT) != 0x40) { u8 byte = DC395x_read8(acb, TRM_S1040_SCSI_FIFO); + pio_trigger(); *(srb->virt_addr)++ = byte; if (debug_enabled(DBG_PIO)) printk(" %02x", byte); @@ -2331,6 +2342,7 @@ /* Read the last byte ... */ if (srb->total_xfer_length > 0) { u8 byte = DC395x_read8(acb, TRM_S1040_SCSI_FIFO); + pio_trigger(); *(srb->virt_addr)++ = byte; srb->total_xfer_length--; if (debug_enabled(DBG_PIO)) @@ -2507,6 +2519,7 @@ if (debug_enabled(DBG_PIO)) printk(" %02x", (unsigned char) *(srb->virt_addr)); + pio_trigger(); DC395x_write8(acb, TRM_S1040_SCSI_FIFO, *(srb->virt_addr)++); Index: linux-2_6/drivers/scsi/tmscsim.c =================================================================== RCS file: /usr/src/cvs/linux-2_6/drivers/scsi/tmscsim.c,v retrieving revision 1.1.1.9 diff -u -p -r1.1.1.9 tmscsim.c --- linux-2_6/drivers/scsi/tmscsim.c 2 Sep 2005 19:16:29 -0000 1.1.1.9 +++ linux-2_6/drivers/scsi/tmscsim.c 5 Sep 2005 20:38:31 -0000 @@ -988,7 +988,15 @@ if( residual ) { + static int feedback_requested; bval = DC390_read8 (ScsiFifo); /* get one residual byte */ + + if (!feedback_requested) { + feedback_requested = 1; + printk(KERN_WARNING "%s: Please, contact <linux-scsi@xxxxxxxxxxxxxxx> " + "to help improve support for your system.\n", __FILE__); + } + ptr = (u8 *) bus_to_virt( pSRB->SGBusAddr ); *ptr = bval; pSRB->SGBusAddr++; xferCnt++; - : 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