summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbde <bde@FreeBSD.org>1998-08-18 03:54:39 +0000
committerbde <bde@FreeBSD.org>1998-08-18 03:54:39 +0000
commit605f4cb33bb28225fcbe534bb74245be8ad29185 (patch)
tree109a7cecda2a9e3df0d2cdc55a84655fcdff9136
parent7300b9a59ccdfc6e3f55a4eb03f9b938808b4fc9 (diff)
downloadFreeBSD-src-605f4cb33bb28225fcbe534bb74245be8ad29185.zip
FreeBSD-src-605f4cb33bb28225fcbe534bb74245be8ad29185.tar.gz
Quick fix for breakage of read clustering on non-IDE drives. Read
clustering is obsolescent technology so hardly anyone noticed. On a DORS 32160 SCSI drive with 4 tags, read clustering makes very little difference even for huge sequential reads. However, on a ZIP SCSI drive with 0 tags, the minimum overhead per block is about 40 msec, so very large clusters must be used to get anywhere near the maximum transfer rate. Using clusters consisting of 1 8K block reduces the transfer rate to about 250K/sec. Under msdosfs, missing read clustering is normal and a cluster size of 1 512 byte block reduces the transfer rate to about 25K/sec. Broken in: rev.1.18
-rw-r--r--sys/gnu/ext2fs/ext2_bmap.c4
-rw-r--r--sys/gnu/fs/ext2fs/ext2_bmap.c4
-rw-r--r--sys/ufs/ufs/ufs_bmap.c4
3 files changed, 6 insertions, 6 deletions
diff --git a/sys/gnu/ext2fs/ext2_bmap.c b/sys/gnu/ext2fs/ext2_bmap.c
index 176b7dc..8663885 100644
--- a/sys/gnu/ext2fs/ext2_bmap.c
+++ b/sys/gnu/ext2fs/ext2_bmap.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)ufs_bmap.c 8.7 (Berkeley) 3/21/95
- * $Id: ufs_bmap.c,v 1.20 1998/02/06 12:14:17 eivind Exp $
+ * $Id: ufs_bmap.c,v 1.21 1998/07/04 20:45:39 julian Exp $
*/
#include <sys/param.h>
@@ -163,7 +163,7 @@ ufs_bmaparray(vp, bn, bnp, ap, nump, runp, runb)
maxrun -= 1;
}
- if (maxrun == 0) {
+ if (maxrun <= 0) {
vp->v_maxio = DFLTPHYS;
maxrun = DFLTPHYS / blksize;
maxrun -= 1;
diff --git a/sys/gnu/fs/ext2fs/ext2_bmap.c b/sys/gnu/fs/ext2fs/ext2_bmap.c
index 176b7dc..8663885 100644
--- a/sys/gnu/fs/ext2fs/ext2_bmap.c
+++ b/sys/gnu/fs/ext2fs/ext2_bmap.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)ufs_bmap.c 8.7 (Berkeley) 3/21/95
- * $Id: ufs_bmap.c,v 1.20 1998/02/06 12:14:17 eivind Exp $
+ * $Id: ufs_bmap.c,v 1.21 1998/07/04 20:45:39 julian Exp $
*/
#include <sys/param.h>
@@ -163,7 +163,7 @@ ufs_bmaparray(vp, bn, bnp, ap, nump, runp, runb)
maxrun -= 1;
}
- if (maxrun == 0) {
+ if (maxrun <= 0) {
vp->v_maxio = DFLTPHYS;
maxrun = DFLTPHYS / blksize;
maxrun -= 1;
diff --git a/sys/ufs/ufs/ufs_bmap.c b/sys/ufs/ufs/ufs_bmap.c
index 176b7dc..8663885 100644
--- a/sys/ufs/ufs/ufs_bmap.c
+++ b/sys/ufs/ufs/ufs_bmap.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)ufs_bmap.c 8.7 (Berkeley) 3/21/95
- * $Id: ufs_bmap.c,v 1.20 1998/02/06 12:14:17 eivind Exp $
+ * $Id: ufs_bmap.c,v 1.21 1998/07/04 20:45:39 julian Exp $
*/
#include <sys/param.h>
@@ -163,7 +163,7 @@ ufs_bmaparray(vp, bn, bnp, ap, nump, runp, runb)
maxrun -= 1;
}
- if (maxrun == 0) {
+ if (maxrun <= 0) {
vp->v_maxio = DFLTPHYS;
maxrun = DFLTPHYS / blksize;
maxrun -= 1;
OpenPOWER on IntegriCloud