mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2025-01-08 17:20:25 +03:00
FreeBSD: Skip RAW kstat sysctls by default
These kstats are often expensive to compute so we want to avoid them unless specifically requested. The following kstats are affected by this change: kstat.zfs.${pool}.multihost kstat.zfs.${pool}.misc.state kstat.zfs.${pool}.txgs kstat.zfs.misc.fletcher_4_bench kstat.zfs.misc.vdev_raidz_bench kstat.zfs.misc.dbufs kstat.zfs.misc.dbgmsg In FreeBSD 13, sysctl(8) has been updated to still list the names/description/type of skipped sysctls so they are still discoverable. Reviewed-by: Allan Jude <allan@klarasystems.com> Reviewed-by: Mateusz Guzik <mjguzik@gmail.com> Signed-off-by: Ryan Moeller <ryan@iXsystems.com> Closes #11099
This commit is contained in:
parent
f5bffd3748
commit
0dc6fb730f
@ -475,14 +475,14 @@ kstat_install(kstat_t *ksp)
|
|||||||
if (ksp->ks_raw_ops.data) {
|
if (ksp->ks_raw_ops.data) {
|
||||||
root = SYSCTL_ADD_PROC(&ksp->ks_sysctl_ctx,
|
root = SYSCTL_ADD_PROC(&ksp->ks_sysctl_ctx,
|
||||||
SYSCTL_CHILDREN(ksp->ks_sysctl_root),
|
SYSCTL_CHILDREN(ksp->ks_sysctl_root),
|
||||||
OID_AUTO, ksp->ks_name,
|
OID_AUTO, ksp->ks_name, CTLTYPE_STRING | CTLFLAG_RD
|
||||||
CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_MPSAFE,
|
| CTLFLAG_MPSAFE | CTLFLAG_SKIP,
|
||||||
ksp, 0, kstat_sysctl_raw, "A", ksp->ks_name);
|
ksp, 0, kstat_sysctl_raw, "A", ksp->ks_name);
|
||||||
} else {
|
} else {
|
||||||
root = SYSCTL_ADD_PROC(&ksp->ks_sysctl_ctx,
|
root = SYSCTL_ADD_PROC(&ksp->ks_sysctl_ctx,
|
||||||
SYSCTL_CHILDREN(ksp->ks_sysctl_root),
|
SYSCTL_CHILDREN(ksp->ks_sysctl_root),
|
||||||
OID_AUTO, ksp->ks_name,
|
OID_AUTO, ksp->ks_name, CTLTYPE_OPAQUE | CTLFLAG_RD
|
||||||
CTLTYPE_OPAQUE | CTLFLAG_RD | CTLFLAG_MPSAFE,
|
| CTLFLAG_MPSAFE | CTLFLAG_SKIP,
|
||||||
ksp, 0, kstat_sysctl_raw, "", ksp->ks_name);
|
ksp, 0, kstat_sysctl_raw, "", ksp->ks_name);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user