]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ring buffer: Propagate __rb_map_vma return value to caller
authorAnkit Khushwaha <ankitkhushwaha.linux@gmail.com>
Wed, 8 Oct 2025 17:25:16 +0000 (22:55 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 12 Oct 2025 11:01:04 +0000 (13:01 +0200)
commit de4cbd704731778a2dc833ce5a24b38e5d672c05 upstream.

The return value from `__rb_map_vma()`, which rejects writable or
executable mappings (VM_WRITE, VM_EXEC, or !VM_MAYSHARE), was being
ignored. As a result the caller of `__rb_map_vma` always returned 0
even when the mapping had actually failed, allowing it to proceed
with an invalid VMA.

Cc: stable@vger.kernel.org
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Link: https://lore.kernel.org/20251008172516.20697-1-ankitkhushwaha.linux@gmail.com
Fixes: 117c39200d9d7 ("ring-buffer: Introducing ring-buffer mapping functions")
Reported-by: syzbot+ddc001b92c083dbf2b97@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?id=194151be8eaebd826005329b2e123aecae714bdb
Signed-off-by: Ankit Khushwaha <ankitkhushwaha.linux@gmail.com>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
kernel/trace/ring_buffer.c

index 24bb5287c415b65e1d190112390211fc6c65081f..2bb311d99c1061773dc14f56b4efd70a019f0d40 100644 (file)
@@ -7180,7 +7180,7 @@ int ring_buffer_map(struct trace_buffer *buffer, int cpu,
                atomic_dec(&cpu_buffer->resize_disabled);
        }
 
-       return 0;
+       return err;
 }
 
 int ring_buffer_unmap(struct trace_buffer *buffer, int cpu)