[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAK8P3a2o88rAs9_qLY-iBXcyFgtUKUofSYXt2pJpgzypQJnRvQ@mail.gmail.com>
Date: Wed, 31 Jan 2018 21:24:27 +0100
From: Arnd Bergmann <arnd@...db.de>
To: Anders Roxell <anders.roxell@...aro.org>
Cc: Linux ARM <linux-arm-kernel@...ts.infradead.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Russell King - ARM Linux <linux@...linux.org.uk>
Subject: Re: [PATCHv2] arch/arm/Kconfig: default ARM_MODULE_PLTS to 'y'
On Wed, Jan 31, 2018 at 9:19 PM, Anders Roxell <anders.roxell@...aro.org> wrote:
> While testing multi_v7_defconfig with LOCKDEP enabled, 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 LOCKDEP is enabled without
> ARM_MODULE_PLTS, is that LOCKDEP eats so much memory that the top of the
> kernel gets out of reach from the bottom of the module area.
I think we could still use a better explanation here, as Russell said anything
could cause the size to grow too much, it's just that you happened to run into
it through lockdep, which can cause a very significant growth.
Arnd
> Suggested-by: Arnd Bergmann <arnd@...db.de>
> Signed-off-by: Anders Roxell <anders.roxell@...aro.org>
> ---
> arch/arm/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 51c8df561077..8014c8c322df 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -1702,6 +1702,7 @@ config ARCH_WANT_GENERAL_HUGETLB
> config ARM_MODULE_PLTS
> bool "Use PLTs to allow module memory to spill over into vmalloc area"
> depends on MODULES
> + default y
> help
> Allocate PLTs when loading modules so that jumps and calls whose
> targets are too far away for their relative offsets to be encoded
> --
> 2.11.0
>
Powered by blists - more mailing lists