Implement UST PID tracker
[lttng-tools.git] / src / bin / lttng-sessiond / trace-ust.h
index 8be813877410fb129a1b0ff3124693580c89161a..ed1883c76bd4f831df56ed64cd259ee92be1c0cc 100644 (file)
@@ -74,6 +74,14 @@ struct ltt_ust_domain_global {
        struct cds_list_head registry_buffer_uid_list;
 };
 
+struct ust_pid_tracker_node {
+       struct lttng_ht_node_ulong node;
+};
+
+struct ust_pid_tracker {
+       struct lttng_ht *ht;
+};
+
 /* UST session */
 struct ltt_ust_session {
        uint64_t id;    /* Unique identifier of session */
@@ -119,6 +127,8 @@ struct ltt_ust_session {
         */
        char root_shm_path[PATH_MAX];
        char shm_path[PATH_MAX];
+
+       struct ust_pid_tracker pid_tracker;
 };
 
 /*
@@ -191,6 +201,9 @@ void trace_ust_destroy_session(struct ltt_ust_session *session);
 void trace_ust_destroy_channel(struct ltt_ust_channel *channel);
 void trace_ust_destroy_event(struct ltt_ust_event *event);
 
+int trace_ust_track_pid(struct ltt_ust_session *session, int pid);
+int trace_ust_untrack_pid(struct ltt_ust_session *session, int pid);
+
 #else /* HAVE_LIBLTTNG_UST_CTL */
 
 static inline int trace_ust_ht_match_event(struct cds_lfht_node *node,
@@ -272,6 +285,16 @@ struct agent *trace_ust_find_agent(struct ltt_ust_session *session,
 {
        return NULL;
 }
+static inline
+int trace_ust_track_pid(struct ltt_ust_session *session, int pid)
+{
+       return 0;
+}
+static inline
+int trace_ust_untrack_pid(struct ltt_ust_session *session, int pid)
+{
+       return 0;
+}
 
 #endif /* HAVE_LIBLTTNG_UST_CTL */
 
This page took 0.024791 seconds and 5 git commands to generate.