X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=lttng-events.h;h=93a10fed596ad2e0b4863395a2c83076ea79abf7;hb=78f20682a7031ae3f7642614b85a6da1f8788fe2;hp=f6fe151886debe591ff295c800a80b5e5d81e5db;hpb=56377c91f874d50ea03d1f3f4698c77f69cbf83c;p=lttng-modules.git diff --git a/lttng-events.h b/lttng-events.h index f6fe1518..93a10fed 100644 --- a/lttng-events.h +++ b/lttng-events.h @@ -285,6 +285,13 @@ struct lttng_enabler_ref { struct lttng_enabler *ref; /* backward ref */ }; +struct lttng_uprobe_handler { + struct lttng_event *event; + loff_t offset; + struct uprobe_consumer up_consumer; + struct list_head node; +}; + /* * lttng_event structure is referred to by the tracing fast path. It must be * kept small. @@ -311,9 +318,8 @@ struct lttng_event { char *symbol_name; } ftrace; struct { - struct uprobe_consumer up_consumer; struct inode *inode; - loff_t offset; + struct list_head head; } uprobe; } u; struct list_head list; /* Event list in session */ @@ -515,6 +521,8 @@ struct lttng_session { struct list_head enablers_head; /* Hash table of events */ struct lttng_event_ht events_ht; + char name[LTTNG_KERNEL_SESSION_NAME_LEN]; + char creation_time[LTTNG_KERNEL_SESSION_CREATION_TIME_ISO8601_LEN]; }; struct lttng_metadata_cache { @@ -777,19 +785,27 @@ void lttng_kprobes_destroy_private(struct lttng_event *event) } #endif +int lttng_event_add_callsite(struct lttng_event *event, + struct lttng_kernel_event_callsite *callsite); + #ifdef CONFIG_UPROBES int lttng_uprobes_register(const char *name, - int fd, - uint64_t offset, - struct lttng_event *event); + int fd, struct lttng_event *event); +int lttng_uprobes_add_callsite(struct lttng_event *event, + struct lttng_kernel_event_callsite *callsite); void lttng_uprobes_unregister(struct lttng_event *event); void lttng_uprobes_destroy_private(struct lttng_event *event); #else static inline int lttng_uprobes_register(const char *name, - int fd, - uint64_t offset, - struct lttng_event *event) + int fd, struct lttng_event *event) +{ + return -ENOSYS; +} + +static inline +int lttng_uprobes_add_callsite(struct lttng_event *event, + struct lttng_kernel_event_callsite *callsite) { return -ENOSYS; }