All of lore.kernel.org
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: LKML <linux-kernel@vger.kernel.org>,
	Masami Hiramatsu <mhiramat@kernel.org>,
	Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
	Ao Sun <ao.sun@transsion.com>, David Carlier <devnexen@gmail.com>,
	Karl Mehltretter <kmehltretter@gmail.com>,
	Martin Kaiser <martin@kaiser.cx>,
	Pengpeng Hou <pengpeng@iscas.ac.cn>,
	Qian-Yu Lin <tiffany019230@gmail.com>,
	Rik van Riel <riel@surriel.com>, Rosen Penev <rosenp@gmail.com>,
	Shuvam Pandey <shuvampandey1@gmail.com>,
	Vineeth Pillai <vineeth@bitbyteword.org>,
	Yash Suthar <yashsuthar983@gmail.com>,
	Yu Peng <pengyu@kylinos.cn>
Subject: [GIT PULL] tracing: Updates for 7.2
Date: Tue, 16 Jun 2026 18:01:22 -0400	[thread overview]
Message-ID: <20260616180122.57a3b426@fedora> (raw)


Linus,

tracing: Updates for v7.2:

- Remove a redundant IS_ERR() check

  trace_pipe_open() already checks for IS_ERR() and does it again in the
  return path. Remove the return check.

- Export seq_buf_putmem_hex() to allow kunit tests against them

  To add Kunit tests on seq_buf_putmem_hex(), it needs to be exported.

- Replace strcat() and strcpy() with seq_buf() logic

  The code for synthetic events uses a series of strcat() and strcpy() which
  can be error prone. Replace them with seq_buf() logic that does all the
  necessary bound checking.

- Add a lockdep rcu_is_watching() to trace_##event##_enabled() call

  The trace_##event##_enabled() is a static branch that is true if the
  "event" is enabled. But this can hide bugs if this logic is in a location
  where RCU is disabled and not "watching". It would only trigger if lockdep
  is enabled and the event is enabled.

  Add a "rcu_is_watching()" warning if lockdep is enabled in that helper
  function to trigger regardless if the event is enabled or not.

- Remove the local variable in the trace_printk() macro

  For name space integrity, remove the _______STR variable in the
  trace_printk() macro for using the sizeof() macro directly.

- Use guard()s for the trace_recursion_record.c file

- Fix typo in a comment of eventfs_callback() kerneldoc

- Use trace_call__##event() in events called within trace_##event##_enabled()

  A couple of events are called within an if block guarded by
  trace_##event##_enabled(). That is a static key that is only enabled when
  the event is enabled. The trace_call_##event() calls the tracepoint code
  directly without adding a redundant static key for that check.

- Allow perf to read synthetic events

  Currently, perf does not have the ability to enable a synthetic event. If
  it does, it will either cause a kernel warning or error with "No such
  device". Synthetic events are not much different than kprobes and perf can
  handle fine with a few modifications.

- Replace printk(KERN_WARNING ...) with pr_warn()

- Replace krealloc() on an array with krealloc_array()

- Fix README file path name for synthetic events

- Change tracing_map tracing_map_array to use a flexible array

  Instead of allocating a separate pointer to hold the pages field of
  tracing_map_array, allocate the pages field as a flexible array when
  allocating the structure.

- Fold trace_iterator_increment() into trace_find_next_entry_inc()

  The function trace_iterator_increment() was only used by
  trace_find_next_entry_inc(). It's not big enough to be a helper function
  for one user. Fold it into its caller.

- Make field_var_str field a flexible array of hist_elt_data

  Instead of allocating a separate pointer for the field_var_str array of
  the hist_elt_data structure, allocate it as a flexible array when
  allocating the structure.

- Disable KCOV for trace_irqsoff.c

  Like trace_preemptirq.c, trace_irqsoff.c has code that will crash when
  KCOV is enabled on ARM. The irqsoff tracing can be called on ARM because
  the irqsoff tracing code can be run from early interrupt code and produce
  coverage unrelated to syscall inputs.

- Fix warning in __unregister_ftrace_function() called by perf

  Perf calls unregister_ftrace_function() without checking if its ftrace_ops
  has already been unregistered. There's an error path where on clean up it
  will unregister the ftrace_ops even if it wasn't registered and causes a
  warning.


Please pull the latest trace-v7.2 tree, which can be found at:

NOTE: I did check to make sure this merges cleanly into your tree.

  git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
trace-v7.2

Tag SHA1: d65b33218c1565f4819c4f06a26556e79de7d8ee
Head SHA1: 9581123304b23049437324038698af9fb56ee663


Ao Sun (1):
      tracing: Fix README path for synthetic_events

David Carlier (1):
      tracepoint: Add lockdep rcu_is_watching() check to trace_##name##_enabled()

Karl Mehltretter (1):
      tracing: Disable KCOV instrumentation for trace_irqsoff.o

Martin Kaiser (1):
      tracefs: Fix typo in a comment of eventfs_callback() kerneldoc

Pengpeng Hou (1):
      tracing: Bound synthetic-field strings with seq_buf

Qian-Yu Lin (1):
      tracing: Remove local variable for argument detection from trace_printk()

Rik van Riel (1):
      perf/ftrace: Fix WARNING in __unregister_ftrace_function

Rosen Penev (2):
      tracing: Simplify pages allocation for tracing_map logic
      tracing: Turn hist_elt_data field_var_str into a flexible array

Shuvam Pandey (1):
      seq_buf: Export seq_buf_putmem_hex() and add KUnit tests

Steven Rostedt (2):
      tracing: Allow perf to read synthetic events
      tracing: Move trace_iterator_increment() into trace_find_next_entry_inc()

Vineeth Pillai (2):
      cpufreq: amd-pstate: Use trace_call__##name() at guarded tracepoint call site
      HID: Use trace_call__##name() at guarded tracepoint call sites

Yash Suthar (2):
      tracing: Remove redundant IS_ERR() check in trace_pipe_open()
      tracing: Switch trace_recursion_record.c code over to use guard()

Yu Peng (2):
      tracing/branch: Use pr_warn() instead of printk(KERN_WARNING)
      tracing: Use krealloc_array() for trace option array growth

----
 drivers/cpufreq/amd-pstate.c            |   3 +-
 drivers/hid/intel-ish-hid/ipc/pci-ish.c |   2 +-
 include/linux/trace_printk.h            |   3 +-
 include/linux/tracefs.h                 |   2 +-
 include/linux/tracepoint.h              |   4 ++
 kernel/trace/Makefile                   |   5 +-
 kernel/trace/trace.c                    |  25 +++----
 kernel/trace/trace_branch.c             |   9 +--
 kernel/trace/trace_event_perf.c         |  12 +++-
 kernel/trace/trace_events_hist.c        |  72 ++++++++++---------
 kernel/trace/trace_events_synth.c       | 121 +++++++++++++++++++++++++-------
 kernel/trace/trace_recursion_record.c   |   8 +--
 kernel/trace/trace_remote.c             |   2 +-
 kernel/trace/tracing_map.c              |  30 +++-----
 kernel/trace/tracing_map.h              |   2 +-
 lib/seq_buf.c                           |   1 +
 lib/tests/seq_buf_kunit.c               |  34 +++++++++
 17 files changed, 222 insertions(+), 113 deletions(-)
---------------------------

                 reply	other threads:[~2026-06-16 22:09 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260616180122.57a3b426@fedora \
    --to=rostedt@goodmis.org \
    --cc=ao.sun@transsion.com \
    --cc=devnexen@gmail.com \
    --cc=kmehltretter@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=martin@kaiser.cx \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=mhiramat@kernel.org \
    --cc=pengpeng@iscas.ac.cn \
    --cc=pengyu@kylinos.cn \
    --cc=riel@surriel.com \
    --cc=rosenp@gmail.com \
    --cc=shuvampandey1@gmail.com \
    --cc=tiffany019230@gmail.com \
    --cc=torvalds@linux-foundation.org \
    --cc=vineeth@bitbyteword.org \
    --cc=yashsuthar983@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.