Add EEXIST support for kernel event on the tracer side
[lttng-tools.git] / ltt-sessiond / event.c
index e8f54504cd1c7081e0b8fcce8fa5cec8a1075e70..c12e385b31015bd41207947d42a807db22d75a92 100644 (file)
@@ -15,6 +15,7 @@
  * Place - Suite 330, Boston, MA  02111-1307, USA.
  */
 
  * Place - Suite 330, Boston, MA  02111-1307, USA.
  */
 
+#include <errno.h>
 #include <urcu/list.h>
 
 #include <lttng/lttng.h>
 #include <urcu/list.h>
 
 #include <lttng/lttng.h>
@@ -127,7 +128,11 @@ int event_kernel_enable_tracepoint(struct ltt_kernel_session *ksession,
        if (kevent == NULL) {
                ret = kernel_create_event(event, kchan);
                if (ret < 0) {
        if (kevent == NULL) {
                ret = kernel_create_event(event, kchan);
                if (ret < 0) {
-                       ret = LTTCOMM_KERN_ENABLE_FAIL;
+                       if (ret == -EEXIST) {
+                               ret = LTTCOMM_KERN_EVENT_EXIST;
+                       } else {
+                               ret = LTTCOMM_KERN_ENABLE_FAIL;
+                       }
                        goto end;
                }
        } else if (kevent->enabled == 0) {
                        goto end;
                }
        } else if (kevent->enabled == 0) {
This page took 0.023044 seconds and 4 git commands to generate.