aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEnji Cooper <ngie@FreeBSD.org>2020-06-24 18:51:01 +0000
committerEnji Cooper <ngie@FreeBSD.org>2022-04-11 01:29:17 +0000
commit52122fa0968fdaaacf3803e711604d4600d489ff (patch)
treef8bc1da50f6832e23d10d2067aec5a3838269636
parent36855239502112971385bae3147ffb4f0a06ae93 (diff)
downloadsrc-52122fa0968fdaaacf3803e711604d4600d489ff.tar.gz
src-52122fa0968fdaaacf3803e711604d4600d489ff.zip
Add `kern.features.witness`
Adding `kern.features.witness` helps expose whether or not the kernel has `options WITNESS` enabled, so the `feature_present(3)` API can be used to query whether or not witness(9) is built into the kernel. This support is helpful with userspace applications (generally speaking, tests), as it can be queried to determine whether or not tests related to WITNESS should be run. MFC after: 1 week Reviewed by: cem, darrick.freebsd_gmail.com Differential Revision: https://reviews.freebsd.org/D25302 Sponsored by: DellEMC Isilon Conflicts: sys/kern/subr_witness.c (cherry picked from commit d6701b6c8ccf35c66d357fe02494d0f60ee62f4e)
-rw-r--r--sys/kern/subr_witness.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/kern/subr_witness.c b/sys/kern/subr_witness.c
index 3d140beb70cf..e88535f69b69 100644
--- a/sys/kern/subr_witness.c
+++ b/sys/kern/subr_witness.c
@@ -360,6 +360,8 @@ static int witness_output(const char *fmt, ...) __printflike(1, 2);
static int witness_voutput(const char *fmt, va_list ap) __printflike(1, 0);
static void witness_setflag(struct lock_object *lock, int flag, int set);
+FEATURE(witness, "kernel has witness(9) support");
+
static SYSCTL_NODE(_debug, OID_AUTO, witness, CTLFLAG_RW, NULL,
"Witness Locking");