Fix: sessiond: size-based rotation threshold exceeded in per-pid tracing (2/2)
[lttng-tools.git] / src / bin / lttng-sessiond / notification-thread-internal.hpp
index b53c24b2398a98f77de8534d210b72677eb250de..1cab09d9707347530d34c1b5bbb5e87f46aec1b4 100644 (file)
@@ -28,6 +28,18 @@ struct channel_key {
        enum lttng_domain_type domain;
 };
 
+struct session_state_sample {
+       uint64_t consumed_data_size;
+       struct {
+               /* Whether a rotation is ongoing for this session. */
+               bool ongoing;
+               /* Identifier of the currently ongoing rotation. */
+               uint64_t id;
+               /* Location of last completed rotation. */
+               struct lttng_trace_archive_location *location;
+       } rotation;
+};
+
 struct session_info {
        struct lttng_ref ref;
        uint64_t id;
@@ -48,13 +60,8 @@ struct session_info {
         * destruction.
         */
        struct cds_lfht *sessions_ht;
-       uint64_t consumed_data_size;
-       struct {
-               /* Whether a rotation is ongoing for this session. */
-               bool ongoing;
-               /* Identifier of the currently ongoing rotation. */
-               uint64_t id;
-       } rotation;
+       /* Session's state as of the latest update. */
+       struct session_state_sample last_state_sample;
        /* call_rcu delayed reclaim. */
        struct rcu_head rcu_node;
 };
This page took 0.02304 seconds and 4 git commands to generate.