patch-2.0.8 linux/drivers/scsi/sd.c
Next file: linux/drivers/scsi/sr.c
Previous file: linux/drivers/scsi/README.BusLogic
Back to the patch index
Back to the overall index
-  Lines: 13
-  Date:
Thu Jul 18 14:28:48 1996
-  Orig file: 
v2.0.7/linux/drivers/scsi/sd.c
-  Orig date: 
Wed Jul 10 15:20:27 1996
diff -u --recursive --new-file v2.0.7/linux/drivers/scsi/sd.c linux/drivers/scsi/sd.c
@@ -729,9 +729,9 @@
 	   ((unsigned int) SCpnt->request.bh->b_data-1) == ISA_DMA_THRESHOLD) count--;
 #endif
 	SCpnt->use_sg = count;  /* Number of chains */
-	count = 512;/* scsi_malloc can only allocate in chunks of 512 bytes */
-	while( count < (SCpnt->use_sg * sizeof(struct scatterlist))) 
-	    count = count << 1;
+	/* scsi_malloc can only allocate in chunks of 512 bytes */
+	count  = (SCpnt->use_sg * sizeof(struct scatterlist) + 511) & ~511;
+
 	SCpnt->sglist_len = count;
 	max_sg = count / sizeof(struct scatterlist);
 	if(SCpnt->host->sg_tablesize < max_sg) 
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov