ring_buffer_read_page_data(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’« ring_buffer_read_page_data(9) πŸ’«

okay bestie, this one is from the Kernel API Manual, section 9, and it is so chill. it's literally one function that hands you a pointer. no drama, no syscalls, just vibes and a page 🫢


✨ NAME ✨

ring_buffer_read_page_data β€” get pointer to the data in the page. that's it. that's the whole thing. she's a one-job icon πŸ‘‘


🌸 SYNOPSIS 🌸

void * ring_buffer_read_page_data (struct buffer_data_read_page *page );

πŸŽ€ ARGUMENTS πŸŽ€

  • page β€” the page you want the data from. give her the page, she gives you the pointer. simple as that πŸ¦‹

πŸ’– DESCRIPTION πŸ’–

Returns a pointer to the actual data in this page. like, the real data, not the wrapper, not the metadata, the actual good stuff. no cap. one call, pointer acquired, slay πŸ’…


πŸ”₯ SEE ALSO πŸ”₯

okay so this is the part where the manpage just dumps the entire friend group on you 😭 like literally everyone in ./kernel/trace/ring_buffer.c showed up. take a breath. here they all are, in order, bestie:

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_size(9), ring_buffer_subbuf_size_get(9), ring_buffer_subbuf_order_get(9), ring_buffer_subbuf_order_set(9)

also the source file itself: ./kernel/trace/ring_buffer.c β€” go read it if you're feeling brave 🧚


and that's the whole page, bestie. no notes. πŸ’œ

from the ./kernel/trace source, October 2026 β€” stay iconic, drink water, and always free your pages 🌈⭐
πŸ“¦ where this page comes from