summaryrefslogtreecommitdiffstats
path: root/sys/alpha
diff options
context:
space:
mode:
authorjasone <jasone@FreeBSD.org>2000-09-09 22:43:22 +0000
committerjasone <jasone@FreeBSD.org>2000-09-09 22:43:22 +0000
commit9d6c8a5123d3247d48e39522c2b84a8875421dc8 (patch)
treec343dfedc909c5fb2829389925897a24f3ce57d3 /sys/alpha
parentee0ea20aad8eba1bf086b9044cf98aa849fddb80 (diff)
downloadFreeBSD-src-9d6c8a5123d3247d48e39522c2b84a8875421dc8.zip
FreeBSD-src-9d6c8a5123d3247d48e39522c2b84a8875421dc8.tar.gz
Add file and line arguments to WITNESS_ENTER() and WITNESS_EXIT, since
__FILE__ and __LINE__ don't get expanded usefully in inline functions. Add const to all witness*() arguments that are filenames.
Diffstat (limited to 'sys/alpha')
-rw-r--r--sys/alpha/include/mutex.h32
1 files changed, 16 insertions, 16 deletions
diff --git a/sys/alpha/include/mutex.h b/sys/alpha/include/mutex.h
index b95ba16..72d1314 100644
--- a/sys/alpha/include/mutex.h
+++ b/sys/alpha/include/mutex.h
@@ -243,12 +243,12 @@ extern char STR_IDIS[];
#ifndef SMP_DEBUG
#error WITNESS requires SMP_DEBUG
#endif /* SMP_DEBUG */
-#define WITNESS_ENTER(m, f) \
+#define WITNESS_ENTER(m, t, f, l) \
if ((m)->mtx_witness != NULL) \
- witness_enter((m), (f), __FILE__, __LINE__)
-#define WITNESS_EXIT(m, f) \
+ witness_enter((m), (t), (f), (l))
+#define WITNESS_EXIT(m, t, f, l) \
if ((m)->mtx_witness != NULL) \
- witness_exit((m), (f), __FILE__, __LINE__)
+ witness_exit((m), (t), (f), (l))
#define WITNESS_SLEEP(check, m) witness_sleep(check, (m), __FILE__, __LINE__)
#define WITNESS_SAVE_DECL(n) \
@@ -269,17 +269,17 @@ do { \
void witness_init(mtx_t *, int flag);
void witness_destroy(mtx_t *);
-void witness_enter(mtx_t *, int, char *, int);
-void witness_try_enter(mtx_t *, int, char *, int);
-void witness_exit(mtx_t *, int, char *, int);
+void witness_enter(mtx_t *, int, const char *, int);
+void witness_try_enter(mtx_t *, int, const char *, int);
+void witness_exit(mtx_t *, int, const char *, int);
void witness_display(void(*)(const char *fmt, ...));
void witness_list(struct proc *);
-int witness_sleep(int, mtx_t *, char *, int);
+int witness_sleep(int, mtx_t *, const char *, int);
void witness_save(mtx_t *, const char **, int *);
void witness_restore(mtx_t *, const char *, int);
#else /* WITNESS */
-#define WITNESS_ENTER(m, flag)
-#define WITNESS_EXIT(m, flag)
+#define WITNESS_ENTER(m, t, f, l)
+#define WITNESS_EXIT(m, t, f, l)
#define WITNESS_SLEEP(check, m)
#define WITNESS_SAVE_DECL(n)
#define WITNESS_SAVE(m, n)
@@ -291,9 +291,9 @@ void witness_restore(mtx_t *, const char *, int);
*/
#define witness_init(m, flag) flag++
#define witness_destroy(m)
-#define witness_enter(m, flag, f, l)
-#define witness_try_enter(m, flag, f, l )
-#define witness_exit(m, flag, f, l)
+#define witness_enter(m, t, f, l)
+#define witness_try_enter(m, t, f, l)
+#define witness_exit(m, t, f, l)
#endif /* WITNESS */
/*
@@ -474,7 +474,7 @@ _mtx_enter(mtx_t *mtxp, int type, const char *file, int line)
}
}
} while (0);
- WITNESS_ENTER(mpp, type);
+ WITNESS_ENTER(mpp, type, file, line);
CTR5(KTR_LOCK, STR_mtx_enter_fmt,
mpp->mtx_description, mpp, file, line,
mpp->mtx_recurse);
@@ -495,7 +495,7 @@ _mtx_try_enter(mtx_t *mtxp, int type, const char *file, int line)
#ifdef SMP_DEBUG
if (rval && mpp->mtx_witness != NULL) {
ASS(mpp->mtx_recurse == 0);
- witness_try_enter(mpp, type, file, line);
+ witness_try_enter(mpp, type, file, line);
}
#endif
CTR5(KTR_LOCK, STR_mtx_try_enter_fmt,
@@ -515,7 +515,7 @@ _mtx_exit(mtx_t *mtxp, int type, const char *file, int line)
mtx_t *const mpp = mtxp;
MPASS2(mtx_owned(mpp), STR_mtx_owned);
- WITNESS_EXIT(mpp, type);
+ WITNESS_EXIT(mpp, type, file, line);
CTR5(KTR_LOCK, STR_mtx_exit_fmt,
mpp->mtx_description, mpp, file, line,
mpp->mtx_recurse);
OpenPOWER on IntegriCloud