vdo_release_...one_pbn_lock(9)
π vdo_release_physical_zone_pbn_lock β Kernel API Manual β¨
okay bestie, welcome to the vdo_release_...one_pbn_lock(9) page, part of the Kernel API Manual π. this one's a lil function with a big name and honestly? she's giving cleanup-crew main character energy. let's get into it π«Ά
πΈ NAME πΈ
vdo_release_physical_zone_pbn_lock β releases a physical block lock if it's actually held, and then hands it back to the lock pool. iconic little recycling moment, no cap β»οΈβ¨
π¦ SYNOPSIS π¦
void vdo_release_physical_zone_pbn_lock (struct physical_zone *zone ,
physical_block_number_t locked_pbn , struct pbn_lock *lock );
three args, void return, she takes what she needs and gives nothing back (except the lock to the pool, obviously π
).
π ARGUMENTS π
zoneβ the physical zone where the lock was originally obtained. like, the homeroom of the lock π«locked_pbnβ the physical block number you're unlocking. the specific little block in question βlockβ the lock being released. bye bestie, you're going back to the pool π
π§ DESCRIPTION π§
so here's the important bit, and I need you to listen β it must be the last live reference, exactly like the memory were being freed. because it lowkey is: the lock memory is gonna get re-initialized or zeroed right after. so likeβ¦ don't be holding another reference to it and then acting surprised, okay? ππ
fr fr, "last live reference" is not a suggestion. treat it like the lock's already gone.
π SEE ALSO π
- Kernel file
./drivers/md/dm-vdo/physical-zone.cπ 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)struct pbn_lock_pool(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_dump_physical_zone(9)
like the whole pbn-lock friend group showed up to the party π obsessed with the cohesion honestly.
and that's the page, bestie! π this cutie came out of ./drivers/md/dm-vdo, dated October 2026, and it's filed under vdo_release_...one_pbn_lock(9) in the Kernel API Manual. go forth and release your 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