[PATCH] arm64: Align .text section to PAGE_SIZE
jeremy.linton at arm.com
Fri Oct 23 09:32:15 PDT 2015
On 10/23/2015 10:34 AM, Ard Biesheuvel wrote:
> It looks like fixup_executable() [with DEBUG_RODATA enabled] is the
> culprit here: it calls create mapping() with a size that gets rounded
> up to a multiple of PAGE_SIZE, which means the region that ends up
> getting its exec bits cleared is larger than it should. Perhaps it is
> better to fix that instead?
Thanks for taking a look at this!
Your probably right.
But AFAIK, with just that fix text/ro sections can be partially mapped
without ro. It seems to me that putting a little padding in so that they
are on separate pages is a good idea, especially since it seems the
remaining sections of interest are page aligned, either explicitly in
the linker script or via assembly directives in assorted places.
Maybe a clearer fix is an additional ifdef in the DEBUG_ALIGN_RODATA
stanza which sets ALIGN_DEBUG_RO to align to pagesize if DEBUG_RODATA is
set, that way it only takes affect for RODATA.
More information about the linux-arm-kernel