-#define make_mark_struct_name(channel, name, unique) \
- make_mark_struct_name2(channel, name, unique)
-
-#define make_mark_struct_name2(channel, name, unique) \
- __mark_struct_##channel##_##name##_##unique
-
-#define __trace_mark(generic, channel, name, call_private, format, args...) \
- __trace_mark_counter(generic, channel, name, __COUNTER__, call_private, format, ## args)
-
-#define __trace_mark_counter(generic, channel, name, unique, call_private, format, args...) \
- do { \
- DEFINE_MARKER(channel, name, format, unique); \
- __mark_check_format(format, ## args); \
- if (!generic) { \
- if (unlikely(imv_read( \
- make_mark_struct_name(channel, name, unique).state))) \
- (make_mark_struct_name(channel, name, unique).call) \
- (&make_mark_struct_name(channel, name, unique), \
- call_private, ®s, ## args); \
- } else { \
- if (unlikely(_imv_read( \
- make_mark_struct_name(channel, name, unique).state))) \
- (make_mark_struct_name(channel, name, unique).call) \
- (&make_mark_struct_name(channel, name, unique), \
- call_private, ®s, ## args); \
- } \
- } while (0)
-
-#define __trace_mark_tp(channel, name, call_private, tp_name, tp_cb, format, args...) \
- __trace_mark_tp_counter(channel, name, __COUNTER__, call_private, tp_name, tp_cb, format, ## args)
-
-#define __trace_mark_tp_counter(channel, name, unique, call_private, tp_name, tp_cb, format, args...) \
- do { \
- void __check_tp_type(void) \
- { \
- register_trace_##tp_name(tp_cb); \
- } \
- DEFINE_MARKER_TP(channel, name, tp_name, tp_cb, format, unique);\
- __mark_check_format(format, ## args); \
- (*__mark_##channel##_##name.call)(&__mark_##channel##_##name, \
- call_private, ®s, ## args); \
- } while (0)
-
-extern void marker_update_probe_range(struct marker *begin,
- struct marker *end);
-
-#define GET_MARKER(channel, name) (__mark_##channel##_##name)
-
-#else /* !CONFIG_MARKERS */
-#define DEFINE_MARKER(channel, name, tp_name, tp_cb, format)
-#define __trace_mark(generic, channel, name, call_private, format, args...) \
- __mark_check_format(format, ## args)
-#define __trace_mark_tp(channel, name, call_private, tp_name, tp_cb, \
- format, args...) \