arm64: fixes for -rc6
Hi Linus,
Please pull these two arm64 fixes for -rc6. We've got a regression fix for the signal raised when userspace makes an unsupported unaligned access and a revert of the contiguous (hugepte) support for hugetlb, which has once again been found to be broken. One day, maybe, we'll get it right.
Cheers,
Will
--->8
The following changes since commit a71c9a1c779f2499fb2afc0553e543f18aff6edf:
Linux 4.11-rc5 (2017-04-02 17:23:54 -0700)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git tags/arm64-fixes
for you to fetch changes up to 6ae979ab39a368c18ceb0424bf824d172d6ab56f:
Revert "Revert "arm64: hugetlb: partial revert of 66b3923a1a0f"" (2017-04-07 12:27:29 +0100)
----------------------------------------------------------------
arm64 fixes:
- Restore previous SIGBUS behaviour for unhandled unaligned user accesses
- Revert broken support for the contiguous bit in hugetlb (again...)
----------------------------------------------------------------
Victor Kamensky (1):
arm64: mm: unaligned access by user-land should be received as SIGBUS
Will Deacon (1):
Revert "Revert "arm64: hugetlb: partial revert of 66b3923a1a0f""
arch/arm64/mm/fault.c | 42 ++++++++++++++++++++++++------------------ arch/arm64/mm/hugetlbpage.c | 14 -------------- 2 files changed, 24 insertions(+), 32 deletions(-)
Quoted 4 lines · Will Deacon
Please pull these two arm64 fixes for -rc6. We've got a regression fix for the signal raised when userspace makes an unsupported unaligned access and a revert of the contiguous (hugepte) support for hugetlb, which has once again been found to be broken. One day, maybe, we'll get it right.
<snip>
Quoted 1 line
- Revert broken support for the contiguous bit in hugetlb (again...)
Quick aside: is this being worked on for 4.12? If not, should we ping Linaro and look to get some focus on this? It's right to disable this, but also painful to those wanting to work on various NFV use cases.
Jon.
Signature · 1 line
Computer Architect | Sent from my Fedora powered laptop
Hi Jon,
Quoted 7 lines · Jon Masters
Quoted 4 lines · Will Deacon
Please pull these two arm64 fixes for -rc6. We've got a regression fix for the signal raised when userspace makes an unsupported unaligned access and a revert of the contiguous (hugepte) support for hugetlb, which has once again been found to be broken. One day, maybe, we'll get it right.
Quoted 7 lines
<snip>
Quoted 1 line
- Revert broken support for the contiguous bit in hugetlb (again...)
Quick aside: is this being worked on for 4.12? If not, should we ping Linaro and look to get some focus on this? It's right to disable this, but also painful to those wanting to work on various NFV use cases.
I think Punit and Steve (CC'd) are working on this, but the issues run beyond the lack of break-before-make. The core GUP code, for example, doesn't even support hugeptes. There are also dormant issues with hugeptes and swap/migration entries, which would hit if somebody flipped CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION. Hell, even the pte_huge macro is bogus if you're using contiguous ptes (granted, it's seldom used, but if the above are fixed maybe it will be).
Will
Quoted 18 lines · Will Deacon
Hi Jon,
Quoted 7 lines · Jon Masters
Quoted 4 lines · Will Deacon
Please pull these two arm64 fixes for -rc6. We've got a regression fix for the signal raised when userspace makes an unsupported unaligned access and a revert of the contiguous (hugepte) support for hugetlb, which has once again been found to be broken. One day, maybe, we'll get it right.
Quoted 7 lines
<snip>
Quoted 1 line
- Revert broken support for the contiguous bit in hugetlb (again...)
Quick aside: is this being worked on for 4.12? If not, should we ping Linaro and look to get some focus on this? It's right to disable this, but also painful to those wanting to work on various NFV use cases.
Quoted 7 lines
I think Punit and Steve (CC'd) are working on this, but the issues run beyond the lack of break-before-make. The core GUP code, for example, doesn't even support hugeptes. There are also dormant issues with hugeptes and swap/migration entries, which would hit if somebody flipped
CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION. Hell, even thepte_hugemacro is bogus if you're using contiguous ptes (granted, it's seldom used, but if the above are fixed maybe it will be).
Steve has a fix for the break-before-make[0].
I've posted some fixes for contiguous hugepages support in preparation for enabling memory failure handling[1] but as the changes touch multiple architectures, it may take some time to merge.
I'll take a look at the GUP code next but no promises on a timeframe yet.
Thanks,
Punit
[0]
http://lists.infradead.org/pipermail/linux-arm-kernel/2017-March/497027.html
[1] https://lwn.net/Articles/718974/
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.