aboutsummaryrefslogtreecommitdiffstats
path: root/include/sys/spa.h
diff options
context:
space:
mode:
authorAlexander Motin <[email protected]>2023-06-09 15:40:55 -0400
committerGitHub <[email protected]>2023-06-09 12:40:55 -0700
commit70ea484e3ec56c529c6c5027ffc43840100ce224 (patch)
treed006081f0701728fe2b3a743cbd47e54e25fbac2 /include/sys/spa.h
parent6db4ed51d6c2cd8ec6a3ad318118f7a0d6b6dfe8 (diff)
Finally drop long disabled vdev cache.
It was a vdev level read cache, designed to aggregate many small reads by speculatively issuing bigger reads instead and caching the result. But since it has almost no idea about what is going on with exception of ZIO_FLAG_DONT_CACHE flag set by higher layers, it was found to make more harm than good, for which reason it was disabled for the past 12 years. These days we have much better instruments to enlarge the I/Os, such as speculative and prescient prefetches, I/O scheduler, I/O aggregation etc. Besides just the dead code removal this removes one extra mutex lock/unlock per write inside vdev_cache_write(), not otherwise disabled and trying to do some work. Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Alexander Motin <[email protected]> Sponsored by: iXsystems, Inc. Closes #14953
Diffstat (limited to 'include/sys/spa.h')
-rw-r--r--include/sys/spa.h4
1 files changed, 0 insertions, 4 deletions
diff --git a/include/sys/spa.h b/include/sys/spa.h
index ed752967c..1fa204400 100644
--- a/include/sys/spa.h
+++ b/include/sys/spa.h
@@ -1174,10 +1174,6 @@ extern void zep_to_zb(uint64_t dataset, zbookmark_err_phys_t *zep,
zbookmark_phys_t *zb);
extern void name_to_errphys(char *buf, zbookmark_err_phys_t *zep);
-/* vdev cache */
-extern void vdev_cache_stat_init(void);
-extern void vdev_cache_stat_fini(void);
-
/* vdev mirror */
extern void vdev_mirror_stat_init(void);
extern void vdev_mirror_stat_fini(void);