diff options
author | 2021-11-22 18:30:21 +0900 | |
---|---|---|
committer | 2021-12-06 15:37:21 -0500 | |
commit | 55de2c0b5610cba5a5a93c0788031133c457e689 (patch) | |
tree | 49ceb35bc7dd01764c78c76504912aca57c9d55d /include/trace/perf.h | |
parent | tracing: Support __rel_loc relative dynamic data location attribute (diff) | |
download | linux-55de2c0b5610cba5a5a93c0788031133c457e689.tar.gz linux-55de2c0b5610cba5a5a93c0788031133c457e689.tar.bz2 linux-55de2c0b5610cba5a5a93c0788031133c457e689.zip |
tracing: Add '__rel_loc' using trace event macros
Add '__rel_loc' using trace event macros. These macros are usually
not used in the kernel, except for testing purpose.
This also add "rel_" variant of macros for dynamic_array string,
and bitmask.
Link: https://lkml.kernel.org/r/163757342119.510314.816029622439099016.stgit@devnote2
Cc: Beau Belgrave <beaub@linux.microsoft.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Tom Zanussi <zanussi@kernel.org>
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Diffstat (limited to 'include/trace/perf.h')
-rw-r--r-- | include/trace/perf.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/include/trace/perf.h b/include/trace/perf.h index dbc6c74defc3..ea4405de175a 100644 --- a/include/trace/perf.h +++ b/include/trace/perf.h @@ -21,6 +21,22 @@ #undef __get_bitmask #define __get_bitmask(field) (char *)__get_dynamic_array(field) +#undef __get_rel_dynamic_array +#define __get_rel_dynamic_array(field) \ + ((void *)(&__entry->__rel_loc_##field) + \ + sizeof(__entry->__rel_loc_##field) + \ + (__entry->__rel_loc_##field & 0xffff)) + +#undef __get_rel_dynamic_array_len +#define __get_rel_dynamic_array_len(field) \ + ((__entry->__rel_loc_##field >> 16) & 0xffff) + +#undef __get_rel_str +#define __get_rel_str(field) ((char *)__get_rel_dynamic_array(field)) + +#undef __get_rel_bitmask +#define __get_rel_bitmask(field) (char *)__get_rel_dynamic_array(field) + #undef __perf_count #define __perf_count(c) (__count = (c)) |