drain_data_vio_pool(9)
π drain_data_vio_pool β from the Kernel API Manual, bestie edition π
okay so this one's from the Kernel API Manual (section 9, the kernel-functions section, iykyk) and honestly the name says a lot already. Let's get into it β¨
πΈ NAME πΈ
drain_data_vio_pool β wait asynchronously for all data_vios to be returned to the pool.
that's it, that's the whole vibe. no blocking, no sitting around, just asynchronous waiting. main character energy fr π
β¨ SYNOPSIS β¨
void drain_data_vio_pool (struct data_vio_pool *pool , struct
vdo_completion *completion );
like, literally copy-paste that, do not retype it, my heart cannot take typos in a signature π
π¦ ARGUMENTS π¦
poolβ thedata_viopool. this is the pool we're draining, the whole reason we're here π«Άcompletionβ the completion to notify when the pool has drained. your little notification bestie that gets pinged the moment the drain is done β
π SEE ALSO π
the kernel file this lives in: ./drivers/md/dm-vdo/data-vio.c π
and now the friend group, in the exact order the page gives them (do NOT come for me about the ordering, I don't make the rules) π
Bio flags.(9)Introduction(9)check_for_drain_complete_locked(9)pack_status(9)set_data_vio_compression_status(9)cancel_data_vio_compression(9)attempt_logical_block_lock(9)launch_data_vio(9)schedule_releases(9)process_release_callback(9)initialize_data_vio(9)make_data_vio_pool(9)free_data_vio_pool(9)vdo_launch_bio(9)resume_data_vio_pool(9)dump_data_vio_pool(9)release_allocated_lock(9)release_logical_lock(9)finish_cleanup(9)get_data_vio_operation_name(9)data_vio_allocate_data_block(9)release_data_vio_allocation_lock(9)uncompress_data_vio(9)modify_for_partial_write(9)read_block(9)update_block_map(9)read_old_block_mapping(9)pack_compressed_data(9)compress_data_vio(9)launch_compress_data_vio(9)hash_data_vio(9)write_bio_finished(9)acknowledge_write_callback(9)allocate_block(9)handle_allocation_error(9)continue_data_vio_with_block_map_slot(9)
like a whole squad of (9) pages, obsessed π§π
quick vibe check: the only things to hand over arepoolandcompletion, and the function returnsvoidβ no return value to check, the async notification is the whole point π
and that's the page!! brought to you by the source at ./drivers/md/dm-vdo, October 2026 vintage, drain_data_vio_pool(9) flavored β slay, go drain your pool responsibly πβ¨π
π¦ 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