提交 e7229f7d 编写于 作者: A Anders Roxell 提交者: Russell King

ARM: 8752/1: Kconfig: default ARM_MODULE_PLTS to 'y'

While testing multi_v7_defconfig with config fragments that makes the
kernel size to grow. The kernel fails to load simple modules, as
reported by kselftest:

[   34.107620] test_printf: section 4 reloc 2 sym 'memset': relocation
28 out of range (0xbf046044 -> 0xc109f720)
selftests: printf.sh [FAIL]

The problem that is seen when enabling too much in the kernel without
enabling ARM_MODULE_PLTS, is that the top of the kernel gets out of
reach from the bottom of the module area.
Suggested-by: NArnd Bergmann <arnd@arndb.de>
Signed-off-by: NAnders Roxell <anders.roxell@linaro.org>
Acked-by: NArd Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: NRussell King <rmk+kernel@armlinux.org.uk>
上级 60cc43fc
...@@ -1704,6 +1704,7 @@ config ARCH_WANT_GENERAL_HUGETLB ...@@ -1704,6 +1704,7 @@ config ARCH_WANT_GENERAL_HUGETLB
config ARM_MODULE_PLTS config ARM_MODULE_PLTS
bool "Use PLTs to allow module memory to spill over into vmalloc area" bool "Use PLTs to allow module memory to spill over into vmalloc area"
depends on MODULES depends on MODULES
default y
help help
Allocate PLTs when loading modules so that jumps and calls whose Allocate PLTs when loading modules so that jumps and calls whose
targets are too far away for their relative offsets to be encoded targets are too far away for their relative offsets to be encoded
...@@ -1714,7 +1715,8 @@ config ARM_MODULE_PLTS ...@@ -1714,7 +1715,8 @@ config ARM_MODULE_PLTS
rounding up to page size, the actual memory footprint is usually rounding up to page size, the actual memory footprint is usually
the same. the same.
Say y if you are getting out of memory errors while loading modules Disabling this is usually safe for small single-platform
configurations. If unsure, say y.
source "mm/Kconfig" source "mm/Kconfig"
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册