Rename C++ header files to .hpp
[lttng-tools.git] / src / bin / lttng-sessiond / modprobe.cpp
index 4c1d62b486e2b37f4181f398a7c03da58289b65d..0dc123de156eb23247d8196eb0971493b3a99b1a 100644 (file)
 #include <stdlib.h>
 #include <sys/wait.h>
 
-#include <common/common.h>
-#include <common/utils.h>
+#include <common/common.hpp>
+#include <common/utils.hpp>
 
-#include "modprobe.h"
-#include "kern-modules.h"
-#include "lttng-sessiond.h"
+#include "modprobe.hpp"
+#include "kern-modules.hpp"
+#include "lttng-sessiond.hpp"
 
 /* LTTng kernel tracer mandatory core modules list */
 struct kern_modules_param kern_modules_control_core[] = {
        {
                .name = (char *) "lttng-ring-buffer-client-discard",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_REQUIRED,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-ring-buffer-client-overwrite",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_REQUIRED,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-ring-buffer-metadata-client",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_REQUIRED,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-ring-buffer-client-mmap-discard",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_REQUIRED,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-ring-buffer-client-mmap-overwrite",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_REQUIRED,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-ring-buffer-metadata-mmap-client",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_REQUIRED,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-ring-buffer-event_notifier-client",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-counter-client-percpu-64-modular",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-counter-client-percpu-32-modular",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
 };
 
@@ -70,170 +79,212 @@ struct kern_modules_param kern_modules_probes_default[] = {
        {
                .name = (char *) "lttng-probe-asoc",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-block",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-btrfs",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-compaction",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-ext3",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-ext4",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-gpio",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-i2c",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-irq",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-jbd",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-jbd2",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-kmem",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-kvm",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-kvm-x86",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-kvm-x86-mmu",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-lock",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-module",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-napi",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-net",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-power",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-preemptirq",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-printk",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-random",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-rcu",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-regmap",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-regulator",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-rpm",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-sched",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-scsi",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-signal",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-skb",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-sock",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-statedump",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-sunrpc",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-timer",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-udp",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-vmscan",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-v4l2",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-workqueue",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-writeback",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-x86-irq-vectors",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
        {
                .name = (char *) "lttng-probe-x86-exceptions",
                .load_policy = KERNEL_MODULE_PROPERTY_LOAD_POLICY_OPTIONAL,
+               .loaded = false,
        },
 };
 
@@ -242,15 +293,19 @@ static struct kern_modules_param *probes;
 static int nr_probes;
 static int probes_capacity;
 
-#if HAVE_KMOD
+#ifdef HAVE_KMOD
 #include <libkmod.h>
 
 /**
  * @brief Logging function for libkmod integration.
  */
 static ATTR_FORMAT_PRINTF(6, 0)
-void log_kmod(void *data, int priority, const char *file, int line,
-               const char *fn, const char *format, va_list args)
+void log_kmod(void *data __attribute__((unused)),
+               int priority __attribute__((unused)),
+               const char *file __attribute__((unused)),
+               int line __attribute__((unused)),
+               const char *fn __attribute__((unused)),
+               const char *format, va_list args)
 {
        char *str;
 
This page took 0.026799 seconds and 4 git commands to generate.