summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteven Rostedt (Google) <rostedt@goodmis.org>2022-04-01 20:39:03 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2022-04-02 19:32:14 +0200
commit1cd927ad6f62f27d8908498dcbf61395c5dd5fe2 (patch)
tree7a19daa140d5ffc8cc10ea75ab0e38c99cbca8e9
parentMerge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/vir... (diff)
downloadlinux-1cd927ad6f62f27d8908498dcbf61395c5dd5fe2.tar.xz
linux-1cd927ad6f62f27d8908498dcbf61395c5dd5fe2.zip
tracing: mark user_events as BROKEN
After being merged, user_events become more visible to a wider audience that have concerns with the current API. It is too late to fix this for this release, but instead of a full revert, just mark it as BROKEN (which prevents it from being selected in make config). Then we can work finding a better API. If that fails, then it will need to be completely reverted. To not have the code silently bitrot, still allow building it with COMPILE_TEST. And to prevent the uapi header from being installed, then later changed, and then have an old distro user space see the old version, move the header file out of the uapi directory. Surround the include with CONFIG_COMPILE_TEST to the current location, but when the BROKEN tag is taken off, it will use the uapi directory, and fail to compile. This is a good way to remind us to move the header back. Link: https://lore.kernel.org/all/20220330155835.5e1f6669@gandalf.local.home Link: https://lkml.kernel.org/r/20220330201755.29319-1-mathieu.desnoyers@efficios.com Suggested-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to '')
-rw-r--r--include/linux/user_events.h (renamed from include/uapi/linux/user_events.h)0
-rw-r--r--kernel/trace/Kconfig1
-rw-r--r--kernel/trace/trace_events_user.c5
3 files changed, 6 insertions, 0 deletions
diff --git a/include/uapi/linux/user_events.h b/include/linux/user_events.h
index e570840571e1..e570840571e1 100644
--- a/include/uapi/linux/user_events.h
+++ b/include/linux/user_events.h
diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig
index 9bb54c0b3b2d..2c43e327a619 100644
--- a/kernel/trace/Kconfig
+++ b/kernel/trace/Kconfig
@@ -767,6 +767,7 @@ config USER_EVENTS
bool "User trace events"
select TRACING
select DYNAMIC_EVENTS
+ depends on BROKEN || COMPILE_TEST # API needs to be straighten out
help
User trace events are user-defined trace events that
can be used like an existing kernel trace event. User trace
diff --git a/kernel/trace/trace_events_user.c b/kernel/trace/trace_events_user.c
index 8b3d241a31c2..68d62bfac12f 100644
--- a/kernel/trace/trace_events_user.c
+++ b/kernel/trace/trace_events_user.c
@@ -18,7 +18,12 @@
#include <linux/tracefs.h>
#include <linux/types.h>
#include <linux/uaccess.h>
+/* Reminder to move to uapi when everything works */
+#ifdef CONFIG_COMPILE_TEST
+#include <linux/user_events.h>
+#else
#include <uapi/linux/user_events.h>
+#endif
#include "trace.h"
#include "trace_dynevent.h"