On Wed, Aug 22, 2018 at 8:31 PM Nicholas Piggin <npiggin@xxxxxxxxx> wrote: > > > So that leaves speculative operations. I don't see where the problem is > with those either -- this shortcut needs to ensure there are no other > *non speculative* operations. mm_users is correct for that. No. Because mm_users doesn't contain any lazy tlb users. And yes, those lazy tlbs are all kernel threads, but they can still speculatively load user addresses. Linus