mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-24 19:28:53 +03:00
Illumos 5987 - zfs prefetch code needs work
5987 zfs prefetch code needs work Reviewed by: Adam Leventhal <ahl@delphix.com> Reviewed by: George Wilson <george.wilson@delphix.com> Reviewed by: Paul Dagnelie <pcd@delphix.com> Approved by: Gordon Ross <gordon.ross@nexenta.com> References: https://www.illumos.org/issues/5987 zfs prefetch code needs work illumos/illumos-gate@cf6106c 5987 zfs prefetch code needs work Porting notes: - [module/zfs/dbuf.c] -5f6d0b6Handle block pointers with a corrupt logical size - [module/zfs/dmu_zfetch.c] -c65aa5bFix gcc missing parenthesis warnings -428870fUpdate core ZFS code from build 121 to build 141. -79c76d5Change KM_PUSHPAGE -> KM_SLEEP -b8d06fcSwitch KM_SLEEP to KM_PUSHPAGE - Account for ISO C90 - mixed declarations and code - warnings - Module parameters (new/changed): - Replaced zfetch_block_cap with zfetch_max_distance (Max bytes to prefetch per stream (default 8MB; 8 * 1024 * 1024)) - Preserved zfs_prefetch_disable as 'int' for consistency with existing Linux module options. - [include/sys/trace_arc.h] - Added new tracepoints - DEFINE_ARC_BUF_HDR_EVENT(zfs_arc__sync__wait__for__async); - DEFINE_ARC_BUF_HDR_EVENT(zfs_arc__demand__hit__predictive__prefetch); - [man/man5/zfs-module-parameters.5] - Updated man page Ported-by: kernelOfTruth kerneloftruth@gmail.com Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
This commit is contained in:
committed by
Brian Behlendorf
parent
ab5cbbd107
commit
7f60329a26
@@ -331,12 +331,12 @@ Default value: \fB1,048,576\fR.
|
||||
.sp
|
||||
.ne 2
|
||||
.na
|
||||
\fBzfetch_block_cap\fR (uint)
|
||||
\fBzfetch_max_distance\fR (uint)
|
||||
.ad
|
||||
.RS 12n
|
||||
Max number of blocks to prefetch at a time
|
||||
Max bytes to prefetch per stream (default 8MB).
|
||||
.sp
|
||||
Default value: \fB256\fR.
|
||||
Default value: \fB8,388,608\fR.
|
||||
.RE
|
||||
|
||||
.sp
|
||||
@@ -1246,7 +1246,10 @@ Default value: \fB52,428,800\fR.
|
||||
\fBzfs_prefetch_disable\fR (int)
|
||||
.ad
|
||||
.RS 12n
|
||||
Disable all ZFS prefetching
|
||||
This tunable disables predictive prefetch. Note that it leaves "prescient"
|
||||
prefetch (e.g. prefetch for zfs send) intact. Unlike predictive prefetch,
|
||||
prescient prefetch never issues i/os that end up not being needed, so it
|
||||
can't hurt performance.
|
||||
.sp
|
||||
Use \fB1\fR for yes and \fB0\fR for no (default).
|
||||
.RE
|
||||
|
||||
Reference in New Issue
Block a user