diff options
author | Alexander Motin <[email protected]> | 2021-06-10 11:27:33 -0400 |
---|---|---|
committer | GitHub <[email protected]> | 2021-06-10 08:27:33 -0700 |
commit | 371f88d96fe0aeb46a72fec78f90e1d777493ee5 (patch) | |
tree | ad407396b1402d12ccfa8711e27b4a17f6329977 /include/sys | |
parent | 860051f1d1ef7ee995188b852d8da36bce85b1dc (diff) |
Remove pool io kstats (#12212)
This mostly reverts "3537 want pool io kstats" commit of 8 years ago.
From one side this code using pool-wide locks became pretty bad for
performance, creating significant lock contention in I/O pipeline.
From another, there are more efficient ways now to obtain detailed
statistics, while this statistics is illumos-specific and much less
usable on Linux and FreeBSD, reported only via procfs/sysctls.
This commit does not remove KSTAT_TYPE_IO implementation, that may
be removed later together with already unused KSTAT_TYPE_INTR and
KSTAT_TYPE_TIMER.
Reviewed-by: Matthew Ahrens <[email protected]>
Reviewed-by: Brian Behlendorf <[email protected]>
Signed-off-by: Alexander Motin <[email protected]>
Sponsored-By: iXsystems, Inc.
Closes #12212
Diffstat (limited to 'include/sys')
-rw-r--r-- | include/sys/spa.h | 1 | ||||
-rw-r--r-- | include/sys/zfs_context.h | 6 |
2 files changed, 0 insertions, 7 deletions
diff --git a/include/sys/spa.h b/include/sys/spa.h index 374d36e73..d37c6c923 100644 --- a/include/sys/spa.h +++ b/include/sys/spa.h @@ -895,7 +895,6 @@ typedef struct spa_stats { spa_history_list_t read_history; spa_history_list_t txg_history; spa_history_kstat_t tx_assign_histogram; - spa_history_kstat_t io_history; spa_history_list_t mmp_history; spa_history_kstat_t state; /* pool state */ spa_history_kstat_t iostats; diff --git a/include/sys/zfs_context.h b/include/sys/zfs_context.h index 89afa9825..aa4338ed2 100644 --- a/include/sys/zfs_context.h +++ b/include/sys/zfs_context.h @@ -360,12 +360,6 @@ extern kstat_t *kstat_create(const char *, int, const char *, const char *, uchar_t, ulong_t, uchar_t); extern void kstat_install(kstat_t *); extern void kstat_delete(kstat_t *); -extern void kstat_waitq_enter(kstat_io_t *); -extern void kstat_waitq_exit(kstat_io_t *); -extern void kstat_runq_enter(kstat_io_t *); -extern void kstat_runq_exit(kstat_io_t *); -extern void kstat_waitq_to_runq(kstat_io_t *); -extern void kstat_runq_back_to_waitq(kstat_io_t *); extern void kstat_set_raw_ops(kstat_t *ksp, int (*headers)(char *buf, size_t size), int (*data)(char *buf, size_t size, void *data), |