aboutsummaryrefslogtreecommitdiff
path: root/arch/um/kernel
diff options
context:
space:
mode:
authorGravatar Johannes Berg <johannes.berg@intel.com> 2022-10-18 12:49:49 +0200
committerGravatar Richard Weinberger <richard@nod.at> 2023-02-01 22:11:27 +0100
commit3271e27bba90f676fa530592ba8ec9fe51938abf (patch)
tree0e2af14e3838983e056f33518d8fd4ab28a5bd6e /arch/um/kernel
parenthostfs: Replace kmap() with kmap_local_page() (diff)
downloadlinux-3271e27bba90f676fa530592ba8ec9fe51938abf.tar.gz
linux-3271e27bba90f676fa530592ba8ec9fe51938abf.tar.bz2
linux-3271e27bba90f676fa530592ba8ec9fe51938abf.zip
um: protect VMA iteration
Due to changes in the iteration, there are now lockdep checks indicating that we're missing locking here. Add the missing locking where it's needed. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Acked-By: Anton Ivanov <anton.ivanov@cambridgegreys.com> Signed-off-by: Richard Weinberger <richard@nod.at>
Diffstat (limited to 'arch/um/kernel')
-rw-r--r--arch/um/kernel/tlb.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/um/kernel/tlb.c b/arch/um/kernel/tlb.c
index ad449173a1a1..fa43bcd9ba0b 100644
--- a/arch/um/kernel/tlb.c
+++ b/arch/um/kernel/tlb.c
@@ -597,6 +597,8 @@ void force_flush_all(void)
struct vm_area_struct *vma;
VMA_ITERATOR(vmi, mm, 0);
+ mmap_read_lock(mm);
for_each_vma(vmi, vma)
fix_range(mm, vma->vm_start, vma->vm_end, 1);
+ mmap_read_unlock(mm);
}