* [PATCH v2] tracing: Propagate errors from remote event bulk updates
@ 2026-07-15 7:44 Jackie Liu
2026-07-15 9:33 ` Vincent Donnefort
0 siblings, 1 reply; 2+ messages in thread
From: Jackie Liu @ 2026-07-15 7:44 UTC (permalink / raw)
To: vdonnefort, rostedt, mhiramat; +Cc: mathieu.desnoyers, linux-trace-kernel
From: Jackie Liu <liuyun01@kylinos.cn>
remote_events_dir_enable_write() ignores the return value from
trace_remote_enable_event(). If a remote rejects an event state change,
the write therefore reports success even though the affected event remains
in its previous state.
Keep trying all events, but retain and return the first error. This matches
__ftrace_set_clr_event_nolock(), which permits partial updates while
notifying userspace when an operation fails.
Fixes: 775cb093bc50 ("tracing: Add events/ root files to trace remotes")
Assisted-by: Codex:gpt-5.6-sol
Signed-off-by: Jackie Liu <liuyun01@kylinos.cn>
---
Changes in v2:
- Move the eret declaration after evt to follow reverse Christmas tree
ordering.
kernel/trace/trace_remote.c | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/kernel/trace/trace_remote.c b/kernel/trace/trace_remote.c
index 0f6ef5c36d84..daeaf1d3eb1c 100644
--- a/kernel/trace/trace_remote.c
+++ b/kernel/trace/trace_remote.c
@@ -1150,10 +1150,21 @@ static ssize_t remote_events_dir_enable_write(struct file *filp, const char __us
for (i = 0; i < remote->nr_events; i++) {
struct remote_event *evt = &remote->events[i];
+ int eret;
- trace_remote_enable_event(remote, evt, enable);
+ eret = trace_remote_enable_event(remote, evt, enable);
+ /*
+ * Save the first error and return that. Some events
+ * may still have been enabled, but let the user
+ * know that something went wrong.
+ */
+ if (!ret && eret)
+ ret = eret;
}
+ if (ret)
+ return ret;
+
return count;
}
--
2.54.0
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH v2] tracing: Propagate errors from remote event bulk updates
2026-07-15 7:44 [PATCH v2] tracing: Propagate errors from remote event bulk updates Jackie Liu
@ 2026-07-15 9:33 ` Vincent Donnefort
0 siblings, 0 replies; 2+ messages in thread
From: Vincent Donnefort @ 2026-07-15 9:33 UTC (permalink / raw)
To: Jackie Liu; +Cc: rostedt, mhiramat, mathieu.desnoyers, linux-trace-kernel
On Wed, Jul 15, 2026 at 03:44:55PM +0800, Jackie Liu wrote:
> From: Jackie Liu <liuyun01@kylinos.cn>
>
> remote_events_dir_enable_write() ignores the return value from
> trace_remote_enable_event(). If a remote rejects an event state change,
> the write therefore reports success even though the affected event remains
> in its previous state.
>
> Keep trying all events, but retain and return the first error. This matches
> __ftrace_set_clr_event_nolock(), which permits partial updates while
> notifying userspace when an operation fails.
>
> Fixes: 775cb093bc50 ("tracing: Add events/ root files to trace remotes")
> Assisted-by: Codex:gpt-5.6-sol
> Signed-off-by: Jackie Liu <liuyun01@kylinos.cn>
Thanks!
Reviewed-by: Vincent Donnefort <vdonnefort@google.com>
> ---
> Changes in v2:
> - Move the eret declaration after evt to follow reverse Christmas tree
> ordering.
>
> kernel/trace/trace_remote.c | 13 ++++++++++++-
> 1 file changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/kernel/trace/trace_remote.c b/kernel/trace/trace_remote.c
> index 0f6ef5c36d84..daeaf1d3eb1c 100644
> --- a/kernel/trace/trace_remote.c
> +++ b/kernel/trace/trace_remote.c
> @@ -1150,10 +1150,21 @@ static ssize_t remote_events_dir_enable_write(struct file *filp, const char __us
>
> for (i = 0; i < remote->nr_events; i++) {
> struct remote_event *evt = &remote->events[i];
> + int eret;
>
> - trace_remote_enable_event(remote, evt, enable);
> + eret = trace_remote_enable_event(remote, evt, enable);
> + /*
> + * Save the first error and return that. Some events
> + * may still have been enabled, but let the user
> + * know that something went wrong.
> + */
> + if (!ret && eret)
> + ret = eret;
> }
>
> + if (ret)
> + return ret;
> +
> return count;
> }
>
> --
> 2.54.0
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-07-15 9:33 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-15 7:44 [PATCH v2] tracing: Propagate errors from remote event bulk updates Jackie Liu
2026-07-15 9:33 ` Vincent Donnefort
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.