Re: fs: use-after-free in userfaultfd_exit
From: Andrea Arcangeli
Date: Wed Mar 01 2017 - 18:13:46 EST
On Wed, Mar 01, 2017 at 07:48:00PM +0100, Dmitry Vyukov wrote:
> Hello,
>
> I've got the following use-after-free report while running syzkaller
> fuzzer on 86292b33d4b79ee03e2f43ea0381ef85f077c760:
Yes, I posted the fix for this one last Friday, I found it during
stress testing, it triggered the first time post-upstream merging
despite I was running the same stress testing with SLUB poisoning
enabled before.
This affects all apps, also the ones that don't use userfaultfd, it's
a locking issue. Furthermore the cost of userfaultfd_exit was not
acceptable, if something it had to be activated by a flag in mm->flags
(such an optimization would have been absolutely trivial though).
Thankfully I realized another feature (UFFDIO_COPY -ENOSPC retval) can
provide the same information at zero cost so I could drop
userfaultfd_exit as a whole.
https://marc.info/?l=linux-mm&m=148796041217814&w=2
The fix is already included in -mm along with the other fix for
VM_FAULT_NOPAGE.
Thanks,
Andrea