aboutsummaryrefslogtreecommitdiffstats
path: root/mm/mlock.c
diff options
context:
space:
mode:
authorPaolo Bonzini <[email protected]>2024-11-14 12:06:24 +0000
committerPaolo Bonzini <[email protected]>2024-11-14 12:06:24 +0000
commit0586ade9e7f9491ccbe1e00975978cb9c2093006 (patch)
tree3dbb536e37d3e86086bd51dcee4bf81041bac087 /mm/mlock.c
parentMerge tag 'kvmarm-6.13' of https://git.kernel.org/pub/scm/linux/kernel/git/kv... (diff)
parentirqchip/loongson-eiointc: Add virt extension support (diff)
downloadkernel-0586ade9e7f9491ccbe1e00975978cb9c2093006.tar.gz
kernel-0586ade9e7f9491ccbe1e00975978cb9c2093006.zip
Merge tag 'loongarch-kvm-6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson into HEAD
LoongArch KVM changes for v6.13 1. Add iocsr and mmio bus simulation in kernel. 2. Add in-kernel interrupt controller emulation. 3. Add virt extension support for eiointc irqchip.
Diffstat (limited to 'mm/mlock.c')
-rw-r--r--mm/mlock.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/mm/mlock.c b/mm/mlock.c
index e3e3dc2b2956..cde076fa7d5e 100644
--- a/mm/mlock.c
+++ b/mm/mlock.c
@@ -725,14 +725,17 @@ static int apply_mlockall_flags(int flags)
}
for_each_vma(vmi, vma) {
+ int error;
vm_flags_t newflags;
newflags = vma->vm_flags & ~VM_LOCKED_MASK;
newflags |= to_add;
- /* Ignore errors */
- mlock_fixup(&vmi, vma, &prev, vma->vm_start, vma->vm_end,
- newflags);
+ error = mlock_fixup(&vmi, vma, &prev, vma->vm_start, vma->vm_end,
+ newflags);
+ /* Ignore errors, but prev needs fixing up. */
+ if (error)
+ prev = vma;
cond_resched();
}
out: