Group all syscall enums in one compile unit
[lttng-modules.git] / include / lttng / events.h
index f71c2c918856d891f4ffab4ba28bc6036c71a525..a04d0f2a9de586e522854d263fea35ca38998547 100644 (file)
 
 struct lttng_channel;
 struct lttng_kernel_session;
-struct lttng_metadata_cache;
 struct lttng_kernel_ring_buffer_ctx;
-struct perf_event;
-struct perf_event_attr;
-struct lib_ring_buffer_config;
 
 /* Type description */
 
@@ -146,6 +142,10 @@ struct lttng_kernel_event_field {
                        nofilter:1;     /* do not consider for filter */
 };
 
+#ifndef PARAMS
+#define PARAMS(args...)        args
+#endif
+
 #define lttng_kernel_static_type_integer(_size, _alignment, _signedness, _byte_order, _base)           \
        ((const struct lttng_kernel_type_common *) __LTTNG_COMPOUND_LITERAL(const struct lttng_kernel_type_integer, { \
                .parent = {                                                                             \
@@ -211,15 +211,20 @@ struct lttng_kernel_event_field {
                .encoding = lttng_kernel_string_encoding_##_encoding,                                   \
        }))
 
-#define lttng_kernel_static_type_struct(_nr_fields, _fields, _alignment)                               \
-       ((const struct lttng_kernel_type_common *) __LTTNG_COMPOUND_LITERAL(const struct lttng_kernel_type_struct, { \
+#define lttng_kernel_static_type_struct_init(_nr_fields, _fields, _alignment)                          \
+       {                                                                                               \
                .parent = {                                                                             \
                        .type = lttng_kernel_type_struct,                                               \
                },                                                                                      \
                .nr_fields = (_nr_fields),                                                              \
                .fields = _fields,                                                                      \
                .alignment = (_alignment),                                                              \
-       }))
+       }
+
+#define lttng_kernel_static_type_struct(_nr_fields, _fields, _alignment)                               \
+       ((const struct lttng_kernel_type_common *) __LTTNG_COMPOUND_LITERAL(const struct lttng_kernel_type_struct, \
+               lttng_kernel_static_type_struct_init(_nr_fields, PARAMS(_fields), _alignment)                   \
+       ))
 
 #define lttng_kernel_static_type_variant(_nr_choices, _choices, _tag_name, _alignment)                 \
        ((const struct lttng_kernel_type_common *) __LTTNG_COMPOUND_LITERAL(const struct lttng_kernel_type_variant, { \
@@ -388,20 +393,6 @@ struct lttng_kernel_channel_buffer_ops {
                                       const char __user *src, size_t len);
 };
 
-#define LTTNG_EVENT_HT_BITS            12
-#define LTTNG_EVENT_HT_SIZE            (1U << LTTNG_EVENT_HT_BITS)
-
-struct lttng_event_ht {
-       struct hlist_head table[LTTNG_EVENT_HT_SIZE];
-};
-
-#define LTTNG_EVENT_NOTIFIER_HT_BITS           12
-#define LTTNG_EVENT_NOTIFIER_HT_SIZE           (1U << LTTNG_EVENT_NOTIFIER_HT_BITS)
-
-struct lttng_event_notifier_ht {
-       struct hlist_head table[LTTNG_EVENT_NOTIFIER_HT_SIZE];
-};
-
 struct lttng_channel {
        unsigned int id;
        struct channel *chan;           /* Channel buffers */
This page took 0.023683 seconds and 4 git commands to generate.