diff options
author | mjg <mjg@FreeBSD.org> | 2017-03-16 07:46:24 +0000 |
---|---|---|
committer | mjg <mjg@FreeBSD.org> | 2017-03-16 07:46:24 +0000 |
commit | c4583dcae0e9a8913daa25b170c4c1e5ab7f2e9e (patch) | |
tree | 9c9f83de04d9dedfc8a6809c7cf323732bb544bb /sys/sys | |
parent | 3f6f07c3cdebcbac82de4c6004c77ccd00354f69 (diff) | |
download | FreeBSD-src-c4583dcae0e9a8913daa25b170c4c1e5ab7f2e9e.zip FreeBSD-src-c4583dcae0e9a8913daa25b170c4c1e5ab7f2e9e.tar.gz |
MFC r313874:
Make inline lockstat checks just inspect lockstat_enabled
There is no correctness issue and this lets the kernel just test one typically
false variable.
Diffstat (limited to 'sys/sys')
-rw-r--r-- | sys/sys/lockstat.h | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/sys/sys/lockstat.h b/sys/sys/lockstat.h index 6183bc7..77294fb 100644 --- a/sys/sys/lockstat.h +++ b/sys/sys/lockstat.h @@ -107,6 +107,13 @@ extern int lockstat_enabled; LOCKSTAT_RECORD1(probe, lp, a); \ } while (0) +#ifndef LOCK_PROFILING +#define LOCKSTAT_PROFILE_ENABLED(probe) __predict_false(lockstat_enabled) +#define LOCKSTAT_OOL_PROFILE_ENABLED(probe) LOCKSTAT_PROFILE_ENABLED(probe) +#else +#define LOCKSTAT_OOL_PROFILE_ENABLED(probe) 1 +#endif + struct lock_object; uint64_t lockstat_nsecs(struct lock_object *); @@ -130,16 +137,12 @@ uint64_t lockstat_nsecs(struct lock_object *); #define LOCKSTAT_PROFILE_RELEASE_RWLOCK(probe, lp, a) \ LOCKSTAT_PROFILE_RELEASE_LOCK(probe, lp) -#endif /* !KDTRACE_HOOKS */ - #ifndef LOCK_PROFILING -#define LOCKSTAT_PROFILE_ENABLED(probe) \ - SDT_PROBE_ENABLED(lockstat, , , probe) -#define LOCKSTAT_OOL_PROFILE_ENABLED(probe) \ - SDT_PROBE_ENABLED(lockstat, , , probe) -#else -#define LOCKSTAT_OOL_PROFILE_ENABLED(probe) 1 +#define LOCKSTAT_PROFILE_ENABLED(probe) 0 #endif +#define LOCKSTAT_OOL_PROFILE_ENABLED(probe) 1 + +#endif /* !KDTRACE_HOOKS */ #endif /* _KERNEL */ #endif /* _SYS_LOCKSTAT_H */ |