Update: Use vmalloc_sync_mappings for stable kernels
authorOvidiu Panait <ovidiu.panait@windriver.com>
Thu, 14 May 2020 11:27:17 +0000 (14:27 +0300)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Thu, 14 May 2020 17:14:10 +0000 (13:14 -0400)
Starting from v5.4.28/v5.2.37/v4.19.113/v4.14.175/v4.9.218/v4.4.218, stable
kernel branches backported v5.6 upstream commit [1], causing the following
warnings:
...
[  483.242037] LTTng: vmalloc_sync_all symbol lookup failed.
[  483.257056] Page fault handler and NMI tracing might trigger faults.
...

Extend check for vmalloc_sync_mappings for stable kernels as well.

[1] https://github.com/torvalds/linux/commit/763802b53a427ed3cbd419dbba255c414fdd9e7c

[ Edit: minor coding style fix by Mathieu Desnoyers. ]

Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
wrapper/vmalloc.h

index d905f603379c33577490633da9d1986cd72e2379..c7538ae98e4f8238b35e36923ea576afc19d1ee1 100644 (file)
 
 #include <linux/kallsyms.h>
 #include <wrapper/kallsyms.h>
+#include <lttng-kernel-version.h>
 
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0))
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) \
+  || LTTNG_KERNEL_RANGE(5,4,28, 5,5,0)            \
+  || LTTNG_KERNEL_RANGE(5,2,37, 5,3,0)            \
+  || LTTNG_KERNEL_RANGE(4,19,113, 4,20,0)         \
+  || LTTNG_KERNEL_RANGE(4,14,175, 4,15,0)         \
+  || LTTNG_KERNEL_RANGE(4,9,218, 4,10,0)          \
+  || LTTNG_KERNEL_RANGE(4,4,218, 4,5,0))
 
 static inline
 void wrapper_vmalloc_sync_mappings(void)
@@ -72,7 +79,13 @@ void wrapper_vmalloc_sync_mappings(void)
 
 #else
 
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0))
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) \
+  || LTTNG_KERNEL_RANGE(5,4,28, 5,5,0)            \
+  || LTTNG_KERNEL_RANGE(5,2,37, 5,3,0)            \
+  || LTTNG_KERNEL_RANGE(4,19,113, 4,20,0)         \
+  || LTTNG_KERNEL_RANGE(4,14,175, 4,15,0)         \
+  || LTTNG_KERNEL_RANGE(4,9,218, 4,10,0)          \
+  || LTTNG_KERNEL_RANGE(4,4,218, 4,5,0))
 
 static inline
 void wrapper_vmalloc_sync_mappings(void)
This page took 0.026779 seconds and 4 git commands to generate.