patch-1.3.78 linux/drivers/scsi/scsi.c

Next file: linux/drivers/scsi/scsi.h
Previous file: linux/drivers/scsi/fdomain.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v1.3.77/linux/drivers/scsi/scsi.c linux/drivers/scsi/scsi.c
@@ -2153,7 +2153,7 @@
     
     if(SCset){
 	oldto = SCset->timeout - used;
-	SCset->timeout = timeout + used;
+	SCset->timeout = timeout;
     }
 
     least = 0xffffffff;
@@ -2161,7 +2161,8 @@
     for(host = scsi_hostlist; host; host = host->next)
 	for(SCpnt = host->host_queue; SCpnt; SCpnt = SCpnt->next)
 	    if (SCpnt->timeout > 0) {
-		SCpnt->timeout -= used;
+	        if (SCpnt != SCset)
+		  SCpnt->timeout -= used;
 		if(SCpnt->timeout <= 0) SCpnt->timeout = -1;
 		if(SCpnt->timeout > 0 && SCpnt->timeout < least)
 		    least = SCpnt->timeout;

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov with Sam's (original) version
of this