X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=include%2Flttng%2Fevents-internal.h;h=a583a2d3c6b0ff50cfa62341120a7f24cf20b5cf;hb=8a44545778a66f5c473b348ff0231145d59e1d21;hp=30cf4adc8bab62723421c77cdb2c0c872c8de2ec;hpb=a775608d0d1d6142c80c26b21ff79bf7e04d8e53;p=lttng-modules.git diff --git a/include/lttng/events-internal.h b/include/lttng/events-internal.h index 30cf4adc..a583a2d3 100644 --- a/include/lttng/events-internal.h +++ b/include/lttng/events-internal.h @@ -20,7 +20,7 @@ struct lttng_kernel_event_common_private { uint64_t user_token; int has_enablers_without_filter_bytecode; - /* list of struct lttng_kernel_bytecode_runtime, sorted by seqnum */ + /* list of struct lttng_bytecode_runtime, sorted by seqnum */ struct list_head filter_bytecode_runtime_head; enum lttng_kernel_abi_instrumentation instrumentation; /* Selected by instrumentation */ @@ -64,6 +64,20 @@ struct lttng_kernel_event_notifier_private { }; +enum lttng_kernel_bytecode_interpreter_ret { + LTTNG_KERNEL_BYTECODE_INTERPRETER_ERROR = -1, + LTTNG_KERNEL_BYTECODE_INTERPRETER_OK = 0, +}; + +enum lttng_kernel_bytecode_filter_result { + LTTNG_KERNEL_BYTECODE_FILTER_ACCEPT = 0, + LTTNG_KERNEL_BYTECODE_FILTER_REJECT = 1, +}; + +struct lttng_kernel_bytecode_filter_ctx { + enum lttng_kernel_bytecode_filter_result result; +}; + static inline const struct lttng_kernel_type_integer *lttng_kernel_get_type_integer(const struct lttng_kernel_type_common *type) { @@ -138,4 +152,9 @@ static inline bool lttng_kernel_type_is_bytewise_integer(const struct lttng_kern return true; } +int lttng_kernel_interpret_event_filter(const struct lttng_kernel_event_common *event, + const char *interpreter_stack_data, + struct lttng_probe_ctx *probe_ctx, + void *event_filter_ctx); + #endif /* _LTTNG_EVENTS_INTERNAL_H */