Skip to content

Commit c09d416

Browse files
vdonnefortrostedt
authored andcommitted
ring-buffer: Allocate sub-buffers with __GFP_COMP
In preparation for the ring-buffer memory mapping, allocate compound pages for the ring-buffer sub-buffers to enable us to map them to user-space with vm_insert_pages(). Link: https://lore.kernel.org/linux-trace-kernel/[email protected] Acked-by: David Hildenbrand <[email protected]> Signed-off-by: Vincent Donnefort <[email protected]> Signed-off-by: Steven Rostedt (Google) <[email protected]>
1 parent dd5a440 commit c09d416

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

kernel/trace/ring_buffer.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1524,7 +1524,7 @@ static int __rb_allocate_pages(struct ring_buffer_per_cpu *cpu_buffer,
15241524
list_add(&bpage->list, pages);
15251525

15261526
page = alloc_pages_node(cpu_to_node(cpu_buffer->cpu),
1527-
mflags | __GFP_ZERO,
1527+
mflags | __GFP_COMP | __GFP_ZERO,
15281528
cpu_buffer->buffer->subbuf_order);
15291529
if (!page)
15301530
goto free_pages;
@@ -1609,7 +1609,7 @@ rb_allocate_cpu_buffer(struct trace_buffer *buffer, long nr_pages, int cpu)
16091609

16101610
cpu_buffer->reader_page = bpage;
16111611

1612-
page = alloc_pages_node(cpu_to_node(cpu), GFP_KERNEL | __GFP_ZERO,
1612+
page = alloc_pages_node(cpu_to_node(cpu), GFP_KERNEL | __GFP_COMP | __GFP_ZERO,
16131613
cpu_buffer->buffer->subbuf_order);
16141614
if (!page)
16151615
goto fail_free_reader;
@@ -5579,7 +5579,7 @@ ring_buffer_alloc_read_page(struct trace_buffer *buffer, int cpu)
55795579
goto out;
55805580

55815581
page = alloc_pages_node(cpu_to_node(cpu),
5582-
GFP_KERNEL | __GFP_NORETRY | __GFP_ZERO,
5582+
GFP_KERNEL | __GFP_NORETRY | __GFP_COMP | __GFP_ZERO,
55835583
cpu_buffer->buffer->subbuf_order);
55845584
if (!page) {
55855585
kfree(bpage);

0 commit comments

Comments
 (0)