Fix: update writeback instrumentation for kernel 4.14
[lttng-modules.git] / lttng-events.c
index d00701466a5d47c532cf3d32c20368d19eda9527..21c41133b859623e6a5ea63c65927021cb646171 100644 (file)
 #include <wrapper/random.h>
 #include <wrapper/tracepoint.h>
 #include <wrapper/list.h>
+#include <wrapper/types.h>
 #include <lttng-kernel-version.h>
 #include <lttng-events.h>
 #include <lttng-tracer.h>
 #include <lttng-abi-old.h>
 #include <lttng-endian.h>
+#include <lttng-string-utils.h>
 #include <wrapper/vzalloc.h>
 #include <wrapper/ringbuffer/backend.h>
 #include <wrapper/ringbuffer/frontend.h>
@@ -130,7 +132,7 @@ struct lttng_session *lttng_session_create(void)
        int i;
 
        mutex_lock(&sessions_mutex);
-       session = kzalloc(sizeof(struct lttng_session), GFP_KERNEL);
+       session = lttng_kvzalloc(sizeof(struct lttng_session), GFP_KERNEL);
        if (!session)
                goto err;
        INIT_LIST_HEAD(&session->chan);
@@ -161,7 +163,7 @@ struct lttng_session *lttng_session_create(void)
 err_free_cache:
        kfree(metadata_cache);
 err_free_session:
-       kfree(session);
+       lttng_kvfree(session);
 err:
        mutex_unlock(&sessions_mutex);
        return NULL;
@@ -210,7 +212,7 @@ void lttng_session_destroy(struct lttng_session *session)
        kref_put(&session->metadata_cache->refcount, metadata_cache_destroy);
        list_del(&session->list);
        mutex_unlock(&sessions_mutex);
-       kfree(session);
+       lttng_kvfree(session);
 }
 
 int lttng_session_statedump(struct lttng_session *session)
@@ -1142,11 +1144,11 @@ fd_error:
  * Enabler management.
  */
 static
-int lttng_match_enabler_wildcard(const char *desc_name,
-               const char *name)
+int lttng_match_enabler_star_glob(const char *desc_name,
+               const char *pattern)
 {
-       /* Compare excluding final '*' */
-       if (strncmp(desc_name, name, strlen(name) - 1))
+       if (!strutils_star_glob_match(pattern, LTTNG_SIZE_MAX,
+                       desc_name, LTTNG_SIZE_MAX))
                return 0;
        return 1;
 }
@@ -1191,8 +1193,8 @@ int lttng_desc_match_enabler(const struct lttng_event_desc *desc,
                return -EINVAL;
        }
        switch (enabler->type) {
-       case LTTNG_ENABLER_WILDCARD:
-               return lttng_match_enabler_wildcard(desc_name, enabler_name);
+       case LTTNG_ENABLER_STAR_GLOB:
+               return lttng_match_enabler_star_glob(desc_name, enabler_name);
        case LTTNG_ENABLER_NAME:
                return lttng_match_enabler_name(desc_name, enabler_name);
        default:
This page took 0.033709 seconds and 4 git commands to generate.