ARM: 8518/1: Use correct symbols for XIP_KERNEL
authorChris Brandt <chris.brandt@renesas.com>
Tue, 9 Feb 2016 18:34:43 +0000 (19:34 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 11 Feb 2016 15:43:14 +0000 (15:43 +0000)
commit02afa9a87b232bca15bc30808b9310c6388ca1a8
treecdcc43e97ee4ed762ffd9087d3a92cb258aaab15
parent31b96cae5ca2e751ce3dcf4839c2398a1e8b8fc3
ARM: 8518/1: Use correct symbols for XIP_KERNEL

For an XIP build, _etext does not represent the end of the
binary image that needs to stay mapped into the MODULES_VADDR area.
Years ago, data came before text in the memory map. However,
now that the order is text/init/data, an XIP_KERNEL needs to map
up to the data location in order to keep from cutting off
parts of the kernel that are needed.
We only map up to the beginning of data because data has already been
copied, so there's no reason to keep it around anymore.
A new symbol is created to make it clear what it is we are referring
to.

This fixes the bug where you might lose the end of your kernel area
after page table setup is complete.

Signed-off-by: Chris Brandt <chris.brandt@renesas.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/include/asm/Kbuild
arch/arm/include/asm/sections.h [new file with mode: 0644]
arch/arm/kernel/module.c
arch/arm/kernel/vmlinux-xip.lds.S
arch/arm/mm/mmu.c