linux/arch/arm/kernel
Russell King 2a3811068f ARM: Fix XIP kernels
Commit 7619751f8c ("ARM: 8595/2: apply more __ro_after_init") caused
a regression with XIP kernels by moving the __ro_after_init data into
the read-only section.  With XIP kernels, the read-only section is
located in read-only memory from the very beginning.

Work around this by moving the __ro_after_init data back into the .data
section, which will be in RAM, and hence will be writable.

It should be noted that in doing so, this remains writable after init.

Fixes: 7619751f8c ("ARM: 8595/2: apply more __ro_after_init")
Reported-by: Andrea Merello <andrea.merello@gmail.com>
Tested-by: Andrea Merello <andrea.merello@gmail.com> [ XIP stm32 ]
Tested-by: Alexandre Torgue <alexandre.torgue@st.com>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
2016-11-16 23:51:19 +00:00
..
.gitignore
arch_timer.c
asm-offsets.c ARM: save and reset the address limit when entering an exception 2016-07-07 16:01:01 +01:00
atags_compat.c
atags_parse.c
atags_proc.c
atags.h
bios32.c Merge branches 'pci/demodularize-hosts' and 'pci/host-request-windows' into next 2016-08-01 12:23:57 -05:00
calls.S ARM: wire up new pkey syscalls 2016-10-19 10:18:47 +01:00
cpuidle.c ARM: 8595/2: apply more __ro_after_init 2016-08-12 16:47:06 +01:00
crash_dump.c
debug.S
devtree.c ARM: 8616/1: dt: Respect property size when parsing CPUs 2016-09-29 16:57:43 +01:00
dma-isa.c
dma.c
early_printk.c
efi.c ARM/efi: Apply strict permissions for UEFI Runtime Services regions 2016-04-28 11:33:53 +02:00
elf.c
entry-armv.S ARM: fix address limit restoration for undefined instructions 2016-08-09 22:57:59 +01:00
entry-common.S ARM: rename S_FRAME_SIZE to PT_REGS_SIZE 2016-06-22 19:54:28 +01:00
entry-ftrace.S arm: move exports to definitions 2016-08-07 23:47:21 -04:00
entry-header.S ARM: save and reset the address limit when entering an exception 2016-07-07 16:01:01 +01:00
entry-v7m.S ARM: rename S_FRAME_SIZE to PT_REGS_SIZE 2016-06-22 19:54:28 +01:00
fiq.c
fiqasm.S
ftrace.c ftrace: Add return address pointer to ftrace_ret_stack 2016-08-24 12:15:14 +02:00
head-common.S
head-nommu.S ARM: 8607/1: V7M: Wire up caches for V7M processors with cache support. 2016-09-06 15:51:08 +01:00
head.S arm: move exports to definitions 2016-08-07 23:47:21 -04:00
hibernate.c
hw_breakpoint.c
hyp-stub.S ARM: 8600/1: Enforce some NS-SVC initialisation 2016-08-23 10:08:33 +01:00
insn.c
io.c
irq.c
isa.c
iwmmxt.S
jump_label.c
kgdb.c
machine_kexec.c ARM: kexec: fix kexec for Keystone 2 2016-08-02 19:35:29 -04:00
Makefile arm: move exports to definitions 2016-08-07 23:47:21 -04:00
module-plts.c ARM: kernel: avoid brute force search on PLT generation 2016-08-30 17:45:34 +01:00
module.c
module.lds ARM: kernel: merge core and init PLTs 2016-08-30 17:45:34 +01:00
opcodes.c
paravirt.c
patch.c
perf_callchain.c perf core: Add a 'nr' field to perf_event_callchain_context 2016-05-16 23:11:51 -03:00
perf_event_v6.c
perf_event_v7.c arm: perf: move to common attr_group fields 2016-09-09 14:51:51 +01:00
perf_event_xscale.c
perf_regs.c
pj4-cp0.c
process.c ARM: use simpler API for random address requests 2016-10-11 15:06:32 -07:00
psci_smp.c
ptrace.c arm/ptrace: run seccomp after ptrace 2016-06-14 10:54:42 -07:00
reboot.c ARM: 8568/1: reboot: remove duplicated local_irq_disable() 2016-05-05 19:02:09 +01:00
reboot.h
relocate_kernel.S
return_address.c
setup.c ARM: 8604/1: V7M: Add support for reading the CTR with read_cpuid_cachetype() 2016-09-06 15:51:07 +01:00
signal.c
sigreturn_codes.S
sleep.S
smccc-call.S arm: move exports to definitions 2016-08-07 23:47:21 -04:00
smp_scu.c
smp_tlb.c ARM: 8577/1: Fix Cortex-A15 798181 errata initialization 2016-07-02 12:13:03 +01:00
smp_twd.c arm/twd: Convert to hotplug state machine 2016-07-15 10:40:28 +02:00
smp.c nmi_backtrace: do a local dump_stack() instead of a self-NMI 2016-10-07 18:46:30 -07:00
stacktrace.c
suspend.c
swp_emulate.c
sys_arm.c
sys_oabi-compat.c arm: oabi compat: add missing access checks 2016-08-10 12:57:45 -07:00
tcm.c
thumbee.c
time.c
topology.c
traps.c ARM: fix backtrace 2016-11-15 15:25:39 +00:00
unwind.c
v7m.c
vdso.c Merge branch 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm 2016-10-06 07:59:37 -07:00
vmlinux-xip.lds.S ARM: Fix XIP kernels 2016-11-16 23:51:19 +00:00
vmlinux.lds.S nmi_backtrace: generate one-line reports for idle cpus 2016-10-07 18:46:30 -07:00
xscale-cp0.c