From 7ee4e910ced4b311b0194fe11c664f0c6bde3bd8 Mon Sep 17 00:00:00 2001 From: attilio Date: Mon, 25 Nov 2013 07:38:45 +0000 Subject: - For kernel compiled only with KDTRACE_HOOKS and not any lock debugging option, unbreak the lock tracing release semantic by embedding calls to LOCKSTAT_PROFILE_RELEASE_LOCK() direclty in the inlined version of the releasing functions for mutex, rwlock and sxlock. Failing to do so skips the lockstat_probe_func invokation for unlocking. - As part of the LOCKSTAT support is inlined in mutex operation, for kernel compiled without lock debugging options, potentially every consumer must be compiled including opt_kdtrace.h. Fix this by moving KDTRACE_HOOKS into opt_global.h and remove the dependency by opt_kdtrace.h for all files, as now only KDTRACE_FRAMES is linked there and it is only used as a compile-time stub [0]. [0] immediately shows some new bug as DTRACE-derived support for debug in sfxge is broken and it was never really tested. As it was not including correctly opt_kdtrace.h before it was never enabled so it was kept broken for a while. Fix this by using a protection stub, leaving sfxge driver authors the responsibility for fixing it appropriately [1]. Sponsored by: EMC / Isilon storage division Discussed with: rstone [0] Reported by: rstone [1] Discussed with: philip --- sys/security/mac/mac_posix_sem.c | 1 - 1 file changed, 1 deletion(-) (limited to 'sys/security/mac/mac_posix_sem.c') diff --git a/sys/security/mac/mac_posix_sem.c b/sys/security/mac/mac_posix_sem.c index 461e5db..4cf4109 100644 --- a/sys/security/mac/mac_posix_sem.c +++ b/sys/security/mac/mac_posix_sem.c @@ -39,7 +39,6 @@ #include __FBSDID("$FreeBSD$"); -#include "opt_kdtrace.h" #include "opt_mac.h" #include "opt_posix.h" -- cgit v1.1