[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4300378.sBT9DdB2Gc@wuerfel>
Date: Fri, 12 Feb 2016 10:45:55 +0100
From: Arnd Bergmann <arnd@...db.de>
To: linux-arm-kernel@...ts.infradead.org
Cc: Russell King - ARM Linux <linux@....linux.org.uk>,
Kees Cook <keescook@...omium.org>,
Vladimir Murzin <vladimir.murzin@....com>,
Victor Kamensky <victor.kamensky@...aro.org>,
Nicolas Pitre <nico@...aro.org>,
Catalin Marinas <catalin.marinas@....com>,
Ard Biesheuvel <ard.biesheuvel@...aro.org>,
Will Deacon <will.deacon@....com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Laura Abbott <labbott@...oraproject.org>
Subject: Re: [PATCH v2] ARM: mm: mark section-aligned portion of rodata NX
On Thursday 11 February 2016 18:00:32 Russell King - ARM Linux wrote:
> On Fri, Jan 22, 2016 at 01:19:03PM -0800, Kees Cook wrote:
> > On Tue, Dec 8, 2015 at 10:38 AM, Kees Cook <keescook@...omium.org> wrote:
> > > On Mon, Dec 7, 2015 at 11:47 PM, Ard Biesheuvel
> > > <ard.biesheuvel@...aro.org> wrote:
> > >> On 7 December 2015 at 23:35, Kees Cook <keescook@...omium.org> wrote:
> > >>> /*
> > >>> + * Without CONFIG_DEBUG_ALIGN_RODATA, __start_rodata_section_aligned will
> > >>> + * be the first section-aligned location after __start_rodata. Otherwise,
> > >>> + * it will be equal to __start_rodata.
> > >>> + */
> > >>> +__start_rodata_section_aligned = ALIGN(__start_rodata, 1 << SECTION_SHIFT);
> ...
>
> I'm afraid this causes build errors on two configurations:
>
> ./arch/arm/kernel/vmlinux.lds:701: undefined symbol `SECTION_SHIFT' referenced in expression
>
> which I think is down to the new __start_rodata_section_aligned line.
>
> Olof's builder errored out with this for both allnoconfig and
> lpc18xx_defconfig builds. Both probably due to CONFIG_MMU being
> unset, and hence no definition for SECTION_SHIFT.
>
> I think you need to make this conditional on CONFIG_MMU.
I've hit another problem with this patch, when using XIP_KERNEL, I now see
arch/arm/mm/built-in.o:(.data+0x4bc): undefined reference to `__start_rodata_section_aligned'
in linux-next, apparently because of the combination with "ARM: 8513/1: xip: Move
XIP linking to a separate file".
Arnd
Powered by blists - more mailing lists