kvm_mmu_split_memory_region(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 kvm_mmu_split_memory_region(9) 🌸

okay so bestie, you're reading the Kernel API Manual page for kvm_mmu_split_memory_region β€” literally the glow-up where stage 2 blocks get split into PAGE_SIZE pages for a memory slot ✨


πŸ’… NAME πŸ’…

kvm_mmu_split_memory_region β€” split the stage 2 blocks into PAGE_SIZE pages for memory slot πŸŽ€

✨ SYNOPSIS ✨

void kvm_mmu_split_memory_region (struct kvm *kvm , int slot );

like, that's the whole vibe. void return, two args, no drama 🌈

🫢 ARGUMENTS 🫢

  • kvm β€” The KVM pointer πŸ‘‘ (the main character, obviously)
  • slot β€” The memory slot to split πŸ”ͺ (this is the one getting the makeover)

πŸ”₯ DESCRIPTION πŸ”₯

So what actually goes down: it acquires kvm->mmu_lock πŸ”’ β€” no cap, that lock is taken.

And here's the tea πŸ“: this whole thing is called with the kvm->slots_lock mutex already acquired, which is what serializes operations for VM memory regions. iykyk β€” don't be out here calling it without that mutex held, fr fr πŸ’€

πŸ¦‹ SEE ALSO πŸ¦‹

Kernel file ./arch/arm64/kvm/mmu.c β€” and the whole friend group πŸ’–:


and that's the page, bestie πŸ§šπŸ’œ this came straight out of ./arch/arm64/kvm, dated October 2026, and it's the kvm_mmu_split_memory_region(9) manual β€” go split some blocks, periodt πŸ’…β­

πŸ“¦ where this page comes from