X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=include%2Flttng%2Fevents.h;h=c6c46b4acbdcab8ce8daaa4f1e039143f74997d5;hb=fc66bf6a911e374789389f465c653c0c33b4c197;hp=16dc08d8584e6bc919b789e6583b53ae4fdb9b9e;hpb=b0315544e745613aadcdfefe0c4c336689648c66;p=lttng-modules.git diff --git a/include/lttng/events.h b/include/lttng/events.h index 16dc08d8..c6c46b4a 100644 --- a/include/lttng/events.h +++ b/include/lttng/events.h @@ -26,7 +26,7 @@ #define lttng_is_signed_type(type) (((type) -1) < (type) 1) struct lttng_channel; -struct lttng_session; +struct lttng_kernel_session; struct lttng_metadata_cache; struct lttng_kernel_ring_buffer_ctx; struct perf_event; @@ -410,7 +410,7 @@ struct lttng_channel { int enabled; struct lttng_kernel_ctx *ctx; /* Event ID management */ - struct lttng_session *session; + struct lttng_kernel_session *session; struct file *file; /* File associated to channel */ unsigned int free_event_id; /* Next event ID to allocate */ struct list_head list; /* Channel list */ @@ -435,19 +435,6 @@ struct lttng_channel { tstate:1; /* Transient enable state */ }; -struct lttng_metadata_stream { - void *priv; /* Ring buffer private data */ - struct lttng_metadata_cache *metadata_cache; - unsigned int metadata_in; /* Bytes read from the cache */ - unsigned int metadata_out; /* Bytes consumed from stream */ - int finalized; /* Has channel been finalized */ - wait_queue_head_t read_wait; /* Reader buffer-level wait queue */ - struct list_head list; /* Stream list */ - struct lttng_transport *transport; - uint64_t version; /* Current version of the metadata cache */ - bool coherent; /* Stream in a coherent state */ -}; - #define LTTNG_DYNAMIC_LEN_STACK_SIZE 128 struct lttng_dynamic_len_stack { @@ -480,40 +467,24 @@ struct lttng_id_tracker_rcu { }; struct lttng_id_tracker { - struct lttng_session *session; + struct lttng_kernel_session *session; enum tracker_type tracker_type; struct lttng_id_tracker_rcu *p; /* RCU dereferenced. */ }; -struct lttng_id_hash_node { - struct hlist_node hlist; - int id; -}; +struct lttng_kernel_session_private; + +struct lttng_kernel_session { + struct lttng_kernel_session_private *priv; /* Private session interface */ -struct lttng_session { int active; /* Is trace session active ? */ - int been_active; /* Has trace session been active ? */ - struct file *file; /* File associated to session */ - struct list_head chan; /* Channel list head */ - struct list_head events; /* Event list head */ - struct list_head list; /* Session list */ - unsigned int free_chan_id; /* Next chan ID to allocate */ - uuid_le uuid; /* Trace session unique ID */ - struct lttng_metadata_cache *metadata_cache; + struct lttng_id_tracker pid_tracker; struct lttng_id_tracker vpid_tracker; struct lttng_id_tracker uid_tracker; struct lttng_id_tracker vuid_tracker; struct lttng_id_tracker gid_tracker; struct lttng_id_tracker vgid_tracker; - unsigned int metadata_dumped:1, - tstate:1; /* Transient enable state */ - /* List of event enablers */ - struct list_head enablers_head; - /* Hash table of events */ - struct lttng_event_ht events_ht; - char name[LTTNG_KERNEL_ABI_SESSION_NAME_LEN]; - char creation_time[LTTNG_KERNEL_ABI_SESSION_CREATION_TIME_ISO8601_LEN]; }; int lttng_kernel_probe_register(struct lttng_kernel_probe_desc *desc);