aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/arch/arm/boot/dts
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2022-03-08 11:55:48 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2022-03-10 10:48:53 -0800
commitfe673d3f5bf1fc50cdc4b754831db91a2ec10126 (patch)
tree992a7514dee0aeacfc5d133837ba90fafd3047b6 /arch/arm/boot/dts
parentMerge tag 'spi-fix-v5.17-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi (diff)
downloadwireguard-linux-fe673d3f5bf1fc50cdc4b754831db91a2ec10126.tar.xz
wireguard-linux-fe673d3f5bf1fc50cdc4b754831db91a2ec10126.zip
mm: gup: make fault_in_safe_writeable() use fixup_user_fault()
Instead of using GUP, make fault_in_safe_writeable() actually force a 'handle_mm_fault()' using the same fixup_user_fault() machinery that futexes already use. Using the GUP machinery meant that fault_in_safe_writeable() did not do everything that a real fault would do, ranging from not auto-expanding the stack segment, to not updating accessed or dirty flags in the page tables (GUP sets those flags on the pages themselves). The latter causes problems on architectures (like s390) that do accessed bit handling in software, which meant that fault_in_safe_writeable() didn't actually do all the fault handling it needed to, and trying to access the user address afterwards would still cause faults. Reported-and-tested-by: Andreas Gruenbacher <agruenba@redhat.com> Fixes: cdd591fc86e3 ("iov_iter: Introduce fault_in_iov_iter_writeable") Link: https://lore.kernel.org/all/CAHc6FU5nP+nziNGG0JAF1FUx-GV7kKFvM7aZuU_XD2_1v4vnvg@mail.gmail.com/ Acked-by: David Hildenbrand <david@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/arm/boot/dts')
0 files changed, 0 insertions, 0 deletions