ring_buffer_...uf_order_set(9)
π ring_buffer_subbuf_order_set(9)
okay so this little icon is from the Kernel API Manual, and bestie, it's literally about resizing ring buffer pages. tiny function, big vibes. let's get into it π«Ά
β¨ NAME β¨
ring_buffer_subbuf_order_set β set the size of ring buffer sub page. no cap, that's the whole job π
πΈ SYNOPSIS πΈ
int ring_buffer_subbuf_order_set (struct trace_buffer *buffer , int order );
π ARGUMENTS π
bufferβ thering_bufferyou're giving a whole new page size to. main character energy, honestly πorderβ the order of the system pages that fit inside one sub buffer page. this is the number that does the actual slaying π₯
π¦ DESCRIPTION π¦
okay so by default, one ring buffer page = one system page. that's the standard. that's the baseline. that's the pre-glow-up era π
this API lets you set a new size for the ring buffer page, and the size has to be an order of the system page size β that's literally why the input parameter is called order: it's the order of system pages that get allocated for one ring buffer page. like so:
0β 1 system page1β 2 system pages3β 4 system pages
...and so on, iykyk π
it Returns 0 on success, or < 0 in case of an error. so like, zero means slay, negative means we're not okay π
β SEE ALSO β
the whole friend group, fr fr β and also the kernel file ./kernel/trace/ring_buffer.c:
ring_buffer_event_length(9)ring_buffer_event_data(9)rb_page_capacity(9)rb_subbuf_capacity(9)rb_subbuf_max_data_size(9)rb_subbuf_start(9)ring_buffer_event_time_stamp(9)ring_buffer_nr_dirty_pages(9)ring_buffer_wake_waiters(9)ring_buffer_wait(9)ring_buffer_poll_wait(9)rb_check_pages(9)rb_validate_buffer(9)__ring_buffer_alloc(9)__ring_buffer_alloc_range(9)__ring_buffer_alloc_remote(9)ring_buffer_free(9)ring_buffer_resize(9)rb_update_event(9)ring_buffer_nest_start(9)ring_buffer_nest_end(9)ring_buffer_unlock_commit(9)ring_buffer_lock_reserve(9)ring_buffer_discard_commit(9)ring_buffer_write(9)ring_buffer_record_disable(9)ring_buffer_record_enable(9)ring_buffer_record_off(9)ring_buffer_record_on(9)ring_buffer_record_is_on(9)ring_buffer_record_is_set_on(9)ring_buffer_record_is_on_cpu(9)ring_buffer_record_disable_cpu(9)ring_buffer_record_enable_cpu(9)ring_buffer_oldest_event_ts(9)ring_buffer_bytes_cpu(9)ring_buffer_entries_cpu(9)ring_buffer_overrun_cpu(9)ring_buffer_commit_overrun_cpu(9)ring_buffer_dropped_events_cpu(9)ring_buffer_read_events_cpu(9)ring_buffer_entries(9)ring_buffer_overruns(9)ring_buffer_iter_reset(9)ring_buffer_iter_empty(9)ring_buffer_peek(9)ring_buffer_iter_peek(9)ring_buffer_consume(9)ring_buffer_read_start(9)ring_buffer_read_finish(9)ring_buffer_iter_advance(9)ring_buffer_size(9)ring_buffer_max_event_size(9)ring_buffer_reset_cpu(9)ring_buffer_reset_online_cpus(9)ring_buffer_reset(9)ring_buffer_empty(9)ring_buffer_empty_cpu(9)ring_buffer_swap_cpu(9)ring_buffer_alloc_read_page(9)ring_buffer_free_read_page(9)ring_buffer_read_page(9)ring_buffer_read_page_data(9)ring_buffer_read_page_size(9)ring_buffer_subbuf_size_get(9)ring_buffer_subbuf_order_get(9)
bestie this page is from ./kernel/trace, dated October 2026 β that's the source/version and the date, and yes i'm mentioning them because the footer said so π
that's the whole page!! go forth and resize ur sub pages responsibly, ily π§β¨π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms