diff options
author | Giuseppe Di Natale <[email protected]> | 2017-01-31 14:36:35 -0800 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2017-01-31 14:36:35 -0800 |
commit | d69a321e567bf57c08f243969031545866abaf9d (patch) | |
tree | bcd06962f84040ed069c5e27b9a0b579bfa9d542 | |
parent | 3d91261599447833fb96e99055d1108ea2b0c171 (diff) |
OpenZFS 7545 - zdb should disable reference tracking
Authored by: Matthew Ahrens <[email protected]>
Reviewed by: Dan Kimmel <[email protected]>
Reviewed by: Steve Gonczi <[email protected]>
Reviewed by: George Wilson <[email protected]>
Approved by: Robert Mustacchi <[email protected]>
Reviewed-by: Brian Behlendorf <[email protected]>
Ported-by: Giuseppe Di Natale <[email protected]>
Porting Notes: Moved reference_tracking_enable and
reference_history outside of ZFS_DEBUG.
OpenZFS-issue: https://www.illumos.org/issues/7545
OpenZFS-commit: https://github.com/openzfs/openzfs/commit/4dd77f9
Closes #5701
-rw-r--r-- | cmd/zdb/zdb.c | 7 | ||||
-rw-r--r-- | module/zfs/refcount.c | 3 |
2 files changed, 8 insertions, 2 deletions
diff --git a/cmd/zdb/zdb.c b/cmd/zdb/zdb.c index 10bca4a91..cc4b0340f 100644 --- a/cmd/zdb/zdb.c +++ b/cmd/zdb/zdb.c @@ -84,10 +84,12 @@ zdb_ot_name(dmu_object_type_t type) } #ifndef lint +extern int reference_tracking_enable; extern int zfs_recover; extern uint64_t zfs_arc_max, zfs_arc_meta_limit; extern int zfs_vdev_async_read_max_active; #else +int reference_tracking_enable; int zfs_recover; uint64_t zfs_arc_max, zfs_arc_meta_limit; int zfs_vdev_async_read_max_active; @@ -3813,6 +3815,11 @@ main(int argc, char **argv) */ zfs_vdev_async_read_max_active = 10; + /* + * Disable reference tracking for better performance. + */ + reference_tracking_enable = B_FALSE; + kernel_init(FREAD); if ((g_zfs = libzfs_init()) == NULL) { (void) fprintf(stderr, "%s", libzfs_error_init(errno)); diff --git a/module/zfs/refcount.c b/module/zfs/refcount.c index 6f8f4db08..b33874714 100644 --- a/module/zfs/refcount.c +++ b/module/zfs/refcount.c @@ -26,8 +26,6 @@ #include <sys/zfs_context.h> #include <sys/refcount.h> -#ifdef ZFS_DEBUG - #ifdef _KERNEL int reference_tracking_enable = FALSE; /* runs out of memory too easily */ #else @@ -35,6 +33,7 @@ int reference_tracking_enable = TRUE; #endif int reference_history = 3; /* tunable */ +#ifdef ZFS_DEBUG static kmem_cache_t *reference_cache; static kmem_cache_t *reference_history_cache; |