[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250401163910.256c3177@gandalf.local.home>
Date: Tue, 1 Apr 2025 16:39:10 -0400
From: Steven Rostedt <rostedt@...dmis.org>
To: linux-kernel@...r.kernel.org, linux-trace-kernel@...r.kernel.org
Cc: Linus Torvalds <torvalds@...ux-foundation.org>, Masami Hiramatsu
<mhiramat@...nel.org>, Mark Rutland <mark.rutland@....com>, Mathieu
Desnoyers <mathieu.desnoyers@...icios.com>, Andrew Morton
<akpm@...ux-foundation.org>, Vincent Donnefort <vdonnefort@...gle.com>,
Vlastimil Babka <vbabka@...e.cz>, Mike Rapoport <rppt@...nel.org>, Jann
Horn <jannh@...gle.com>
Subject: Re: [PATCH v3 4/5] ring-buffer: Use flush_kernel_vmap_range() over
flush_dcache_folio()
On Tue, 01 Apr 2025 16:25:53 -0400
Steven Rostedt <rostedt@...dmis.org> wrote:
>
> static void
> @@ -7319,7 +7319,8 @@ int ring_buffer_map_get_reader(struct trace_buffer *buffer, int cpu)
>
> out:
> /* Some archs do not have data cache coherency between kernel and user-space */
> - flush_dcache_folio(virt_to_folio(cpu_buffer->reader_page->page));
> + flush_kernel_vmap_range(cpu_buffer->reader_page->page,
> + buffer->subbuf_size + BUF_PAGE_HDR_SIZE);
>
> rb_update_meta_page(cpu_buffer);
>
This patch actually fixes a bug (I need to update the change log).
The previous code only flushed a page. But if the sub-buffer size was 2 or
more pages, it would not flush the rest of the sub-buffer.
-- Steve
Powered by blists - more mailing lists