* New SCSI host_byte status code.
@ 2004-03-09 13:06 Naveen Burmi
0 siblings, 0 replies; only message in thread
From: Naveen Burmi @ 2004-03-09 13:06 UTC (permalink / raw)
To: linux-scsi; +Cc: davmyers, Clay Haapala
[-- Attachment #1: Type: text/plain, Size: 381 bytes --]
At present there is no way to retry, if allowed, a scsi command without
decrementing the scsi command's retry count.
Please find a patch attached, which is submitted, for adding a new host_byte
status code called "DID_IMM_RETRY". This enables the Low Level SCSI drivers
to initiate retry of a scsi command without decrementing the scsi commad's
retry count.
Thanks,
Naveen.
[-- Attachment #2: DID_IMM_RETRY.patch --]
[-- Type: text/x-diff, Size: 1707 bytes --]
diff -Nuar linux-2.6.3/drivers/scsi/constants.c linux-2.6.3.new/drivers/scsi/constants.c
--- linux-2.6.3/drivers/scsi/constants.c 2004-02-25 17:11:53.212334320 +0530
+++ linux-2.6.3.new/drivers/scsi/constants.c 2004-02-25 17:10:04.187908552 +0530
@@ -1135,7 +1135,7 @@
static const char * hostbyte_table[]={
"DID_OK", "DID_NO_CONNECT", "DID_BUS_BUSY", "DID_TIME_OUT", "DID_BAD_TARGET",
"DID_ABORT", "DID_PARITY", "DID_ERROR", "DID_RESET", "DID_BAD_INTR",
-"DID_PASSTHROUGH", "DID_SOFT_ERROR", NULL};
+"DID_PASSTHROUGH", "DID_SOFT_ERROR", "DID_IMM_RETRY", NULL};
void print_hostbyte(int scsiresult)
{ static int maxcode=0;
diff -Nuar linux-2.6.3/drivers/scsi/scsi_error.c linux-2.6.3.new/drivers/scsi/scsi_error.c
--- linux-2.6.3/drivers/scsi/scsi_error.c 2004-02-25 17:11:48.453057840 +0530
+++ linux-2.6.3.new/drivers/scsi/scsi_error.c 2004-02-25 17:08:53.324681400 +0530
@@ -1181,6 +1181,8 @@
*/
case DID_SOFT_ERROR:
goto maybe_retry;
+ case DID_IMM_RETRY:
+ return NEEDS_RETRY;
case DID_ERROR:
if (msg_byte(scmd->result) == COMMAND_COMPLETE &&
diff -Nuar linux-2.6.3/include/scsi/scsi.h linux-2.6.3.new/include/scsi/scsi.h
--- linux-2.6.3/include/scsi/scsi.h 2004-02-25 17:12:36.435763360 +0530
+++ linux-2.6.3.new/include/scsi/scsi.h 2004-02-25 17:07:45.909930000 +0530
@@ -266,6 +266,7 @@
#define DID_BAD_INTR 0x09 /* Got an interrupt we weren't expecting. */
#define DID_PASSTHROUGH 0x0a /* Force command past mid-layer */
#define DID_SOFT_ERROR 0x0b /* The low level driver just wish a retry */
+#define DID_IMM_RETRY 0x0c /* Retry without decrementing retry count */
#define DRIVER_OK 0x00 /* Driver status */
/*
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2004-03-09 13:06 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-03-09 13:06 New SCSI host_byte status code Naveen Burmi
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox