Merge branch 'master' into benchmark
[lttng-tools.git] / src / bin / lttng-sessiond / shm.c
index 432d07ecea5eb4462d36a6a4727737532e97791f..7f6040c4b65360c67df2a7b072ca47e66438705f 100644 (file)
@@ -28,6 +28,8 @@
 
 #include <common/error.h>
 
+#include "benchmark.h"
+#include "measures.h"
 #include "shm.h"
 
 /*
@@ -43,6 +45,8 @@ static int get_wait_shm(char *shm_path, size_t mmap_size, int global)
        int wait_shm_fd, ret;
        mode_t mode;
 
+       tracepoint(ust_notify_perms_start);
+
        /* Default permissions */
        mode = S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP;
 
@@ -88,6 +92,9 @@ static int get_wait_shm(char *shm_path, size_t mmap_size, int global)
         */
        umask(~mode);
 
+       tracepoint(ust_notify_perms_stop);
+
+       tracepoint(ust_notify_shm_start);
        /*
         * Try creating shm (or get rw access). We don't do an exclusive open,
         * because we allow other processes to create+ftruncate it concurrently.
@@ -114,6 +121,8 @@ static int get_wait_shm(char *shm_path, size_t mmap_size, int global)
 #warning "FreeBSD does not support setting file mode on shm FD. Remember that for secure use, lttng-sessiond should be started before applications linked on lttng-ust."
 #endif
 
+       tracepoint(ust_notify_shm_stop);
+
        DBG("Got the wait shm fd %d", wait_shm_fd);
 
        return wait_shm_fd;
@@ -143,9 +152,12 @@ char *shm_ust_get_mmap(char *shm_path, int global)
                goto error;
        }
 
+       tracepoint(ust_notify_mmap_start);
+
        wait_shm_mmap = mmap(NULL, mmap_size, PROT_WRITE | PROT_READ,
                        MAP_SHARED, wait_shm_fd, 0);
 
+       tracepoint(ust_notify_mmap_stop);
        /* close shm fd immediately after taking the mmap reference */
        ret = close(wait_shm_fd);
        if (ret) {
This page took 0.023921 seconds and 4 git commands to generate.