Fix: ust metadata: resample clock on regenerate metadata
[lttng-tools.git] / src / bin / lttng-sessiond / tracker.cpp
index 1cae40350cbcd8c6466ce628fa6a00944539491c..10f8dd59811a4e99f51d6c5fba025e347c4d7df8 100644 (file)
@@ -7,8 +7,8 @@
  */
 
 #include "lttng/tracker.h"
-#include "common/dynamic-array.h"
-#include "common/macros.h"
+#include "common/dynamic-array.hpp"
+#include "common/macros.hpp"
 #define _LGPL_SOURCE
 #include <grp.h>
 #include <pwd.h>
 #include <urcu/list.h>
 #include <urcu/rculfhash.h>
 
-#include "tracker.h"
-#include <common/defaults.h>
-#include <common/error.h>
-#include <common/hashtable/hashtable.h>
-#include <common/hashtable/utils.h>
-#include <common/tracker.h>
+#include "tracker.hpp"
+#include <common/defaults.hpp>
+#include <common/error.hpp>
+#include <common/hashtable/hashtable.hpp>
+#include <common/hashtable/utils.hpp>
+#include <common/tracker.hpp>
 #include <lttng/lttng-error.h>
 
+struct process_attr_tracker {
+       enum lttng_tracking_policy policy;
+       struct cds_lfht *inclusion_set_ht;
+};
+
+namespace {
 struct process_attr_tracker_value_node {
        struct process_attr_value *value;
        struct cds_lfht_node inclusion_set_ht_node;
        struct rcu_head rcu_head;
 };
-
-struct process_attr_tracker {
-       enum lttng_tracking_policy policy;
-       struct cds_lfht *inclusion_set_ht;
-};
+} /* namespace */
 
 static void process_attr_tracker_value_node_rcu_free(struct rcu_head *rcu_head)
 {
-       struct process_attr_tracker_value_node *node =
-                       container_of(rcu_head, typeof(*node), rcu_head);
+       struct process_attr_tracker_value_node *node = lttng::utils::container_of(
+                       rcu_head, &process_attr_tracker_value_node::rcu_head);
 
        free(node);
 }
@@ -49,7 +51,7 @@ struct process_attr_tracker *process_attr_tracker_create(void)
 {
        struct process_attr_tracker *tracker;
 
-       tracker = (process_attr_tracker *) zmalloc(sizeof(*tracker));
+       tracker = zmalloc<process_attr_tracker>();
        if (!tracker) {
                return NULL;
        }
@@ -175,9 +177,9 @@ static struct process_attr_tracker_value_node *process_attr_tracker_lookup(
        node = cds_lfht_iter_get_node(&iter);
        rcu_read_unlock();
 
-       return node ? container_of(node, struct process_attr_tracker_value_node,
-                                     inclusion_set_ht_node) :
-                     NULL;
+       return node ? lttng::utils::container_of(node,
+                                     &process_attr_tracker_value_node::inclusion_set_ht_node) :
+                           NULL;
 }
 
 /* Protected by session mutex held by caller. */
@@ -201,7 +203,7 @@ enum process_attr_tracker_status process_attr_tracker_inclusion_set_add_value(
                goto end;
        }
 
-       value_node = (process_attr_tracker_value_node *) zmalloc(sizeof(*value_node));
+       value_node = zmalloc<process_attr_tracker_value_node>();
        if (!value_node) {
                status = PROCESS_ATTR_TRACKER_STATUS_ERROR;
                goto end;
This page took 0.024529 seconds and 4 git commands to generate.