mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [GIT PULL] tracing: Fixes for v6.19-rc1
@ 2025-12-18 21:16 Steven Rostedt
  2025-12-18 21:35 ` pr-tracker-bot
  0 siblings, 1 reply; 2+ messages in thread
From: Steven Rostedt @ 2025-12-18 21:16 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: LKML, Masami Hiramatsu, Mathieu Desnoyers, Darrick J. Wong,
	Lukas Bulwahn, Menglong Dong


Linus,

tracing fixes for v6.19:

- Add Documentation/core-api/tracepoint.rst to TRACING in MAINTAINERS file

  Updates to the tracepoint.rst document should be reviewed by the
  tracing maintainers.

- Fix warning triggered by perf attaching to synthetic events

  The synthetic events do not add a function to be registered when
  perf attaches to them. This causes a warning when perf registers
  a synthetic event and passes a NULL pointer to the tracepoint register
  function. Ideally synthetic events should be updated to work with
  perf, but as that's a feature and not a bug fix, simply now return
  -ENODEV when perf tries to register an event that has a NULL pointer
  for its function. This no longer causes a kernel warning and simply
  causes the perf code to fail with an error message.

- Fix 32bit overflow in option flag test

  The option's flags changed from 32 bits in size to 64 bits in size.
  Fix one of the places that shift 1 by the option bit number to
  to be 1ULL.

- Fix the output of printing the direct jmp functions

  The enabled_functions that shows how functions are being attached by
  ftrace wasn't updated to accommodate the new direct jmp trampolines
  that set the LSB of the pointer, and outputs garbage. Update the
  output to handle the direct jmp trampolines.


Please pull the latest trace-v6.19-rc1 tree, which can be found at:


  git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
trace-v6.19-rc1

Tag SHA1: fb11857ac474c8e9b28605d062dc37de624e4338
Head SHA1: 39263f986da55c5b7bc328c757fe378a6a41799d


Darrick J. Wong (1):
      tracing: Fix UBSAN warning in __remove_instance()

Lukas Bulwahn (1):
      MAINTAINERS: add tracepoint core-api doc files to TRACING

Menglong Dong (1):
      ftrace: Fix address for jmp mode in t_show()

Steven Rostedt (1):
      tracing: Do not register unsupported perf events

----
 MAINTAINERS                 | 1 +
 kernel/trace/ftrace.c       | 7 +++++--
 kernel/trace/trace.c        | 2 +-
 kernel/trace/trace_events.c | 2 ++
 4 files changed, 9 insertions(+), 3 deletions(-)
---------------------------
diff --git a/MAINTAINERS b/MAINTAINERS
index 5b11839cba9d..8e90454bb817 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -26464,6 +26464,7 @@ L:	linux-trace-kernel@vger.kernel.org
 S:	Maintained
 Q:	https://patchwork.kernel.org/project/linux-trace-kernel/list/
 T:	git git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
+F:	Documentation/core-api/tracepoint.rst
 F:	Documentation/trace/*
 F:	fs/tracefs/
 F:	include/linux/trace*.h
diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
index 3ec2033c0774..ef2d5dca6f70 100644
--- a/kernel/trace/ftrace.c
+++ b/kernel/trace/ftrace.c
@@ -4518,8 +4518,11 @@ static int t_show(struct seq_file *m, void *v)
 			unsigned long direct;
 
 			direct = ftrace_find_rec_direct(rec->ip);
-			if (direct)
-				seq_printf(m, "\n\tdirect-->%pS", (void *)direct);
+			if (direct) {
+				seq_printf(m, "\n\tdirect%s-->%pS",
+					   ftrace_is_jmp(direct) ? "(jmp)" : "",
+					   (void *)ftrace_jmp_get(direct));
+			}
 		}
 	}
 
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index e575956ef9b5..6f2148df14d9 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -10507,7 +10507,7 @@ static int __remove_instance(struct trace_array *tr)
 
 	/* Disable all the flags that were enabled coming in */
 	for (i = 0; i < TRACE_FLAGS_MAX_SIZE; i++) {
-		if ((1 << i) & ZEROED_TRACE_FLAGS)
+		if ((1ULL << i) & ZEROED_TRACE_FLAGS)
 			set_tracer_flag(tr, 1ULL << i, 0);
 	}
 
diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
index b16a5a158040..76067529db61 100644
--- a/kernel/trace/trace_events.c
+++ b/kernel/trace/trace_events.c
@@ -700,6 +700,8 @@ int trace_event_reg(struct trace_event_call *call,
 
 #ifdef CONFIG_PERF_EVENTS
 	case TRACE_REG_PERF_REGISTER:
+		if (!call->class->perf_probe)
+			return -ENODEV;
 		return tracepoint_probe_register(call->tp,
 						 call->class->perf_probe,
 						 call);

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-12-18 21:38 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-12-18 21:16 [GIT PULL] tracing: Fixes for v6.19-rc1 Steven Rostedt
2025-12-18 21:35 ` pr-tracker-bot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®