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

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

diff -u --recursive --new-file v2.1.101/linux/drivers/scsi/scsi.c linux/drivers/scsi/scsi.c
@@ -1457,6 +1457,7 @@
     memcpy ((void *) SCpnt->data_cmnd , (const void *) cmnd, 12);
     SCpnt->reset_chain = NULL;
     SCpnt->serial_number = 0;
+    SCpnt->serial_number_at_timeout = 0;
     SCpnt->bufflen = bufflen;
     SCpnt->buffer = buffer;
     SCpnt->flags = 0;
@@ -1526,6 +1527,10 @@
       return;
     }
 
+  /* Set the serial numbers back to zero */
+  SCpnt->serial_number = 0;
+  SCpnt->serial_number_at_timeout = 0;
+
   SCpnt->state = SCSI_STATE_BHQUEUE;
   SCpnt->owner = SCSI_OWNER_BH_HANDLER;
   SCpnt->bh_next = NULL;
@@ -2300,6 +2305,8 @@
 	    return(-ENOSYS);  /* We do not yet support unplugging */
 
 	scan_scsis (HBA_ptr, 1, channel, id, lun);
+	if (HBA_ptr->select_queue_depths != NULL)
+		(HBA_ptr->select_queue_depths)(HBA_ptr, HBA_ptr->host_queue);
 	return(length);
 
     }

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov