get_mergeable_locked(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 get_mergeable_locked(9) 🌸

okay bestie, welcome to the Kernel API Manual β€” yes, that's the whole manual name, we're fancy here πŸ’…. This page is all about get_mergeable_locked, which is genuinely such a vibe: it's the function that goes "hmm, has somebody already queued up a bio that my bio could smoosh into?" 🫢


✨ NAME ✨

get_mergeable_locked β€” literally goes looking for an already queued bio that the current bio can be merged with. that's it. that's the whole job. icon behaviour honestly πŸ‘‘


πŸ¦‹ SYNOPSIS πŸ¦‹

struct vio * get_mergeable_locked (struct int_map *map , struct vio *vio
, bool back_merge );

like yes she takes three args and returns a struct vio *, we been knew πŸ’– (the spacing in there is exactly how the original has it, do not come for me πŸ™ˆ)


πŸŽ€ ARGUMENTS πŸŽ€

  • map β€” the bio map to use for merging. your lookup zone, your little matchmaking directory πŸ—‚οΈ
  • vio β€” the vio we want to merge. this is the main character of the operation, the one we're trying to pair up πŸ’«
  • back_merge β€” set to true for a back merge, false for a front merge. yes it's a boolean, yes you have to pick a side 🎯

πŸ’€ DESCRIPTION πŸ’€

so there are two types of merging possible: forward and backward 🌈. the way you tell them apart is a flag β€” and that flag uses kernel elevator terminology, which is such a specific little detail but okay go off, storage stack πŸ›—βœ¨

like that's genuinely the whole scope of this function's documentation and tbh? respect. no fluff, no filler, just merging facts πŸ”₯


⭐ RETURN ⭐

returns the vio to merge to 🫢 β€” and if no merging is possible, you get NULL. that's your "no match found, bestie, better luck next bio" moment 😭

ngl, always check for the NULL. it's giving "left on read" energy and you do not want to dereference that πŸ’€

🌸 SEE ALSO 🌸

all of these are your little friends, read them too iykyk πŸ¦‹


πŸ’œ that's the whole page! this one lives in ./drivers/md/dm-vdo, dated October 2026, and its man page name is get_mergeable_locked(9) β€” go forth and merge responsibly, bestie, you've got this πŸŽ€βœ¨πŸŒΈ
πŸ“¦ where this page comes from