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
This commit is contained in:
Enji Cooper 2020-06-24 18:51:01 +00:00
parent e59d5d14d7
commit d6701b6c8c
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=362591

View File

@ -361,6 +361,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 | CTLFLAG_MPSAFE, NULL,
"Witness Locking");