aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm64/mm/hugetlbpage.c
diff options
context:
space:
mode:
authorVictor Kamensky <kamensky@cisco.com>2017-04-03 22:51:01 -0700
committerWill Deacon <will.deacon@arm.com>2017-04-04 12:13:36 +0100
commit09a6adf53d42ca3088fa3fb41f40b768efc711ed (patch)
treeb453a6b17322576ddad32ef6dfdeb26e7b880e16 /arch/arm64/mm/hugetlbpage.c
parentLinux 4.11-rc5 (diff)
downloadlinux-dev-09a6adf53d42ca3088fa3fb41f40b768efc711ed.tar.xz
linux-dev-09a6adf53d42ca3088fa3fb41f40b768efc711ed.zip
arm64: mm: unaligned access by user-land should be received as SIGBUS
After 52d7523 (arm64: mm: allow the kernel to handle alignment faults on user accesses) commit user-land accesses that produce unaligned exceptions like in case of aarch32 ldm/stm/ldrd/strd instructions operating on unaligned memory received by user-land as SIGSEGV. It is wrong, it should be reported as SIGBUS as it was before 52d7523 commit. Changed do_bad_area function to take signal and code parameters out of esr value using fault_info table, so in case of do_alignment_fault fault user-land will receive SIGBUS. Wrapped access to fault_info table into esr_to_fault_info function. Cc: <stable@vger.kernel.org> Fixes: 52d7523 (arm64: mm: allow the kernel to handle alignment faults on user accesses) Signed-off-by: Victor Kamensky <kamensky@cisco.com> Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions