create_mult...metadata_vio(9)
π¦ create_mult...metadata_vio(9) β like, the Kernel API Manual bestie era π
okay so this is one of those kernel API pages from the Kernel API Manual, and it's lowkey a builder function β it literally makes a vio for you. icon behaviour honestly. let's get into it π
β¨ NAME β¨
create_multi_block_metadata_vio β Create a vio. that's it, that's the whole vibe π«Ά
πΈ SYNOPSIS πΈ
int create_multi_block_metadata_vio (struct vdo *vdo , enum vio_type
vio_type , enum vio_priority priority , void *parent , unsigned int
block_count , char *data , struct vio **vio_ptr );
π ARGUMENTS π
vdoβ The vdo on which the vio will operate. it's the main character of this whole story ngl πvio_typeβ The type of vio to create. so, like, which flavour of vio we're making πpriorityβ The relative priority to assign to the vio. yes bestie, this one gets a priority β¨parentβ The parent of the vio. found family fr fr π«Άblock_countβ The size of the vio in blocks. how big, basically πdataβ The buffer. the actual data moment πvio_ptrβ A pointer to hold the new vio. it's giving "here's an empty spot, put the baby vio in it" π₯Ή
β RETURN β
VDO_SUCCESS or an error. slay or π, there is no in-between.
π₯ SEE ALSO π₯
the kernel file lives at ./drivers/md/dm-vdo/vio.c β go be nosy, iykyk π
and the whole friend group shows up too:
free_vio_components(9)free_vio(9)update_vio_error_stats(9)make_vio_pool(9)free_vio_pool(9)is_vio_pool_busy(9)acquire_vio_from_pool(9)return_vio_to_pool(9)
ngl this one's short and sweet β but do NOT skip the error case, VDO_SUCCESS is not guaranteed and that's just how it is π
kisses bestie π this page came from ./drivers/md/dm-vdo and it's dated October 2026 β mark your calendar, periodt. ππ§ββοΈ
π¦ 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