summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/lttng/lttng-modules/0001-Kconfig-fix-dependency-issue-when-building-in-tree-w.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-kernel/lttng/lttng-modules/0001-Kconfig-fix-dependency-issue-when-building-in-tree-w.patch')
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0001-Kconfig-fix-dependency-issue-when-building-in-tree-w.patch54
1 files changed, 54 insertions, 0 deletions
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0001-Kconfig-fix-dependency-issue-when-building-in-tree-w.patch b/meta/recipes-kernel/lttng/lttng-modules/0001-Kconfig-fix-dependency-issue-when-building-in-tree-w.patch
new file mode 100644
index 0000000000..ae8bec45de
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/0001-Kconfig-fix-dependency-issue-when-building-in-tree-w.patch
@@ -0,0 +1,54 @@
+From ff4d1d7e85be94ef43709cd698f0ec9a12f247d1 Mon Sep 17 00:00:00 2001
+From: Beniamin Sandu <beniaminsandu@gmail.com>
+Date: Thu, 13 Aug 2020 16:24:39 +0300
+Subject: [PATCH 01/10] Kconfig: fix dependency issue when building in-tree
+ without CONFIG_FTRACE
+
+When building in-tree, one could disable CONFIG_FTRACE from kernel
+config which will leave CONFIG_TRACEPOINTS selected by LTTNG modules,
+but generate a lot of linker errors like below because it leaves out
+other stuff, e.g.:
+
+trace.c:(.text+0xd86b): undefined reference to `trace_event_buffer_reserve'
+ld: trace.c:(.text+0xd8de): undefined reference to `trace_event_buffer_commit'
+ld: trace.c:(.text+0xd926): undefined reference to `event_triggers_call'
+ld: trace.c:(.text+0xd942): undefined reference to `trace_event_ignore_this_pid'
+ld: net/mac80211/trace.o: in function `trace_event_raw_event_drv_tdls_cancel_channel_switch':
+
+It appears to be caused by the fact that TRACE_EVENT macros in the Linux
+kernel depend on the Ftrace ring buffer as soon as CONFIG_TRACEPOINTS is
+enabled.
+
+Steps to reproduce:
+
+- Get a clone of an upstream stable kernel and use scripts/built-in.sh on it
+
+- Configure a standard x86-64 build, enable built-in LTTNG but disable
+ CONFIG_FTRACE from Kernel Hacking-->Tracers using menuconfig
+
+- Build will fail at linking stage
+
+Upstream-Status: Backport
+
+Signed-off-by: Beniamin Sandu <beniaminsandu@gmail.com>
+Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+---
+ Kconfig | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Kconfig b/Kconfig
+index acdab73..10eccff 100644
+--- a/Kconfig
++++ b/Kconfig
+@@ -2,7 +2,7 @@
+
+ config LTTNG
+ tristate "LTTng support"
+- select TRACEPOINTS
++ select TRACING
+ help
+ LTTng is an open source tracing framework for Linux.
+
+--
+2.19.1
+