STRUCT PBN_LOCK_POOL(9)
π struct pbn_lock_pool(9) β the kernel API manual bestie π
okay so we're diving into struct pbn_lock_pool(9) today, from the Kernel API Manual, and honestly? it's giving "humble little data structure that carries the whole team." no cap. stay with me π«Ά
β¨ NAME β¨
struct pbn_lock_pool β literally just a list of PBN locks. that's the whole vibe. π
β¨ SYNOPSIS β¨
struct pbn_lock_pool {
size_t capacity;
size_t borrowed;
struct list_head idle_list;
idle_pbn_lock locks[];
};
look at her. four fields. immaculate. πΈ
β¨ Members β¨
capacityβ the number of locks that were allocated for the pool. like, how many seats are in the venue, bestie. πborrowedβ the number of locks that are currently borrowed from the pool. who's out on loan rn. πidle_listβ a list containing all the idle PBN lock instances. the ones just chilling, not doing anything, living their best life. π¦locksβ the memory for all the locks this pool allocated. it's the actual storage, the whole point. π₯
β¨ Description β¨
okay so real talk: the lock pool is little more than the memory that's been allocated for the locks. that's it. that's the description. she's lowkey minimal and I respect it so much. πβ¨
β¨ SEE ALSO β¨
bestie, this list is long and every single one of these matters, so let's go, no skipping, we're doing all of them: π§
the kernel file ./drivers/md/dm-vdo/physical-zone.c, plus:
vdo_is_pbn_read_lock(9)vdo_downgrade_pbn_write_lock(9)vdo_claim_pbn_lock_increment(9)vdo_assign_pbn_lock_provisional_reference(9)vdo_unassign_pbn_lock_provisional_reference(9)release_pbn_lock_provisional_reference(9)union idle_pbn_lock(9)return_pbn_lock_to_pool(9)make_pbn_lock_pool(9)free_pbn_lock_pool(9)borrow_pbn_lock_from_pool(9)initialize_zone(9)vdo_make_physical_zones(9)vdo_free_physical_zones(9)vdo_get_physical_zone_pbn_lock(9)vdo_attempt_physical_zone_pbn_lock(9)allocate_and_lock_block(9)retry_allocation(9)continue_allocating(9)vdo_allocate_block_in_zone(9)vdo_release_physical_zone_pbn_lock(9)vdo_dump_physical_zone(9)
go read them all, iykyk π
that's the whole page, bestie β every field, every cross-reference, nothing dropped. periodt. π
and that's a wrap on struct pbn_lock_pool(9) from the kernel's ./drivers/md/dm-vdo corner of the world, dated October 2026 β mwah, go touch some locks (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