1
0
Fork 0
mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-01-24 01:09:38 -05:00
linux/arch/arm/kernel
Nicolas Pitre 0d302c710b ARM: vmlinux-xip.lds.S: fix multiple issues
The XIP linker script has several problems:

- PAGE_ALIGNED_DATA is missing and is likely to end up somewhere with
  the wrong LMA.

- BUG_TABLE definitely has the wrong LMA, it is not copied to RAM, and
  its VMA is unaccounted for and likely to clash with dynamic memory
  usage.

- TCM usage is similarly broken.

- PERCPU_SECTION is left in ROM despite being written to.

Let's use generic macros for those things and locate them appropriately.
Incidentally, those macros are usable with a LMA != VMA already by
properly defining LOAD_OFFSET.

TCM is not fixed here. It never worked in a XIP configuration anyway, so
that can wait until another round of cleanups.

Signed-off-by: Nicolas Pitre <nico@linaro.org>
Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Tested-by: Chris Brandt <Chris.Brandt@renesas.com>
2017-09-10 19:34:52 -04:00
..
.gitignore
arch_timer.c
armksyms.c arm: kernel: Add SMC structure parameter 2017-02-03 18:46:33 +00:00
asm-offsets.c
atags.h
atags_compat.c
atags_parse.c ARM: fix rd_size declaration 2017-07-10 16:32:34 -07:00
atags_proc.c
bios32.c ARM/PCI: Fix pcibios_init_resource() struct pci_host_bridge leak 2017-07-10 09:33:14 -05:00
cpuidle.c
crash_dump.c
debug.S
devtree.c
dma-isa.c
dma.c
early_printk.c
efi.c
elf.c
entry-armv.S ARM: Prepare for randomized task_struct 2017-06-30 12:00:50 -07:00
entry-common.S
entry-ftrace.S ARM: 8678/1: ftrace: Adds support for CONFIG_DYNAMIC_FTRACE_WITH_REGS 2017-06-18 22:25:16 +01:00
entry-header.S
entry-v7m.S
fiq.c
fiqasm.S
ftrace.c ARM: 8678/1: ftrace: Adds support for CONFIG_DYNAMIC_FTRACE_WITH_REGS 2017-06-18 22:25:16 +01:00
head-common.S ARM: head-common.S: speed up startup code 2017-09-10 19:34:52 -04:00
head-nommu.S ARM: 8649/2: nommu: remove Hivecs configuration is asm 2017-02-28 11:06:15 +00:00
head.S
hibernate.c
hw_breakpoint.c ARM/hw_breakpoint: Fix possible recursive locking for arch_hw_breakpoint_init 2017-06-20 12:25:22 +02:00
hyp-stub.S ARM: hyp-stub: Fix Thumb-2 compilation 2017-04-20 12:58:53 +02:00
insn.c
io.c
irq.c
isa.c
iwmmxt.S
jump_label.c
kgdb.c scripts/spelling.txt: add regsiter -> register spelling mistake 2017-05-08 17:15:13 -07:00
machine_kexec.c ARM: kexec: fix failure to boot crash kernel 2017-07-20 11:37:42 +01:00
Makefile
module-plts.c ARM: 8662/1: module: split core and init PLT sections 2017-03-17 10:01:28 +00:00
module.c ARM: Silence first allocation with CONFIG_ARM_MODULE_PLTS=y 2017-05-11 14:43:31 +01:00
module.lds ARM: 8662/1: module: split core and init PLT sections 2017-03-17 10:01:28 +00:00
opcodes.c
paravirt.c
patch.c arm: Prevent hotplug rwsem recursion 2017-05-26 10:10:46 +02:00
perf_callchain.c
perf_event_v6.c arm: perf: make of_device_ids const 2017-06-15 11:07:34 +01:00
perf_event_v7.c arm: perf: use builtin_platform_driver 2017-02-03 18:46:42 +00:00
perf_event_xscale.c arm: perf: use builtin_platform_driver 2017-02-03 18:46:42 +00:00
perf_regs.c sched/headers: Prepare for new header dependencies before moving code to <linux/sched/task_stack.h> 2017-03-02 08:42:36 +01:00
pj4-cp0.c
process.c ARM: 8683/1: ARM32: Support mremap() for sigpage/vDSO 2017-06-21 13:02:58 +01:00
psci_smp.c
ptrace.c sched/headers: Prepare for new header dependencies before moving code to <linux/sched/task_stack.h> 2017-03-02 08:42:36 +01:00
reboot.c ARM: soft-reboot into same mode that we entered the kernel 2017-04-09 07:49:24 -07:00
reboot.h
relocate_kernel.S
return_address.c
setup.c ARM: kexec: avoid allocating crashkernel region outside lowmem 2017-07-20 11:37:15 +01:00
signal.c ARM: 8687/1: signal: Fix unparseable iwmmxt_sigframe in uc_regspace[] 2017-07-24 14:26:55 +01:00
sigreturn_codes.S
sleep.S
smccc-call.S arm: kernel: Add SMC structure parameter 2017-02-03 18:46:33 +00:00
smp.c arm: Adjust system_state check 2017-05-23 10:01:35 +02:00
smp_scu.c
smp_tlb.c
smp_twd.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
stacktrace.c sched/headers: Prepare for new header dependencies before moving code to <linux/sched/debug.h> 2017-03-02 08:42:34 +01:00
suspend.c sched/headers: Prepare to remove the <linux/mm_types.h> dependency from <linux/sched.h> 2017-03-02 08:42:37 +01:00
swp_emulate.c sched/headers: Prepare to remove the <linux/mm_types.h> dependency from <linux/sched.h> 2017-03-02 08:42:37 +01:00
sys_arm.c
sys_oabi-compat.c sched/headers: Prepare to remove <linux/cred.h> inclusion from <linux/sched.h> 2017-03-02 08:42:31 +01:00
tcm.c
thumbee.c
time.c clocksource/drivers: Rename clocksource_probe to timer_probe 2017-06-14 11:59:16 +02:00
topology.c arm,arm64,drivers: add a prefix to drivers arch_topology interfaces 2017-06-03 19:10:09 +09:00
traps.c sched/headers: Prepare for new header dependencies before moving code to <linux/sched/task_stack.h> 2017-03-02 08:42:36 +01:00
unwind.c
v7m.c
vdso.c ARM: 8683/1: ARM32: Support mremap() for sigpage/vDSO 2017-06-21 13:02:58 +01:00
vmlinux-xip.lds.S ARM: vmlinux-xip.lds.S: fix multiple issues 2017-09-10 19:34:52 -04:00
vmlinux.lds.S ARM: vmlinux.lds.S: replace open coded .data sections with generic macros 2017-09-10 19:34:52 -04:00
xscale-cp0.c