[PATCH v2] ARM: mm: mark section-aligned portion of rodata NX

Russell King - ARM Linux linux at arm.linux.org.uk
Thu Feb 11 10:00:32 PST 2016


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 at chromium.org> wrote:
> > On Mon, Dec 7, 2015 at 11:47 PM, Ard Biesheuvel
> > <ard.biesheuvel at linaro.org> wrote:
> >> On 7 December 2015 at 23:35, Kees Cook <keescook at chromium.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.

-- 
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.



More information about the linux-arm-kernel mailing list