diff options
author | iedowse <iedowse@FreeBSD.org> | 2002-08-26 18:31:26 +0000 |
---|---|---|
committer | iedowse <iedowse@FreeBSD.org> | 2002-08-26 18:31:26 +0000 |
commit | 3643fd9d4d17d610a5ab3ec5a0630df090906737 (patch) | |
tree | d298f527ac06944c8be920df2d2065997b347408 /sys/kern/subr_witness.c | |
parent | 36ed1029fc6ff2994b7b9673327c5ebc09e59560 (diff) | |
download | FreeBSD-src-3643fd9d4d17d610a5ab3ec5a0630df090906737.zip FreeBSD-src-3643fd9d4d17d610a5ab3ec5a0630df090906737.tar.gz |
Add WITNESS_FILE() and WITNESS_LINE(), which allow users of witness
to print out the file and line from the lock object. These will be
used shortly by CTR() calls in the mutex code.
Reviewed by: jhb, jake
Diffstat (limited to 'sys/kern/subr_witness.c')
-rw-r--r-- | sys/kern/subr_witness.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/sys/kern/subr_witness.c b/sys/kern/subr_witness.c index 2a57ee3..b29265a 100644 --- a/sys/kern/subr_witness.c +++ b/sys/kern/subr_witness.c @@ -929,6 +929,28 @@ again: return (n); } +const char * +witness_file(struct lock_object *lock) +{ + struct witness *w; + + if (witness_cold || witness_dead || lock->lo_witness == NULL) + return ("?"); + w = lock->lo_witness; + return (w->w_file); +} + +int +witness_line(struct lock_object *lock) +{ + struct witness *w; + + if (witness_cold || witness_dead || lock->lo_witness == NULL) + return (0); + w = lock->lo_witness; + return (w->w_line); +} + static struct witness * enroll(const char *description, struct lock_class *lock_class) { |