patch-2.4.0-test2 linux/drivers/scsi/scsi_lib.c

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

diff -u --recursive --new-file v2.4.0-test1/linux/drivers/scsi/scsi_lib.c linux/drivers/scsi/scsi_lib.c
@@ -855,10 +855,9 @@
 	 * if the device itself is blocked, or if the host is fully
 	 * occupied.
 	 */
-	if (SHpnt->in_recovery
-	    || q->plugged) {
+	if (SHpnt->in_recovery || q->plugged)
 		return;
-	}
+
 	/*
 	 * To start with, we keep looping until the queue is empty, or until
 	 * the host is no longer able to accept any more requests.
@@ -869,10 +868,8 @@
 		 * released the lock and grabbed it again, so each time
 		 * we need to check to see if the queue is plugged or not.
 		 */
-		if (SHpnt->in_recovery
-		    || q->plugged) {
+		if (SHpnt->in_recovery || q->plugged)
 			return;
-		}
 
 		/*
 		 * If the device cannot accept another request, then quit.
@@ -1019,8 +1016,7 @@
 			 * We have copied the data out of the request block - it is now in
 			 * a field in SCpnt.  Release the request block.
 			 */
-			req->rq_status = RQ_INACTIVE;
-			wake_up(&wait_for_request);
+			blkdev_release_request(req);
 		}
 		/*
 		 * Now it is finally safe to release the lock.  We are

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)