Fix: sessiond: kernel: close on badfd on initialization error
[lttng-tools.git] / src / bin / lttng-sessiond / kernel.c
index afeb181c946f90ae2cb6d0cee40276dd841959cd..b431b3dfb6e935ddf068e80e6dd4097d378a0784 100644 (file)
@@ -2036,6 +2036,7 @@ error_version:
                PERROR("Failed to close kernel tracer file descriptor: fd = %d",
                                kernel_tracer_fd);
        }
+
        kernel_tracer_fd = -1;
        return LTTNG_ERR_KERN_VERSION;
 
@@ -2047,6 +2048,8 @@ error_token_ht:
                                kernel_tracer_event_notifier_group_notification_fd);
        }
 
+       kernel_tracer_event_notifier_group_notification_fd = -1;
+
 error_modules:
        ret = close(kernel_tracer_event_notifier_group_fd);
        if (ret) {
@@ -2054,12 +2057,16 @@ error_modules:
                                kernel_tracer_event_notifier_group_fd);
        }
 
+       kernel_tracer_event_notifier_group_fd = -1;
+
        ret = close(kernel_tracer_fd);
        if (ret) {
                PERROR("Failed to close kernel tracer file descriptor: fd = %d",
                                kernel_tracer_fd);
        }
 
+       kernel_tracer_fd = -1;
+
 error_open:
        modprobe_remove_lttng_control();
 
@@ -2124,8 +2131,6 @@ void cleanup_kernel_tracer(void)
                kernel_tracer_fd = -1;
        }
 
-       DBG("Unloading kernel modules");
-       modprobe_remove_lttng_all();
        free(syscall_table);
 }
 
This page took 0.025093 seconds and 4 git commands to generate.