summaryrefslogtreecommitdiffstats
path: root/sys/isofs
diff options
context:
space:
mode:
authordyson <dyson@FreeBSD.org>1996-12-29 02:45:28 +0000
committerdyson <dyson@FreeBSD.org>1996-12-29 02:45:28 +0000
commit04a0ee9a2a23ea1925b6625e3268da60ccc7944b (patch)
tree0be85582a1c640271ed7ce19fc19c0c85527cb9c /sys/isofs
parentbaa03b956c25159833733ce567a847c13e9bd032 (diff)
downloadFreeBSD-src-04a0ee9a2a23ea1925b6625e3268da60ccc7944b.zip
FreeBSD-src-04a0ee9a2a23ea1925b6625e3268da60ccc7944b.tar.gz
This commit is the embodiment of some VFS read clustering improvements.
Firstly, now our read-ahead clustering is on a file descriptor basis and not on a per-vnode basis. This will allow multiple processes reading the same file to take advantage of read-ahead clustering. Secondly, there previously was a problem with large reads still using the ramp-up algorithm. Of course, that was bogus, and now we read the entire "chunk" off of the disk in one operation. The read-ahead clustering algorithm should use less CPU than the previous also (I hope :-)). NOTE: THAT LKMS MUST BE REBUILT!!!
Diffstat (limited to 'sys/isofs')
-rw-r--r--sys/isofs/cd9660/cd9660_vnops.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/isofs/cd9660/cd9660_vnops.c b/sys/isofs/cd9660/cd9660_vnops.c
index 8ac9cd4..e48ddce 100644
--- a/sys/isofs/cd9660/cd9660_vnops.c
+++ b/sys/isofs/cd9660/cd9660_vnops.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)cd9660_vnops.c 8.3 (Berkeley) 1/23/94
- * $Id: cd9660_vnops.c,v 1.26 1996/09/20 05:51:12 nate Exp $
+ * $Id: cd9660_vnops.c,v 1.27 1996/10/20 21:01:43 alex Exp $
*/
#include <sys/param.h>
@@ -342,7 +342,8 @@ cd9660_read(ap)
if (doclusterread) {
if (iso_lblktosize(imp, rablock) <= ip->i_size)
error = cluster_read(vp, ip->i_size,
- lbn, size, NOCRED, &bp);
+ lbn, size, NOCRED, uio->uio_resid,
+ (ap->a_ioflag >> 16), &bp);
else
error = bread(vp, lbn, size, NOCRED, &bp);
} else {
OpenPOWER on IntegriCloud