diff options
author | Steven Rostedt (VMware) <rostedt@goodmis.org> | 2020-12-12 00:37:54 +0300 |
---|---|---|
committer | Peter Zijlstra <peterz@infradead.org> | 2021-01-22 13:08:56 +0300 |
commit | 2f0df49c89acaa58571d509830bc481250699885 (patch) | |
tree | 828a30d85916fdf4a99202b3e89d37416d8684c1 /include/linux/compiler.h | |
parent | c7539258146844ebd8795c31275c720ded61bb84 (diff) | |
download | linux-2f0df49c89acaa58571d509830bc481250699885.tar.xz |
jump_label: Do not profile branch annotations
While running my branch profiler that checks for incorrect "likely" and
"unlikely"s around the kernel, there's a large number of them that are
incorrect due to being "static_branches".
As static_branches are rather special, as they are likely or unlikely for
other reasons than normal annotations are used for, there's no reason to
have them be profiled.
Expose the "unlikely_notrace" and "likely_notrace" so that the
static_branch can use them, and have them be ignored by the branch
profilers.
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20201211163754.585174b9@gandalf.local.home
Diffstat (limited to 'include/linux/compiler.h')
-rw-r--r-- | include/linux/compiler.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/compiler.h b/include/linux/compiler.h index b8fe0c23cfff..df5b405e6305 100644 --- a/include/linux/compiler.h +++ b/include/linux/compiler.h @@ -76,6 +76,8 @@ void ftrace_likely_update(struct ftrace_likely_data *f, int val, #else # define likely(x) __builtin_expect(!!(x), 1) # define unlikely(x) __builtin_expect(!!(x), 0) +# define likely_notrace(x) likely(x) +# define unlikely_notrace(x) unlikely(x) #endif /* Optimization barrier */ |