Fix: Add missing const to lttng_tracepoint_ptr_deref prototype
[lttng-modules.git] / wrapper / tracepoint.h
index 5f429db7585ddb7c7edecf1abd359cb09bc15918..f930a5a0dfdca2f1c81ef8eca06e4c09a5f57429 100644 (file)
 
 #define kabi_2635_tracepoint_probe_register tracepoint_probe_register
 #define kabi_2635_tracepoint_probe_unregister tracepoint_probe_unregister
-#define kabi_2635_tracepoint_probe_register_noupdate tracepoint_probe_register_noupdate
-#define kabi_2635_tracepoint_probe_unregister_noupdate tracepoint_probe_unregister_noupdate
 
 #endif /* HAVE_KABI_2635_TRACEPOINT */
 
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,15,0))
+
+#include <lttng-tracepoint.h>
+
+#define lttng_wrapper_tracepoint_probe_register lttng_tracepoint_probe_register
+#define lttng_wrapper_tracepoint_probe_unregister lttng_tracepoint_probe_unregister
+
+#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,15,0)) */
+
+#define lttng_wrapper_tracepoint_probe_register kabi_2635_tracepoint_probe_register
+#define lttng_wrapper_tracepoint_probe_unregister kabi_2635_tracepoint_probe_unregister
+
+static inline
+int lttng_tracepoint_init(void)
+{
+       return 0;
+}
+
+static inline
+void lttng_tracepoint_exit(void)
+{
+}
+
+#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,15,0)) */
+
 #ifdef CONFIG_MODULE_SIG
 
 #include <linux/kallsyms.h>
-#include "kallsyms.h"
+#include <wrapper/kallsyms.h>
 
 static inline
 int wrapper_tracepoint_module_notify(struct notifier_block *nb,
@@ -59,11 +82,15 @@ int wrapper_tracepoint_module_notify(struct notifier_block *nb,
        if (tracepoint_module_notify_sym) {
                return tracepoint_module_notify_sym(nb, val, mod);
        } else {
-               printk(KERN_WARNING "LTTng: tracepoint_module_notify symbol lookup failed. It probably means you kernel don't need this work-around. Please consider upgrading LTTng modules to make this warning go away.\n");
+               printk_once(KERN_WARNING "LTTng: tracepoint_module_notify symbol lookup failed. It probably means you kernel don't need this work-around. Please consider upgrading LTTng modules to make this warning go away.\n");
                return -ENOSYS;
        }
 }
 
+#endif /* CONFIG_MODULE_SIG */
+
+#if defined(CONFIG_MODULE_SIG) && defined(MODULE)
+
 static inline
 int wrapper_lttng_fixup_sig(struct module *mod)
 {
@@ -83,7 +110,7 @@ int wrapper_lttng_fixup_sig(struct module *mod)
        return ret;
 }
 
-#else /* CONFIG_MODULE_SIG */
+#else /* #if defined(CONFIG_MODULE_SIG) && defined(MODULE) */
 
 static inline
 int wrapper_lttng_fixup_sig(struct module *mod)
@@ -91,6 +118,18 @@ int wrapper_lttng_fixup_sig(struct module *mod)
        return 0;
 }
 
-#endif /* #else CONFIG_MODULE_SIG */
+#endif /*#else #if defined(CONFIG_MODULE_SIG) && defined(MODULE) */
+
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,19,0))
+static inline struct tracepoint *lttng_tracepoint_ptr_deref(tracepoint_ptr_t *p)
+{
+       return tracepoint_ptr_deref(p);
+}
+#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,19,0)) */
+static inline struct tracepoint *lttng_tracepoint_ptr_deref(struct tracepoint * const *p)
+{
+       return *p;
+}
+#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,19,0)) */
 
 #endif /* _LTTNG_WRAPPER_TRACEPOINT_H */
This page took 0.023837 seconds and 4 git commands to generate.