X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Ftracker.cpp;h=10f8dd59811a4e99f51d6c5fba025e347c4d7df8;hb=139a8d250fb18f8ffc95b0936f7285f7b484b72f;hp=7d587280645b0ebe72381075038994a15f17d605;hpb=64803277bbdbe0a943360d918298a48157d9da55;p=lttng-tools.git diff --git a/src/bin/lttng-sessiond/tracker.cpp b/src/bin/lttng-sessiond/tracker.cpp index 7d5872806..10f8dd598 100644 --- a/src/bin/lttng-sessiond/tracker.cpp +++ b/src/bin/lttng-sessiond/tracker.cpp @@ -26,21 +26,23 @@ #include #include +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); } @@ -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. */