]> git.baikalelectronics.ru Git - kernel.git/commit
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)
commitcfe08104af361fdcd082c8420f5c62cb605ded7f
tree8ba37d9b1915b5b99871907f6c71e1c2d7d95442
parentb8cbdbdbdd7b02ed92ab5f9a533b264f76ea925c
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: 7a729a80e211c ("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