On Tue, Jul 3, 2018 at 9:54 AM, Jason Gunthorpe <jgg@xxxxxxxxxxxx> wrote: > On Sun, Jul 01, 2018 at 09:10:57AM -0700, Dan Williams wrote: > >> I think we also need the following clue bat for people like me in the future: >> >> diff --git a/mm/gup.c b/mm/gup.c >> index b70d7ba7cc13..388a5c799fa5 100644 >> +++ b/mm/gup.c >> @@ -873,6 +873,8 @@ static __always_inline long >> __get_user_pages_locked(struct task_struct *ts >> long ret, pages_done; >> bool lock_dropped; >> >> + lockdep_assert_held_read(&mm->mmap_sem); >> + >> if (locked) { >> /* if VM_FAULT_RETRY can be returned, vmas become invalid */ >> BUG_ON(vmas); > > Yes please, I had the same thought.. > > Dan, can you make this happen? > Sure, I'll send the correct version of this to Andrew and cc you.