From: "David Hildenbrand (Arm)" <david@kernel.org>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: Borislav Petkov <bp@alien8.de>,
"Zhuo, Qiuxu" <qiuxu.zhuo@intel.com>,
"mchehab+huawei@kernel.org" <mchehab+huawei@kernel.org>,
"Luck, Tony" <tony.luck@intel.com>,
"akpm@linux-foundation.org" <akpm@linux-foundation.org>,
"linmiaohe@huawei.com" <linmiaohe@huawei.com>,
"xieyuanbin1@huawei.com" <xieyuanbin1@huawei.com>,
"Lai, Yi1" <yi1.lai@intel.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-edac@vger.kernel.org" <linux-edac@vger.kernel.org>,
"linux-mm@kvack.org" <linux-mm@kvack.org>,
"linux-trace-kernel@vger.kernel.org"
<linux-trace-kernel@vger.kernel.org>,
Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: mm/memory-failure tracepoint change breaks userspace rasdaemon
Date: Wed, 3 Jun 2026 21:13:30 +0200 [thread overview]
Message-ID: <b637ede2-73da-49f0-a7eb-70ec79e79624@kernel.org> (raw)
In-Reply-To: <20260603130006.7d2c4a62@gandalf.local.home>
On 6/3/26 19:00, Steven Rostedt wrote:
> On Wed, 3 Jun 2026 18:26:24 +0200
> "David Hildenbrand (Arm)" <david@kernel.org> wrote:
>
>> Yeah, I was fearing that when I read in [2]:
>>
>> "It has become clear in the past that this promise extends to
>> tracepoints, most notably in 2011 when a tracepoint change broke
>> powertop and had to be reverted."
>
> Technically the issue is with trace events and not tracepoints. The
> difference is that a trace event is created via the TRACE_EVENT() macro
> which defines what is to be collected from the tracepoint and exposes that
> information to tracefs which applications can easily see.
>
> A tracepoint is simply the hook in the code that you can attach to. Trace
> events create a callback from that hook to extract the data from the
> tracepoint to fill in the fields.
>
>>
>> Which means that I now also fully understand
>>
>> "Some kernel maintainers prohibit or severely restrict the addition of
>> tracepoints to their subsystems out of fear that a similar thing could
>> happen to them. "
>>
>> Whatever the result of this discussion will be, I'll try to document it.
>
> You can still create a tracepoint without creating a trace event by using
> the DECLARE_TRACE() macro. The scheduler subsystem uses that quite
> extensively. That creates a tracepoint without exposing it to tracefs. The
> runtime verifier uses these hooks to monitor the scheduler.
>
> But you can still connect to these tracepoints from tracefs via a tprobe. A
> tprobe hooks to tracepoints that you need the source code to find (just
> like a fprobe hooks to any function). Thus applications *can't* rely on
> them because there's nothing there to tell you it exists or not.
Thanks, that makes sense!
So, would it be fair to say that, in general, what's exposed through
/sys/kernel/tracing/events/
is stable ABI?
Would the following be sufficient to avoid a full revert and the dependency on CONFIG_RAS?
diff --git a/include/trace/events/memory-failure.h b/include/trace/events/memory-failure.h
index aa57cc8f896b..c46b17602578 100644
--- a/include/trace/events/memory-failure.h
+++ b/include/trace/events/memory-failure.h
@@ -1,6 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0 */
#undef TRACE_SYSTEM
-#define TRACE_SYSTEM memory_failure
+/* Some user space relies on ras/memory_failure_event */
+#define TRACE_SYSTEM ras
#define TRACE_INCLUDE_FILE memory-failure
#if !defined(_TRACE_MEMORY_FAILURE_H) || defined(TRACE_HEADER_MULTI_READ)
--
Cheers,
David
next prev parent reply other threads:[~2026-06-03 19:13 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-03 13:11 mm/memory-failure tracepoint change breaks userspace rasdaemon Zhuo, Qiuxu
2026-06-03 13:44 ` David Hildenbrand (Arm)
2026-06-03 16:17 ` Steven Rostedt
2026-06-03 16:19 ` Borislav Petkov
2026-06-03 16:26 ` David Hildenbrand (Arm)
2026-06-03 17:00 ` Steven Rostedt
2026-06-03 19:13 ` David Hildenbrand (Arm) [this message]
2026-06-03 19:30 ` Steven Rostedt
2026-06-03 19:31 ` Steven Rostedt
2026-06-05 8:52 ` David Hildenbrand (Arm)
2026-06-05 14:13 ` Steven Rostedt
2026-06-04 1:46 ` Xie Yuanbin
2026-06-04 6:42 ` David Hildenbrand (Arm)
2026-06-04 13:42 ` Xie Yuanbin
2026-06-04 15:48 ` Zhuo, Qiuxu
2026-06-04 15:43 ` Zhuo, Qiuxu
2026-06-03 19:54 ` Andrew Morton
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=b637ede2-73da-49f0-a7eb-70ec79e79624@kernel.org \
--to=david@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=bp@alien8.de \
--cc=linmiaohe@huawei.com \
--cc=linux-edac@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=mchehab+huawei@kernel.org \
--cc=qiuxu.zhuo@intel.com \
--cc=rostedt@goodmis.org \
--cc=tony.luck@intel.com \
--cc=torvalds@linux-foundation.org \
--cc=xieyuanbin1@huawei.com \
--cc=yi1.lai@intel.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.