https://github.com/torvalds/linux
Revision d172b1a3bd065dd89234eac547fc62cf80681631 authored by Nadav Amit on 11 July 2022, 16:59:06 UTC, committed by akpm on 27 July 2022, 01:25:01 UTC
Commit 824ddc601adc ("userfaultfd: provide unmasked address on page-fault") was introduced to fix an old bug, in which the offset in the address of a page-fault was masked. Concerns were raised - although were never backed by actual code - that some userspace code might break because the bug has been around for quite a while. To address these concerns a new flag was introduced, and only when this flag is set by the user, userfaultfd provides the exact address of the page-fault. The commit however had a bug, and if the flag is unset, the offset was always masked based on a base-page granularity. Yet, for huge-pages, the behavior prior to the commit was that the address is masked to the huge-page granulrity. While there are no reports on real breakage, fix this issue. If the flag is unset, use the address with the masking that was done before. Link: https://lkml.kernel.org/r/20220711165906.2682-1-namit@vmware.com Fixes: 824ddc601adc ("userfaultfd: provide unmasked address on page-fault") Signed-off-by: Nadav Amit <namit@vmware.com> Reported-by: James Houghton <jthoughton@google.com> Reviewed-by: Mike Rapoport <rppt@linux.ibm.com> Reviewed-by: Peter Xu <peterx@redhat.com> Reviewed-by: James Houghton <jthoughton@google.com> Cc: David Hildenbrand <david@redhat.com> Cc: Jan Kara <jack@suse.cz> Cc: Andrea Arcangeli <aarcange@redhat.com> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
1 parent c80af0c
Tip revision: d172b1a3bd065dd89234eac547fc62cf80681631 authored by Nadav Amit on 11 July 2022, 16:59:06 UTC
userfaultfd: provide properly masked address for huge-pages
userfaultfd: provide properly masked address for huge-pages
Tip revision: d172b1a
File | Mode | Size |
---|---|---|
arm | ||
interface | ||
acpi.h | -rw-r--r-- | 2.5 KB |
balloon.h | -rw-r--r-- | 1.0 KB |
events.h | -rw-r--r-- | 4.7 KB |
features.h | -rw-r--r-- | 502 bytes |
grant_table.h | -rw-r--r-- | 11.1 KB |
hvc-console.h | -rw-r--r-- | 518 bytes |
hvm.h | -rw-r--r-- | 1.3 KB |
mem-reservation.h | -rw-r--r-- | 1.5 KB |
page.h | -rw-r--r-- | 1.3 KB |
pci.h | -rw-r--r-- | 617 bytes |
platform_pci.h | -rw-r--r-- | 2.0 KB |
swiotlb-xen.h | -rw-r--r-- | 483 bytes |
xen-front-pgdir-shbuf.h | -rw-r--r-- | 2.3 KB |
xen-ops.h | -rw-r--r-- | 6.6 KB |
xen.h | -rw-r--r-- | 2.1 KB |
xenbus.h | -rw-r--r-- | 8.8 KB |
xenbus_dev.h | -rw-r--r-- | 1.8 KB |
Computing file changes ...