On Fri, Nov 22, 2024 at 12:10:29PM +0100, David Hildenbrand wrote: > In gup_fast(), we simply do > > seq = raw_read_seqcount(¤t->mm->write_protect_seq); > if (seq & 1) > return 0; > > Should we be using that there as well? > > if (!raw_seqcount_try_begin(¤t->mm->write_protect_seqs, seq)) > return 0; Might as well. A quick grep doesn't find me another instance of this pattern, but does find me something 'funny' in net/netfilter/x_tables.c. Let's pretend I didn't see that for now ... *sigh* Want me to stick a patch like this on, or do you want to do that later, when the dust has settled?