[PATCH] Re: 2.6.1-rc1: SCSI: `TIMEOUT' redefined

From: Patrick Mansfield
Date: Tue Jan 06 2004 - 17:44:47 EST


On Tue, Jan 06, 2004 at 07:33:25PM +0100, Adrian Bunk wrote:
> On Wed, Dec 31, 2003 at 12:36:49AM -0800, Linus Torvalds wrote:
> >...
> > Summary of changes from v2.6.0 to v2.6.1-rc1
> > ============================================
> >...
> > Patrick Mansfield:
> > o consolidate and log scsi command on send and completion
> >...
>
> This adds a #define TIMEOUT to scsi.h conflicting with a different
> TIMEOUT #define in drivers/scsi/eata_generic.h:

Sorry Adrian, here is a patch renaming TIMEOUT to TIMEOUT_ERROR. Still
not a good name for the usage in SCSI core, but it does not conflict, and
matches the other names for the IO completion results (SUCCESS, FAILED,
etc., they and others should really be prefixed with at least SCSI).

eata does not use the TIMEOUT it defines, but there are enough defines of
TIMEOUT that it could be a problem in other drivers.

Only compile tested for eata driver.

--- 1.132/drivers/scsi/scsi.c Tue Sep 30 07:24:17 2003
+++ edited/drivers/scsi/scsi.c Tue Jan 6 13:13:34 2004
@@ -441,7 +441,7 @@
case FAILED:
printk("FAILED ");
break;
- case TIMEOUT:
+ case TIMEOUT_ERROR:
/*
* If called via scsi_times_out.
*/
===== drivers/scsi/scsi_error.c 1.67 vs edited =====
--- 1.67/drivers/scsi/scsi_error.c Mon Sep 29 05:37:28 2003
+++ edited/drivers/scsi/scsi_error.c Tue Jan 6 13:12:58 2004
@@ -164,7 +164,7 @@
**/
void scsi_times_out(struct scsi_cmnd *scmd)
{
- scsi_log_completion(scmd, TIMEOUT);
+ scsi_log_completion(scmd, TIMEOUT_ERROR);
if (unlikely(!scsi_eh_scmd_add(scmd, SCSI_EH_CANCEL_CMD))) {
panic("Error handler thread not present at %p %p %s %d",
scmd, scmd->device->host, __FILE__, __LINE__);
===== include/scsi/scsi.h 1.15 vs edited =====
--- 1.15/include/scsi/scsi.h Mon Sep 29 05:39:10 2003
+++ edited/include/scsi/scsi.h Tue Jan 6 13:12:42 2004
@@ -302,7 +302,7 @@
#define QUEUED 0x2004
#define SOFT_ERROR 0x2005
#define ADD_TO_MLQUEUE 0x2006
-#define TIMEOUT 0x2007
+#define TIMEOUT_ERROR 0x2007

/*
* Midlevel queue return values.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/