Re: [PATCH] userfaultfd: prevent non-cooperative events vs mcopy_atomic races

From: Pavel Emelyanov
Date: Fri May 25 2018 - 10:06:17 EST



>> But doesn't it race even with regular PF handling, not only the fork? How
>> do we handle this race?
>
> With the regular #PF handing, the faulting thread patiently waits until
> page fault is resolved. With fork(), mremap() etc the thread that caused
> the event resumes once the uffd message is read by the monitor. That's
> surely way before monitor had chance to somehow process that message.

Ouch, yes. This is nasty :( So having no better solution in mind, let's
move forward with this.

Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>