On Tue, Sep 21, 2021 at 01:02:47PM -0700, Nadav Amit wrote: > From: Nadav Amit <namit@xxxxxxxxxx> > > A race is possible when a process exits, its VMAs are removed > by exit_mmap() and at the same time userfaultfd_writeprotect() is > called. > > The race was detected by KASAN on a development kernel, but it appears > to be possible on vanilla kernels as well. > > Use mmget_not_zero() to prevent the race as done in other userfaultfd > operations. > > Cc: Peter Xu <peterx@xxxxxxxxxx> > Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx > Fixes: 63b2d4174c4ad ("userfaultfd: wp: add the writeprotect API to userfaultfd ioctl") > Signed-off-by: Nadav Amit <namit@xxxxxxxxxx> Reviewed-by: Peter Xu <peterx@xxxxxxxxxx> Thanks! -- Peter Xu