Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

ring-buffer: Zero ring-buffer sub-buffers

In preparation for the ring-buffer memory mapping where each subbuf will
be accessible to user-space, zero all the page allocations.

Link: https://lore.kernel.org/linux-trace-kernel/20240220202310.2489614-2-vdonnefort@google.com

Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
Reviewed-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>

authored by

Vincent Donnefort and committed by
Steven Rostedt (Google)
6b76323e 2cc621fd

+6 -3
+6 -3
kernel/trace/ring_buffer.c
··· 1515 1515 1516 1516 list_add(&bpage->list, pages); 1517 1517 1518 - page = alloc_pages_node(cpu_to_node(cpu_buffer->cpu), mflags, 1518 + page = alloc_pages_node(cpu_to_node(cpu_buffer->cpu), 1519 + mflags | __GFP_ZERO, 1519 1520 cpu_buffer->buffer->subbuf_order); 1520 1521 if (!page) 1521 1522 goto free_pages; ··· 1601 1600 1602 1601 cpu_buffer->reader_page = bpage; 1603 1602 1604 - page = alloc_pages_node(cpu_to_node(cpu), GFP_KERNEL, cpu_buffer->buffer->subbuf_order); 1603 + page = alloc_pages_node(cpu_to_node(cpu), GFP_KERNEL | __GFP_ZERO, 1604 + cpu_buffer->buffer->subbuf_order); 1605 1605 if (!page) 1606 1606 goto fail_free_reader; 1607 1607 bpage->page = page_address(page); ··· 5570 5568 if (bpage->data) 5571 5569 goto out; 5572 5570 5573 - page = alloc_pages_node(cpu_to_node(cpu), GFP_KERNEL | __GFP_NORETRY, 5571 + page = alloc_pages_node(cpu_to_node(cpu), 5572 + GFP_KERNEL | __GFP_NORETRY | __GFP_ZERO, 5574 5573 cpu_buffer->buffer->subbuf_order); 5575 5574 if (!page) { 5576 5575 kfree(bpage);