ARM: 8958/1: rename missed uaccess .fixup section
authorKees Cook <keescook@chromium.org>
Mon, 10 Feb 2020 01:04:17 +0000 (02:04 +0100)
committerRussell King <rmk+kernel@armlinux.org.uk>
Fri, 21 Feb 2020 17:03:21 +0000 (17:03 +0000)
commitf87b1c49bc675da30d8e1e8f4b60b800312c7b90
tree8ba37d9b1915b5b99871907f6c71e1c2d7d95442
parent45939ce292b4b11159719faaf60aba7d58d5fe33
ARM: 8958/1: rename missed uaccess .fixup section

When the uaccess .fixup section was renamed to .text.fixup, one case was
missed. Under ld.bfd, the orphaned section was moved close to .text
(since they share the "ax" bits), so things would work normally on
uaccess faults. Under ld.lld, the orphaned section was placed outside
the .text section, making it unreachable.

Link: https://github.com/ClangBuiltLinux/linux/issues/282
Link: https://bugs.chromium.org/p/chromium/issues/detail?id=1020633#c44
Link: https://lore.kernel.org/r/nycvar.YSQ.7.76.1912032147340.17114@knanqh.ubzr
Link: https://lore.kernel.org/lkml/202002071754.F5F073F1D@keescook/
Fixes: c4a84ae39b4a5 ("ARM: 8322/1: keep .text and .fixup regions closer together")
Cc: stable@vger.kernel.org
Signed-off-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
arch/arm/lib/copy_from_user.S