Refactoring: struct lttng_stack_ctx
[lttng-ust.git] / liblttng-ust / lttng-context.c
index e441d4ae2060561a44b9d980ef3e6d73800b1a26..dc6e13b3c5d546f183fb5b1a80ec7549a126764f 100644 (file)
@@ -1,32 +1,19 @@
 /*
- * lttng-context.c
- *
- * LTTng UST trace/channel/event context management.
+ * SPDX-License-Identifier: LGPL-2.1-only
  *
  * Copyright (C) 2011 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
  *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; only
- * version 2.1 of the License.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ * LTTng UST trace/channel/event context management.
  */
 
 #define _LGPL_SOURCE
 #include <lttng/ust-events.h>
 #include <lttng/ust-tracer.h>
-#include <lttng/ust-context-provider.h>
+#include <ust-context-provider.h>
 #include <lttng/urcu/pointer.h>
+#include <lttng/urcu/urcu-ust.h>
 #include <usterr-signal-safe.h>
-#include <helper.h>
+#include <ust-helper.h>
 #include <stddef.h>
 #include <string.h>
 #include <assert.h>
@@ -159,7 +146,7 @@ int lttng_context_add_rcu(struct lttng_ctx **ctx_p,
        *nf = *f;
        lttng_context_update(new_ctx);
        lttng_ust_rcu_assign_pointer(*ctx_p, new_ctx);
-       lttng_ust_synchronize_trace();
+       lttng_ust_urcu_synchronize_rcu();
        if (old_ctx) {
                free(old_ctx->fields);
                free(old_ctx);
@@ -185,28 +172,6 @@ void lttng_context_update(struct lttng_ctx *ctx)
                case atype_integer:
                        field_align = type->u.integer.alignment;
                        break;
-               case atype_array:
-               {
-                       struct lttng_basic_type *btype;
-
-                       btype = &type->u.legacy.array.elem_type;
-                       switch (btype->atype) {
-                       case atype_integer:
-                               field_align = btype->u.basic.integer.alignment;
-                               break;
-                       case atype_string:
-                               break;
-
-                       case atype_array:
-                       case atype_array_nestable:
-                       case atype_sequence:
-                       case atype_sequence_nestable:
-                       default:
-                               WARN_ON_ONCE(1);
-                               break;
-                       }
-                       break;
-               }
                case atype_array_nestable:
                {
                        const struct lttng_type *nested_type;
@@ -219,9 +184,7 @@ void lttng_context_update(struct lttng_ctx *ctx)
                        case atype_string:
                                break;
 
-                       case atype_array:
                        case atype_array_nestable:
-                       case atype_sequence:
                        case atype_sequence_nestable:
                        default:
                                WARN_ON_ONCE(1);
@@ -231,47 +194,6 @@ void lttng_context_update(struct lttng_ctx *ctx)
                                        type->u.array_nestable.alignment);
                        break;
                }
-               case atype_sequence:
-               {
-                       struct lttng_basic_type *btype;
-
-                       btype = &type->u.legacy.sequence.length_type;
-                       switch (btype->atype) {
-                       case atype_integer:
-                               field_align = btype->u.basic.integer.alignment;
-                               break;
-
-                       case atype_string:
-                       case atype_array:
-                       case atype_array_nestable:
-                       case atype_sequence:
-                       case atype_sequence_nestable:
-                       default:
-                               WARN_ON_ONCE(1);
-                               break;
-                       }
-
-                       btype = &type->u.legacy.sequence.elem_type;
-                       switch (btype->atype) {
-                       case atype_integer:
-                               field_align = max_t(size_t,
-                                       field_align,
-                                       btype->u.basic.integer.alignment);
-                               break;
-
-                       case atype_string:
-                               break;
-
-                       case atype_array:
-                       case atype_array_nestable:
-                       case atype_sequence:
-                       case atype_sequence_nestable:
-                       default:
-                               WARN_ON_ONCE(1);
-                               break;
-                       }
-                       break;
-               }
                case atype_sequence_nestable:
                {
                        const struct lttng_type *nested_type;
@@ -285,9 +207,7 @@ void lttng_context_update(struct lttng_ctx *ctx)
                        case atype_string:
                                break;
 
-                       case atype_array:
                        case atype_array_nestable:
-                       case atype_sequence:
                        case atype_sequence_nestable:
                        default:
                                WARN_ON_ONCE(1);
@@ -301,7 +221,6 @@ void lttng_context_update(struct lttng_ctx *ctx)
                        break;
                case atype_dynamic:
                        break;
-               case atype_enum:
                case atype_enum_nestable:
                default:
                        WARN_ON_ONCE(1);
@@ -393,7 +312,7 @@ int lttng_ust_context_set_provider_rcu(struct lttng_ctx **_ctx,
        }
        new_ctx->fields = new_fields;
        lttng_ust_rcu_assign_pointer(*_ctx, new_ctx);
-       lttng_ust_synchronize_trace();
+       lttng_ust_urcu_synchronize_rcu();
        free(ctx->fields);
        free(ctx);
        return 0;
This page took 0.02439 seconds and 4 git commands to generate.