aboutsummaryrefslogtreecommitdiff
path: root/sys/security
diff options
context:
space:
mode:
authorAttilio Rao <attilio@FreeBSD.org>2013-11-25 07:38:45 +0000
committerAttilio Rao <attilio@FreeBSD.org>2013-11-25 07:38:45 +0000
commit54366c0bd7d0ea904fb9ab32460c66d57684a7cb (patch)
treee29b308276ced8b2028470c376a2a34193dc6c3c /sys/security
parent7c5b23111c5fd1992047922d4247c4a1ce1bb6c3 (diff)
downloadsrc-54366c0bd7d0ea904fb9ab32460c66d57684a7cb.tar.gz
src-54366c0bd7d0ea904fb9ab32460c66d57684a7cb.zip
- 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
Notes
Notes: svn path=/head/; revision=258541
Diffstat (limited to 'sys/security')
-rw-r--r--sys/security/mac/mac_audit.c2
-rw-r--r--sys/security/mac/mac_cred.c1
-rw-r--r--sys/security/mac/mac_framework.c1
-rw-r--r--sys/security/mac/mac_inet.c1
-rw-r--r--sys/security/mac/mac_net.c1
-rw-r--r--sys/security/mac/mac_pipe.c1
-rw-r--r--sys/security/mac/mac_posix_sem.c1
-rw-r--r--sys/security/mac/mac_posix_shm.c1
-rw-r--r--sys/security/mac/mac_priv.c1
-rw-r--r--sys/security/mac/mac_process.c1
-rw-r--r--sys/security/mac/mac_socket.c1
-rw-r--r--sys/security/mac/mac_system.c1
-rw-r--r--sys/security/mac/mac_sysv_msg.c1
-rw-r--r--sys/security/mac/mac_sysv_sem.c1
-rw-r--r--sys/security/mac/mac_sysv_shm.c1
-rw-r--r--sys/security/mac/mac_vfs.c1
16 files changed, 0 insertions, 17 deletions
diff --git a/sys/security/mac/mac_audit.c b/sys/security/mac/mac_audit.c
index 4d453b5c83cd..1cc571da834b 100644
--- a/sys/security/mac/mac_audit.c
+++ b/sys/security/mac/mac_audit.c
@@ -43,8 +43,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
-
#include <sys/param.h>
#include <sys/kernel.h>
#include <sys/module.h>
diff --git a/sys/security/mac/mac_cred.c b/sys/security/mac/mac_cred.c
index 64dab5bc3cef..372679b5e833 100644
--- a/sys/security/mac/mac_cred.c
+++ b/sys/security/mac/mac_cred.c
@@ -46,7 +46,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include <sys/param.h>
diff --git a/sys/security/mac/mac_framework.c b/sys/security/mac/mac_framework.c
index 25ffa9195ba4..5fa2736a896c 100644
--- a/sys/security/mac/mac_framework.c
+++ b/sys/security/mac/mac_framework.c
@@ -66,7 +66,6 @@
* src/sys/security/mac_*.
*/
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include <sys/cdefs.h>
diff --git a/sys/security/mac/mac_inet.c b/sys/security/mac/mac_inet.c
index 5753bb6246fe..a1bbea9caeba 100644
--- a/sys/security/mac/mac_inet.c
+++ b/sys/security/mac/mac_inet.c
@@ -45,7 +45,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include <sys/param.h>
diff --git a/sys/security/mac/mac_net.c b/sys/security/mac/mac_net.c
index b7e4c54fc844..5a87f47766bc 100644
--- a/sys/security/mac/mac_net.c
+++ b/sys/security/mac/mac_net.c
@@ -45,7 +45,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include <sys/param.h>
diff --git a/sys/security/mac/mac_pipe.c b/sys/security/mac/mac_pipe.c
index 91c3cff4ce94..d7cb86c1284d 100644
--- a/sys/security/mac/mac_pipe.c
+++ b/sys/security/mac/mac_pipe.c
@@ -40,7 +40,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include <sys/param.h>
diff --git a/sys/security/mac/mac_posix_sem.c b/sys/security/mac/mac_posix_sem.c
index 461e5dbd3418..4cf4109b953f 100644
--- a/sys/security/mac/mac_posix_sem.c
+++ b/sys/security/mac/mac_posix_sem.c
@@ -39,7 +39,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include "opt_posix.h"
diff --git a/sys/security/mac/mac_posix_shm.c b/sys/security/mac/mac_posix_shm.c
index 15b298d82d02..f094f0663635 100644
--- a/sys/security/mac/mac_posix_shm.c
+++ b/sys/security/mac/mac_posix_shm.c
@@ -39,7 +39,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include <sys/param.h>
diff --git a/sys/security/mac/mac_priv.c b/sys/security/mac/mac_priv.c
index 537c00288298..5d39568ccc4f 100644
--- a/sys/security/mac/mac_priv.c
+++ b/sys/security/mac/mac_priv.c
@@ -38,7 +38,6 @@
#include "sys/cdefs.h"
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include <sys/param.h>
diff --git a/sys/security/mac/mac_process.c b/sys/security/mac/mac_process.c
index 1a760cf629a4..b0a880707c55 100644
--- a/sys/security/mac/mac_process.c
+++ b/sys/security/mac/mac_process.c
@@ -45,7 +45,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include <sys/param.h>
diff --git a/sys/security/mac/mac_socket.c b/sys/security/mac/mac_socket.c
index 11d5e05d43e8..95cfc6b06023 100644
--- a/sys/security/mac/mac_socket.c
+++ b/sys/security/mac/mac_socket.c
@@ -45,7 +45,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include <sys/param.h>
diff --git a/sys/security/mac/mac_system.c b/sys/security/mac/mac_system.c
index b705bbd2d3af..f3da0479ef8a 100644
--- a/sys/security/mac/mac_system.c
+++ b/sys/security/mac/mac_system.c
@@ -53,7 +53,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include <sys/param.h>
diff --git a/sys/security/mac/mac_sysv_msg.c b/sys/security/mac/mac_sysv_msg.c
index c40232290857..6dcd2620840f 100644
--- a/sys/security/mac/mac_sysv_msg.c
+++ b/sys/security/mac/mac_sysv_msg.c
@@ -41,7 +41,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include <sys/param.h>
diff --git a/sys/security/mac/mac_sysv_sem.c b/sys/security/mac/mac_sysv_sem.c
index 12e7cce12c35..f050ddd2347d 100644
--- a/sys/security/mac/mac_sysv_sem.c
+++ b/sys/security/mac/mac_sysv_sem.c
@@ -40,7 +40,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include <sys/param.h>
diff --git a/sys/security/mac/mac_sysv_shm.c b/sys/security/mac/mac_sysv_shm.c
index 168e5b689f93..a5861d0f31bf 100644
--- a/sys/security/mac/mac_sysv_shm.c
+++ b/sys/security/mac/mac_sysv_shm.c
@@ -40,7 +40,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include <sys/param.h>
diff --git a/sys/security/mac/mac_vfs.c b/sys/security/mac/mac_vfs.c
index 05f49c273e74..1d08f61b1a18 100644
--- a/sys/security/mac/mac_vfs.c
+++ b/sys/security/mac/mac_vfs.c
@@ -45,7 +45,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_kdtrace.h"
#include "opt_mac.h"
#include <sys/param.h>