mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-22 18:40:43 +03:00
DDT: Switch to using wmsums for lookup stats
ddt_lookup() is a very busy code under a highly congested global lock. Anything we can save here is very important. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Rob Norris <robn@despairlabs.com> Signed-off-by: Alexander Motin <alexander.motin@TrueNAS.com> Closes #17980
This commit is contained in:
committed by
Brian Behlendorf
parent
2aad3dee23
commit
a785ddc5f3
@@ -33,6 +33,7 @@
|
||||
#include <sys/fs/zfs.h>
|
||||
#include <sys/zio.h>
|
||||
#include <sys/dmu.h>
|
||||
#include <sys/wmsum.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -296,6 +297,20 @@ typedef struct {
|
||||
|
||||
kstat_t *ddt_ksp; /* kstats context */
|
||||
|
||||
/* wmsums for hot-path lookup counters */
|
||||
wmsum_t ddt_kstat_dds_lookup;
|
||||
wmsum_t ddt_kstat_dds_lookup_live_hit;
|
||||
wmsum_t ddt_kstat_dds_lookup_live_wait;
|
||||
wmsum_t ddt_kstat_dds_lookup_live_miss;
|
||||
wmsum_t ddt_kstat_dds_lookup_existing;
|
||||
wmsum_t ddt_kstat_dds_lookup_new;
|
||||
wmsum_t ddt_kstat_dds_lookup_log_hit;
|
||||
wmsum_t ddt_kstat_dds_lookup_log_active_hit;
|
||||
wmsum_t ddt_kstat_dds_lookup_log_flushing_hit;
|
||||
wmsum_t ddt_kstat_dds_lookup_log_miss;
|
||||
wmsum_t ddt_kstat_dds_lookup_stored_hit;
|
||||
wmsum_t ddt_kstat_dds_lookup_stored_miss;
|
||||
|
||||
enum zio_checksum ddt_checksum; /* checksum algorithm in use */
|
||||
spa_t *ddt_spa; /* pool this ddt is on */
|
||||
objset_t *ddt_os; /* ddt objset (always MOS) */
|
||||
|
||||
Reference in New Issue
Block a user