- const struct lttng_kernel_event_desc *desc;
- void *filter;
- struct lttng_kernel_ctx *ctx;
- enum lttng_kernel_instrumentation instrumentation;
- union {
- struct lttng_kprobe kprobe;
- struct {
- struct lttng_krp *lttng_krp;
- char *symbol_name;
- } kretprobe;
- struct lttng_uprobe uprobe;
- struct {
- enum lttng_syscall_entryexit entryexit;
- enum lttng_syscall_abi abi;
- struct hlist_node node; /* chain registered syscall event */
- } syscall;
- } u;
- struct list_head list; /* Event list in session */
- unsigned int metadata_dumped:1;
-
- /* Backward references: list of lttng_enabler_ref (ref to enablers) */
- struct list_head enablers_ref_head;
- struct hlist_node hlist; /* session ht of events */
- int registered; /* has reg'd tracepoint probe */
- /* list of struct lttng_bytecode_runtime, sorted by seqnum */
- struct list_head filter_bytecode_runtime_head;
- int has_enablers_without_bytecode;
+ int eval_filter; /* Need to evaluate filters */
+ int (*run_filter)(struct lttng_kernel_event_common *event,
+ const char *stack_data,
+ void *filter_ctx);