diff options
author | Gerald Schaefer <gerald.schaefer@linux.ibm.com> | 2022-08-19 19:40:11 +0200 |
---|---|---|
committer | Vasily Gorbik <gor@linux.ibm.com> | 2022-08-30 21:57:07 +0200 |
commit | ff03b8846705e517f878585cf66c5d8fca1c38b2 (patch) | |
tree | 65a96227a9421350aa62c152956f17fd3aae34ab /arch/s390 | |
parent | Linux 6.0-rc3 (diff) | |
download | linux-ff03b8846705e517f878585cf66c5d8fca1c38b2.tar.xz linux-ff03b8846705e517f878585cf66c5d8fca1c38b2.zip |
s390/mm: remove useless hugepage address alignment
The failing address alignment to HPAGE_MASK in do_exception(), for
hugetlb faults, was useless from the beginning. With 2 GB hugepage
support it became wrong, but w/o further negative impact. Now it
could have negative performance impact because it breaks the cacheline
optimization for process_huge_page().
Therefore, remove it.
Note that we still have failing address alignment by HW to PAGE_SIZE,
for all page faults, not just hugetlb faults. So this patch will not
fix UFFD_FEATURE_EXACT_ADDRESS for userfaultfd handling. It will just
move the failing address for hugetlb faults a bit closer to the real
address, at 4K page granularity, similar to normal page faults.
Reviewed-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Gerald Schaefer <gerald.schaefer@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Diffstat (limited to 'arch/s390')
-rw-r--r-- | arch/s390/mm/fault.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/arch/s390/mm/fault.c b/arch/s390/mm/fault.c index 09b6e756d521..9ab6ca6f7f59 100644 --- a/arch/s390/mm/fault.c +++ b/arch/s390/mm/fault.c @@ -421,8 +421,6 @@ retry: if (unlikely(!(vma->vm_flags & access))) goto out_up; - if (is_vm_hugetlb_page(vma)) - address &= HPAGE_MASK; /* * If for any reason at all we couldn't handle the fault, * make sure we exit gracefully rather than endlessly redo |