* Suren Baghdasaryan <surenb@xxxxxxxxxx> [241226 12:07]: > nommu configuration has two places where vma gets attached to the vma tree > without write-locking it. Add the missing locks to ensure vma is always > locked before it's attached. Does the delete side need to write lock as well? > > Signed-off-by: Suren Baghdasaryan <surenb@xxxxxxxxxx> > --- > mm/nommu.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/mm/nommu.c b/mm/nommu.c > index 72c8c505836c..1754e84e5758 100644 > --- a/mm/nommu.c > +++ b/mm/nommu.c > @@ -1189,6 +1189,7 @@ unsigned long do_mmap(struct file *file, > goto error_just_free; > > setup_vma_to_mm(vma, current->mm); > + vma_start_write(vma); > current->mm->map_count++; > /* add the VMA to the tree */ > vma_iter_store(&vmi, vma, true); > @@ -1356,6 +1357,7 @@ static int split_vma(struct vma_iterator *vmi, struct vm_area_struct *vma, > > setup_vma_to_mm(vma, mm); > setup_vma_to_mm(new, mm); > + vma_start_write(new); > vma_iter_store(vmi, new, true); > mm->map_count++; > return 0; > -- > 2.47.1.613.gc27f4b7a9f-goog >