On Sat, 31 Oct 2026 16:35:45 +0900
Jaewon Jung <[email protected]> wrote:
> When several instances enable copy_trace_marker, stopping one instance
> can prevent the remaining buffers from receiving markers.
>
> Continue copying text and raw markers even if one copy fails, and
> return the last error after trying all buffers.
>
> Fixes: 7b382efd5e8a ("tracing: Allow the top level trace_marker to write into
> another instances")
> Cc: [email protected]
Please remove the stable tag, this is more of an enhancement than a bug fix.
You can keep the fixes tag though.
> Signed-off-by: Jaewon Jung <[email protected]>
> ---
> The current code stops at the first error without trying the remaining
> buffers. This patch tries all buffers even if a write fails, and returns
> the last error.
>
> Returning either the first or last error cannot report all failures.
> I chose the last error to keep the code simple. Per-buffer error
> reporting is outside the scope of this patch.
>
> Please let me know if you prefer a different error return policy.
>
> Tested on x86_64 QEMU:
> - Setup: Enable copy_trace_marker in multiple instances and set
> tracing_on=0 in one instance before a live buffer in the copy order.
> - Before: No markers in live buffers after the stopped instance;
> write() returns an error.
> - After: Markers in all live buffers; write() returns an error.
> - Existing text/raw marker and instance selftests: 6 PASS.
Honestly, just skip the warnings of the copies and don't even bother
returning its value.
-- Steve