vma_modify_policy(9)
π vma_modify_policy(9) π
okay so bestie, welcome to vma_modify_policy(9) β part of the Kernel API Manual, and honestly? This one's a setup function, not a doer. She prepares the vibes so you can make the change. π
β¨ NAME β¨
vma_modify_policy β do all the necessary split/merge prep work so you can set the NUMA policy to @new_pol in the range @start to @end, which lives inside @vma. Like, she doesn't change the policy, she just gets the party ready. π
π¦ SYNOPSIS π¦
struct vm_area_struct * vma_modify_policy (struct vma_iterator *vmi ,
struct vm_area_struct *prev , struct vm_area_struct *vma , unsigned long
start , unsigned long end , struct mempolicy *new_pol );
πΈ ARGUMENTS πΈ
vmiβ a valid VMA iterator, and it's got to be positioned right atvma. no cap, position matters.prevβ the VMA that comes immediately beforevma, orNULLifvmais literally the first one. main character energy, no predecessor. πvmaβ the VMA that contains the rangestarttoend, the one you're updating.startβ where the range to update begins. It's allowed to be offset withinvma, so like, not necessarily at the very front. π«Άendβ the exclusive end of the range to update. Also may be offset withinvma. (Exclusive, bestie β she does not includeenditself, that's the whole deal. π)new_polβ the NUMA policy that thestarttoendrange is about to be set to. Future tense. Anticipation. π
π§ DESCRIPTION π§
IMPORTANT: the actual modification being requested here is NOT applied. Nope. Not happening in this function.
Okay so what does happen? The VMA is perhaps split and perhaps merged so that everything's set up nicely for the change β and then the caller is expected to go ahead and perform the actual modification themselves. It's giving "I did the prep, you do the final reveal." β¨
So don't walk away thinking the NUMA policy is already changed, because it is not, and that's the vibe check. π₯
β RETURN β
A VMA which contains the range start to end, all ready to have its NUMA policy changed to new_pol. She's prepped. She's poised. She's waiting on you. π
π SEE ALSO π
Kernel file ./mm/vma.h β plus her besties vma_modify_flags(9), vma_modify_name(9), and vma_modify_flags_uffd(9). iykyk π¦
and that's the whole page!! sourced from ./mm, dated October 2026, and this absolute icon of a manpage is vma_modify_policy(9). slay, go split some VMAs 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