tracepoint: Use __used attribute definitions from compiler_attributes.h
authorNick Desaulniers <ndesaulniers@google.com>
Thu, 30 Jul 2020 22:45:55 +0000 (15:45 -0700)
committerSteven Rostedt (VMware) <rostedt@goodmis.org>
Mon, 3 Aug 2020 17:34:37 +0000 (13:34 -0400)
Just a small cleanup while I was touching this header.
compiler_attributes.h does feature detection of these __attributes__(())
and provides more concise ways to invoke them.

Link: https://lkml.kernel.org/r/20200730224555.2142154-3-ndesaulniers@google.com
Acked-by: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
include/linux/tracepoint.h

index 3a5b717d92e8088216584678ca536947dbe15277..598fec9f9dbf8712db870a24c2c0c6e92884aac5 100644 (file)
@@ -116,8 +116,7 @@ static inline struct tracepoint *tracepoint_ptr_deref(tracepoint_ptr_t *p)
 
 #define __TRACEPOINT_ENTRY(name)                                        \
        static tracepoint_ptr_t __tracepoint_ptr_##name __used           \
-       __attribute__((section("__tracepoints_ptrs"))) =                 \
-               &__tracepoint_##name
+       __section(__tracepoints_ptrs) = &__tracepoint_##name
 #endif
 
 #endif /* _LINUX_TRACEPOINT_H */
@@ -280,9 +279,9 @@ static inline struct tracepoint *tracepoint_ptr_deref(tracepoint_ptr_t *p)
  */
 #define DEFINE_TRACE_FN(name, reg, unreg)                               \
        static const char __tpstrtab_##name[]                            \
-       __attribute__((section("__tracepoints_strings"))) = #name;       \
-       struct tracepoint __tracepoint_##name                            \
-       __attribute__((section("__tracepoints"), used)) =                \
+       __section(__tracepoints_strings) = #name;                        \
+       struct tracepoint __tracepoint_##name __used                     \
+       __section(__tracepoints) =                                       \
                { __tpstrtab_##name, STATIC_KEY_INIT_FALSE, reg, unreg, NULL };\
        __TRACEPOINT_ENTRY(name);
 
@@ -361,7 +360,7 @@ static inline struct tracepoint *tracepoint_ptr_deref(tracepoint_ptr_t *p)
                static const char *___tp_str __tracepoint_string = str; \
                ___tp_str;                                              \
        })
-#define __tracepoint_string    __attribute__((section("__tracepoint_str"), used))
+#define __tracepoint_string    __used __section(__tracepoint_str)
 #else
 /*
  * tracepoint_string() is used to save the string address for userspace