Cleanup: Move instrumentation/ headers to include/instrumentation/
[lttng-modules.git] / wrapper / tracepoint.h
index 780f9a86607adf55848a72f4b5c2c7fef3d2e9c4..880638b9d9f2ceb742b6618c4c07ed2d1e60d54e 100644 (file)
@@ -1,38 +1,19 @@
-#ifndef _LTTNG_WRAPPER_TRACEPOINT_H
-#define _LTTNG_WRAPPER_TRACEPOINT_H
-
-/*
+/* SPDX-License-Identifier: (GPL-2.0-only or LGPL-2.1-only)
+ *
  * wrapper/tracepoint.h
  *
  * wrapper around DECLARE_EVENT_CLASS.
  *
  * Copyright (C) 2011-2012 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; only
- * version 2.1 of the License.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifndef _LTTNG_WRAPPER_TRACEPOINT_H
+#define _LTTNG_WRAPPER_TRACEPOINT_H
+
 #include <linux/version.h>
 #include <linux/tracepoint.h>
 #include <linux/module.h>
 
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,35))
-
-#define DECLARE_EVENT_CLASS(name, proto, args, tstruct, assign, print)
-
-#endif
-
 #ifndef HAVE_KABI_2635_TRACEPOINT
 
 #define kabi_2635_tracepoint_probe_register tracepoint_probe_register
@@ -42,7 +23,7 @@
 
 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,15,0))
 
-#include <lttng-tracepoint.h>
+#include <lttng/tracepoint.h>
 
 #define lttng_wrapper_tracepoint_probe_register lttng_tracepoint_probe_register
 #define lttng_wrapper_tracepoint_probe_unregister lttng_tracepoint_probe_unregister
@@ -65,7 +46,7 @@ void lttng_tracepoint_exit(void)
 
 #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,15,0)) */
 
-#ifdef CONFIG_MODULE_SIG
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,15,0) && defined(CONFIG_MODULE_SIG))
 
 #include <linux/kallsyms.h>
 #include <wrapper/kallsyms.h>
@@ -87,9 +68,9 @@ int wrapper_tracepoint_module_notify(struct notifier_block *nb,
        }
 }
 
-#endif /* CONFIG_MODULE_SIG */
+#endif /* #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,15,0) && defined(CONFIG_MODULE_SIG)) */
 
-#if defined(CONFIG_MODULE_SIG) && defined(MODULE)
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,15,0) && defined(CONFIG_MODULE_SIG) && defined(MODULE))
 
 static inline
 int wrapper_lttng_fixup_sig(struct module *mod)
@@ -110,7 +91,7 @@ int wrapper_lttng_fixup_sig(struct module *mod)
        return ret;
 }
 
-#else /* #if defined(CONFIG_MODULE_SIG) && defined(MODULE) */
+#else /* #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,15,0) && defined(CONFIG_MODULE_SIG) && defined(MODULE)) */
 
 static inline
 int wrapper_lttng_fixup_sig(struct module *mod)
@@ -118,6 +99,18 @@ int wrapper_lttng_fixup_sig(struct module *mod)
        return 0;
 }
 
-#endif /*#else #if defined(CONFIG_MODULE_SIG) && defined(MODULE) */
+#endif /* #else #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,15,0) && 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.029294 seconds and 4 git commands to generate.