Author: mav Date: Mon Oct 12 14:27:27 2015 New Revision: 289188 URL: https://svnweb.freebsd.org/changeset/base/289188
Log: 6281 prefetching should apply to 1MB reads Reviewed by: Matthew Ahrens <mahr...@delphix.com> Reviewed by: Paul Dagnelie <p...@delphix.com> Reviewed by: Alexander Motin <m...@freebsd.org> Reviewed by: Dan McDonald <dan...@omniti.com> Reviewed by: Justin Gibbs <gi...@scsiguy.com> Reviewed by: Xin Li <delp...@freebsd.org> Approved by: Gordon Ross <gordon.r...@nexenta.com> Author: George Wilson <george.wil...@delphix.com> illumos/illumos-gate@632802744ef6d17e06d6980a95f631615c3b060f Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/dmu.c vendor-sys/illumos/dist/uts/common/fs/zfs/dmu_zfetch.c Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/dmu.c ============================================================================== --- vendor-sys/illumos/dist/uts/common/fs/zfs/dmu.c Mon Oct 12 14:24:11 2015 (r289187) +++ vendor-sys/illumos/dist/uts/common/fs/zfs/dmu.c Mon Oct 12 14:27:27 2015 (r289188) @@ -442,7 +442,7 @@ dmu_buf_hold_array_by_dnode(dnode_t *dn, } if ((flags & DMU_READ_NO_PREFETCH) == 0 && read && - length < zfetch_array_rd_sz) { + length <= zfetch_array_rd_sz) { dmu_zfetch(&dn->dn_zfetch, blkid, nblks); } rw_exit(&dn->dn_struct_rwlock); Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/dmu_zfetch.c ============================================================================== --- vendor-sys/illumos/dist/uts/common/fs/zfs/dmu_zfetch.c Mon Oct 12 14:24:11 2015 (r289187) +++ vendor-sys/illumos/dist/uts/common/fs/zfs/dmu_zfetch.c Mon Oct 12 14:27:27 2015 (r289188) @@ -24,7 +24,7 @@ */ /* - * Copyright (c) 2013, 2014 by Delphix. All rights reserved. + * Copyright (c) 2013, 2015 by Delphix. All rights reserved. */ #include <sys/zfs_context.h> @@ -49,7 +49,7 @@ uint32_t zfetch_max_streams = 8; uint32_t zfetch_min_sec_reap = 2; /* max bytes to prefetch per stream (default 8MB) */ uint32_t zfetch_max_distance = 8 * 1024 * 1024; -/* number of bytes in a array_read at which we stop prefetching (1MB) */ +/* max number of bytes in an array_read in which we allow prefetching (1MB) */ uint64_t zfetch_array_rd_sz = 1024 * 1024; typedef struct zfetch_stats { _______________________________________________ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"