tracing: Have the error of __tracing_resize_ring_buffer() passed to user
authorSteven Rostedt <rostedt@goodmis.org>
Thu, 13 Feb 2025 18:41:32 +0000 (13:41 -0500)
committerSteven Rostedt (Google) <rostedt@goodmis.org>
Fri, 14 Feb 2025 17:50:27 +0000 (12:50 -0500)
commit60b8f711143de7cd9c0f55be0fe7eb94b19eb5c7
tree5980b90cf6461c5879637808da5eb6427489a1e0
parent9ba0e1755a40f9920ad0f4168031291b3eb58d7b
tracing: Have the error of __tracing_resize_ring_buffer() passed to user

Currently if __tracing_resize_ring_buffer() returns an error, the
tracing_resize_ringbuffer() returns -ENOMEM. But it may not be a memory
issue that caused the function to fail. If the ring buffer is memory
mapped, then the resizing of the ring buffer will be disabled. But if the
user tries to resize the buffer, it will get an -ENOMEM returned, which is
confusing because there is plenty of memory. The actual error returned was
-EBUSY, which would make much more sense to the user.

Cc: stable@vger.kernel.org
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Vincent Donnefort <vdonnefort@google.com>
Link: https://lore.kernel.org/20250213134132.7e4505d7@gandalf.local.home
Fixes: 117c39200d9d7 ("ring-buffer: Introducing ring-buffer mapping functions")
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Reviewed-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
kernel/trace/trace.c