Fix: ask new streams HUP
[lttng-tools.git] / src / bin / lttng-sessiond / ust-app.h
index 4f25f147c85d9444d735b5619011a70be900b96d..331af9625175a202ba9044cbcfa612201840eaba 100644 (file)
@@ -183,6 +183,8 @@ struct ust_app_session {
        int started;  /* allows detection of start vs restart. */
        int handle;   /* used has unique identifier for app session */
 
+       bool deleted;   /* Session deleted flag. Check with lock held. */
+
        /*
         * Tracing session ID. Multiple ust app session can have the same tracing
         * session id making this value NOT unique to the object.
@@ -223,6 +225,8 @@ struct ust_app_session {
  */
 struct ust_app {
        int sock;
+       pthread_mutex_t sock_lock;      /* Protects sock protocol. */
+
        int notify_sock;
        pid_t pid;
        pid_t ppid;
@@ -279,11 +283,7 @@ struct ust_app {
 #ifdef HAVE_LIBLTTNG_UST_CTL
 
 int ust_app_register(struct ust_register_msg *msg, int sock);
-static inline
-int ust_app_register_done(int sock)
-{
-       return ustctl_register_done(sock);
-}
+int ust_app_register_done(struct ust_app *app);
 int ust_app_version(struct ust_app *app);
 void ust_app_unregister(int sock);
 int ust_app_start_trace_all(struct ltt_ust_session *usess);
@@ -328,8 +328,8 @@ void ust_app_destroy(struct ust_app *app);
 int ust_app_snapshot_record(struct ltt_ust_session *usess,
                struct snapshot_output *output, int wait,
                uint64_t nb_packets_per_stream);
-uint64_t ust_app_get_size_one_more_packet_per_stream(struct ltt_ust_session *usess,
-               uint64_t cur_nr_packets);
+uint64_t ust_app_get_size_one_more_packet_per_stream(
+               struct ltt_ust_session *usess, uint64_t cur_nr_packets);
 struct ust_app *ust_app_find_by_sock(int sock);
 
 static inline
@@ -376,7 +376,7 @@ int ust_app_register(struct ust_register_msg *msg, int sock)
        return -ENOSYS;
 }
 static inline
-int ust_app_register_done(int sock)
+int ust_app_register_done(struct ust_app *app)
 {
        return -ENOSYS;
 }
@@ -538,6 +538,11 @@ struct ust_app *ust_app_find_by_pid(pid_t pid)
 {
        return NULL;
 }
+static inline
+uint64_t ust_app_get_size_one_more_packet_per_stream(
+               struct ltt_ust_session *usess, uint64_t cur_nr_packets) {
+       return 0;
+}
 
 #endif /* HAVE_LIBLTTNG_UST_CTL */
 
This page took 0.028445 seconds and 4 git commands to generate.