-#ifndef _LTT_WRAPPER_VMALLOC_H
-#define _LTT_WRAPPER_VMALLOC_H
-
-/*
- * Copyright (C) 2011 Mathieu Desnoyers (mathieu.desnoyers@efficios.com)
+/* SPDX-License-Identifier: (GPL-2.0-only or LGPL-2.1-only)
*
- * Wrapper around task_prio call.
+ * src/wrapper/kprobes.h
*
- * Dual LGPL v2.1/GPL v2 license.
+ * Copyright (C) 2021 Michael Jeanson <mjeanson@efficios.com>
*/
-#ifdef CONFIG_KALLSYMS
+#ifndef _LTTNG_WRAPPER_SCHED_H
+#define _LTTNG_WRAPPER_SCHED_H
-#include "../ltt-events.h"
+#include <linux/sched.h>
+#include <lttng-kernel-version.h>
-static inline
-int wrapper_task_prio(struct task_struct *t)
-{
- return wrapper_task_prio_sym(t);
-}
-#else
+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,14,0))
-#include <linux/sched.h>
+#define lttng_get_task_state(task) READ_ONCE((task)->__state)
+#define lttng_task_is_running(task) task_is_running(task)
+
+#else /* LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,14,0) */
+
+#define lttng_get_task_state(task) ((task)->state)
+#define lttng_task_is_running(task) (lttng_get_task_state(task) == TASK_RUNNING)
-static inline
-int wrapper_task_prio(struct task_struct *t)
-{
- return task_prio(t);
-}
-#endif
+#endif /* LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,14,0) */
-#endif /* _LTT_WRAPPER_VMALLOC_H */
+#endif /* _LTTNG_WRAPPER_SCHED_H */