diff options
Diffstat (limited to 'mm/userfaultfd.c')
| -rw-r--r-- | mm/userfaultfd.c | 3 | 
1 files changed, 2 insertions, 1 deletions
diff --git a/mm/userfaultfd.c b/mm/userfaultfd.c index 712160cd41ec..3c3539c573e7 100644 --- a/mm/userfaultfd.c +++ b/mm/userfaultfd.c @@ -1444,7 +1444,8 @@ static int uffd_move_lock(struct mm_struct *mm,  		 */  		down_read(&(*dst_vmap)->vm_lock->lock);  		if (*dst_vmap != *src_vmap) -			down_read(&(*src_vmap)->vm_lock->lock); +			down_read_nested(&(*src_vmap)->vm_lock->lock, +					 SINGLE_DEPTH_NESTING);  	}  	mmap_read_unlock(mm);  	return err;  |