diff --git a/man/man5/zfs-module-parameters.5 b/man/man5/zfs-module-parameters.5 index d68e85fa07..672afefd2b 100644 --- a/man/man5/zfs-module-parameters.5 +++ b/man/man5/zfs-module-parameters.5 @@ -1,6 +1,6 @@ '\" te .\" Copyright (c) 2013 by Turbo Fredriksson . All rights reserved. -.\" Copyright (c) 2019, 2020 by Delphix. All rights reserved. +.\" Copyright (c) 2019, 2021 by Delphix. All rights reserved. .\" Copyright (c) 2019 Datto Inc. .\" The contents of this file are subject to the terms of the Common Development .\" and Distribution License (the "License"). You may not use this file except @@ -691,6 +691,29 @@ will occur. Default value: \fB600000\fR (ten minutes). .RE +.sp +.ne 2 +.na +\fBreference_history\fR (int) +.ad +.RS 12n +Maximum reference holders being tracked when reference_tracking_enable is +active. +.sp +Default value: \fB3\fR. +.RE + +.sp +.ne 2 +.na +\fBreference_tracking_enable\fR (int) +.ad +.RS 12n +Track reference holders to refcount_t objects (debug builds only). +.sp +Use \fB1\fR for yes and \fB0\fR for no (default). +.RE + .sp .ne 2 .na diff --git a/module/os/freebsd/zfs/sysctl_os.c b/module/os/freebsd/zfs/sysctl_os.c index 647c1463ba..94124fdcf6 100644 --- a/module/os/freebsd/zfs/sysctl_os.c +++ b/module/os/freebsd/zfs/sysctl_os.c @@ -407,12 +407,6 @@ SYSCTL_INT(_vfs_zfs_metaslab, OID_AUTO, preload_limit, CTLFLAG_RWTUN, &metaslab_preload_limit, 0, "Max number of metaslabs per group to preload"); -/* refcount.c */ -extern int reference_tracking_enable; -SYSCTL_INT(_vfs_zfs, OID_AUTO, reference_tracking_enable, CTLFLAG_RDTUN, - &reference_tracking_enable, 0, - "Track reference holders to refcount_t objects, used mostly by ZFS"); - /* spa.c */ extern int zfs_ccw_retry_interval; SYSCTL_INT(_vfs_zfs, OID_AUTO, ccw_retry_interval, CTLFLAG_RWTUN, diff --git a/module/zfs/refcount.c b/module/zfs/refcount.c index 39476261ed..a3877b8d15 100644 --- a/module/zfs/refcount.c +++ b/module/zfs/refcount.c @@ -20,7 +20,7 @@ */ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright (c) 2012, 2015 by Delphix. All rights reserved. + * Copyright (c) 2012, 2021 by Delphix. All rights reserved. */ #include @@ -324,4 +324,12 @@ zfs_refcount_not_held(zfs_refcount_t *rc, const void *holder) mutex_exit(&rc->rc_mtx); return (B_TRUE); } + +/* BEGIN CSTYLED */ +ZFS_MODULE_PARAM(zfs, ,reference_tracking_enable, INT, ZMOD_RW, + "Track reference holders to refcount_t objects"); + +ZFS_MODULE_PARAM(zfs, ,reference_history, INT, ZMOD_RW, + "Maximum reference holders being tracked"); +/* END CSTYLED */ #endif /* ZFS_DEBUG */