Re: [PATCH v2] ARM: mm: mark section-aligned portion of rodata NX
From: Russell King - ARM Linux
Date: Thu Feb 11 2016 - 13:00:52 EST
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@xxxxxxxxxxxx> wrote:
> > On Mon, Dec 7, 2015 at 11:47 PM, Ard Biesheuvel
> > <ard.biesheuvel@xxxxxxxxxx> wrote:
> >> On 7 December 2015 at 23:35, Kees Cook <keescook@xxxxxxxxxxxx> 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.
--
RMK's Patch system: http://www.arm.linux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.