From: "Steven Rostedt (Google)" <rost...@goodmis.org>

The sub-buffer pages are held in an unsigned long array, and when it is
passed to virt_to_page() a cast is needed.

Link: https://lore.kernel.org/all/20240515124808.06279...@canb.auug.org.au/

Fixes: 117c39200d9d ("ring-buffer: Introducing ring-buffer mapping functions")
Reported-by: Stephen Rothwell <s...@canb.auug.org.au>
Signed-off-by: Steven Rostedt (Google) <rost...@goodmis.org>
---
 kernel/trace/ring_buffer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
index a02c7a52a0f5..7345a8b625fb 100644
--- a/kernel/trace/ring_buffer.c
+++ b/kernel/trace/ring_buffer.c
@@ -6283,7 +6283,7 @@ static int __rb_map_vma(struct ring_buffer_per_cpu 
*cpu_buffer,
        }
 
        while (p < nr_pages) {
-               struct page *page = virt_to_page(cpu_buffer->subbuf_ids[s]);
+               struct page *page = virt_to_page((void 
*)cpu_buffer->subbuf_ids[s]);
                int off = 0;
 
                if (WARN_ON_ONCE(s >= nr_subbufs)) {
-- 
2.43.0


Reply via email to