vb2_plane_vaddr(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… vb2_plane_vaddr(9) β€” a lil' page from the Kernel API Manual, bestie πŸŽ€

okay so picture this: you're deep in the kernel media stack, you've got a struct vb2_buffer, and you just wanna know where one of its planes actually lives in memory. that's literally this function. it's giving "address reveal" moment and honestly? iconic. ✨


🌸 NAME 🌸

vb2_plane_vaddr β€” returns a kernel virtual address of a given plane, no cap 🫢


πŸ¦‹ SYNOPSIS πŸ¦‹

void * vb2_plane_vaddr (struct vb2_buffer *vb , unsigned int plane_no );

like, that's the whole signature. short and slay.


πŸ’– ARGUMENTS πŸ’–

  • vb β€” pointer to the struct vb2_buffer that the plane in question belongs to. yes, the plane has to have a home, and this is its home. 🏠
  • plane_no β€” the plane number whose address you want back. just tell it which plane and it'll spill.

✨ DESCRIPTION ✨

so what does it actually do? this function returns a kernel virtual address of a given plane if such a mapping exists. and if it doesn't exist? you get NULL. that's it. that's the whole vibe check. πŸ’€

fr fr, keep an eye out for that NULL β€” it's not being dramatic, it's just telling you the mapping isn't there.

πŸ‘‘ SEE ALSO πŸ‘‘

kernel file ./include/media/videobuf2-core.h, plus the whole friend group:

enum vb2_memory(9), struct vb2_mem_ops(9), struct vb2_plane(9), enum vb2_io_modes(9), enum vb2_buffer_state(9), struct vb2_buffer(9), struct vb2_ops(9), struct vb2_buf_ops(9), struct vb2_queue(9), vb2_queue_allows_cache_hints(9), vb2_plane_cookie(9), vb2_buffer_done(9), vb2_discard_done(9), vb2_wait_for_all_buffers(9), vb2_core_querybuf(9), vb2_core_reqbufs(9), vb2_core_create_bufs(9), vb2_core_prepare_buf(9), vb2_core_remove_bufs(9), vb2_core_qbuf(9), vb2_core_dqbuf(9), vb2_core_streamon(9), vb2_core_streamoff(9), vb2_core_expbuf(9), vb2_core_queue_init(9), vb2_core_queue_release(9), vb2_queue_error(9), vb2_mmap(9), vb2_get_unmapped_area(9), vb2_core_poll(9), vb2_read(9), vb2_write(9), vb2_thread_fnc(9), vb2_thread_start(9), vb2_thread_stop(9), vb2_is_streaming(9), vb2_fileio_is_active(9), vb2_get_num_buffers(9), vb2_is_busy(9), vb2_get_drv_priv(9), vb2_set_plane_payload(9), vb2_get_plane_payload(9), vb2_plane_size(9), vb2_start_streaming_called(9), vb2_clear_last_buffer_dequeued(9), vb2_get_buffer(9), vb2_buffer_in_use(9), vb2_verify_memory_type(9), vb2_request_object_is_buffer(9), vb2_request_buffer_cnt(9)

like, that's a lot of reading material. iykyk. πŸ“š


and that's the page!! 🧚 source/version is ./include/media, dated October 2026 β€” mwah, periodt. πŸ’…πŸ’œ

πŸ“¦ where this page comes from