linux/arch/arm64/kernel
Jisheng Zhang 5a9e3e156e arm64: apply __ro_after_init to some objects
These objects are set during initialization, thereafter are read only.

Previously I only want to mark vdso_pages, vdso_spec, vectors_page and
cpu_ops as __read_mostly from performance point of view. Then inspired
by Kees's patch[1] to apply more __ro_after_init for arm, I think it's
better to mark them as __ro_after_init. What's more, I find some more
objects are also read only after init. So apply __ro_after_init to all
of them.

This patch also removes global vdso_pagelist and tries to clean up
vdso_spec[] assignment code.

[1] http://www.spinics.net/lists/arm-kernel/msg523188.html

Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Jisheng Zhang <jszhang@marvell.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2016-08-22 12:32:29 +01:00
..
probes arm64: Remove stack duplicating code from jprobes 2016-08-11 17:38:16 +01:00
vdso arm64: Add support for CLOCK_MONOTONIC_RAW in clock_gettime() vDSO 2016-07-12 16:06:32 +01:00
.gitignore
acpi_numa.c arm64, ACPI, NUMA: NUMA support based on SRAT and SLIT 2016-05-30 14:27:09 +02:00
acpi_parking_protocol.c arm64: kernel: acpi: fix ioremap in ACPI parking protocol cpu_postboot 2016-02-26 15:39:52 +00:00
acpi.c arm64: acpi: add acpi=on cmdline option to prefer ACPI boot over DT 2016-04-26 14:37:41 +01:00
alternative.c arm64: mm: fold alternatives into .init 2015-12-10 17:36:08 +00:00
arm64ksyms.c Merge branch 'for-next/kprobes' into for-next/core 2016-07-21 18:20:41 +01:00
armv8_deprecated.c Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-07-29 13:55:30 -07:00
asm-offsets.c arm64 updates for 4.8: 2016-07-27 11:16:05 -07:00
cacheinfo.c arm64: kernel: add support for cpu cache information 2015-01-15 11:55:07 +00:00
cpu_errata.c arm64 updates for 4.8: 2016-07-27 11:16:05 -07:00
cpu_ops.c arm64: apply __ro_after_init to some objects 2016-08-22 12:32:29 +01:00
cpu-reset.h arm64: Add back cpu reset routines 2016-06-27 16:31:25 +01:00
cpu-reset.S arm64: Add back cpu reset routines 2016-06-27 16:31:25 +01:00
cpufeature.c - ARM: GICv3 ITS emulation and various fixes. Removal of the old 2016-08-02 16:11:27 -04:00
cpuidle.c arm64: add support for ACPI Low Power Idle(LPI) 2016-07-21 23:29:38 +02:00
cpuinfo.c arm64: cpuinfo: Expose MIDR_EL1 and REVIDR_EL1 to sysfs 2016-07-12 16:09:37 +01:00
debug-monitors.c Merge branch 'for-next/kprobes' into for-next/core 2016-07-21 18:20:41 +01:00
efi-entry.S arm64: move early boot code to the .init segment 2016-04-14 18:11:30 +01:00
efi.c arm64: efi: avoid block mappings for unaligned UEFI memory regions 2016-07-01 11:56:26 +01:00
entry32.S arm64: entry32: remove pointless register assignment 2015-07-10 16:47:13 +01:00
entry-fpsimd.S
entry-ftrace.S arm64: ftrace: fix function_graph tracer panic 2015-10-02 11:12:56 +01:00
entry.S arm64: factor work_pending state machine to C 2016-08-22 10:00:48 +01:00
fpsimd.c arm64: Fix misspellings in comments. 2016-03-04 18:19:17 +00:00
ftrace.c arm64: ftrace: modify a stack frame in a safe way 2015-12-21 17:26:01 +00:00
head.S arm64: relocatable: suppress R_AARCH64_ABS64 relocations in vmlinux 2016-07-29 10:45:01 +01:00
hibernate-asm.S arm64: hibernate: reduce TLB maintenance scope 2016-08-22 10:00:48 +01:00
hibernate.c arm64: hibernate: handle allocation failures 2016-08-12 19:08:33 +01:00
hw_breakpoint.c arm64: Blacklist non-kprobe-able symbol 2016-07-19 15:03:20 +01:00
hyp-stub.S arm64: Add back cpu reset routines 2016-06-27 16:31:25 +01:00
image.h arm64 updates for 4.7: 2016-05-16 17:17:24 -07:00
insn.c arm64: kprobes instruction simulation support 2016-07-19 15:03:21 +01:00
io.c
irq.c arm64: remove irq_count and do_softirq_own_stack() 2015-12-21 17:26:01 +00:00
jump_label.c jump_label: Rename JUMP_LABEL_{EN,DIS}ABLE to JUMP_LABEL_{JMP,NOP} 2015-08-03 11:34:12 +02:00
kaslr.c arm64: apply __ro_after_init to some objects 2016-08-22 12:32:29 +01:00
kgdb.c arm64: Blacklist non-kprobe-able symbol 2016-07-19 15:03:20 +01:00
kuser32.S
machine_kexec.c arm64/kexec: Add pr_debug output 2016-06-27 16:31:26 +01:00
Makefile arm64 updates for 4.8: 2016-07-27 11:16:05 -07:00
module-plts.c arm64: add support for module PLTs 2016-02-24 14:57:24 +00:00
module.c arm64: add support for kernel ASLR 2016-02-24 14:57:27 +00:00
module.lds arm64: add support for module PLTs 2016-02-24 14:57:24 +00:00
paravirt.c arm64: introduce CONFIG_PARAVIRT, PARAVIRT_TIME_ACCOUNTING and pv_time_ops 2015-12-21 14:40:54 +00:00
pci.c Merge branch 'pci/resource' into next 2016-08-01 12:23:44 -05:00
perf_callchain.c perf core: Add a 'nr' field to perf_event_callchain_context 2016-05-16 23:11:51 -03:00
perf_event.c arm64: perf: Use the builtin_platform_driver 2016-08-22 10:00:48 +01:00
perf_regs.c perf: Move task_pt_regs sampling into arch code 2015-01-09 11:12:28 +01:00
process.c exit_thread: remove empty bodies 2016-05-20 17:58:30 -07:00
psci.c ARM: 8511/1: ARM64: kernel: PSCI: move PSCI idle management code to drivers/firmware 2016-02-11 15:33:38 +00:00
ptrace.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security 2016-07-29 17:38:46 -07:00
relocate_kernel.S arm64/kexec: Add core kexec support 2016-06-27 16:31:25 +01:00
return_address.c arm64: ftrace: fix a stack tracer's output under function graph tracer 2015-12-21 17:26:02 +00:00
setup.c DeviceTree update for 4.8: 2016-07-30 11:32:01 -07:00
signal32.c arm64: Fix misspellings in comments. 2016-03-04 18:19:17 +00:00
signal.c arm64: factor work_pending state machine to C 2016-08-22 10:00:48 +01:00
sleep.S arm64: kernel: avoid literal load of virtual address with MMU off 2016-08-17 17:37:37 +01:00
smccc-call.S ARM: 8480/2: arm64: add implementation for arm-smccc 2016-01-04 16:24:45 +00:00
smp_spin_table.c arm64: spin-table: add missing of_node_put() 2016-04-20 10:35:15 +01:00
smp.c arm64: Support hard limit of cpu count by nr_cpus 2016-08-09 11:00:44 +01:00
stacktrace.c arm64: make irq_stack_ptr more robust 2016-02-12 15:53:51 +00:00
suspend.c arm64: Change cpu_resume() to enable mmu early then access sleep_sp by va 2016-04-28 12:05:46 +01:00
sys32.c arm64: fix implementation of mmap2 compat syscall 2015-03-19 10:43:51 +00:00
sys_compat.c arm64: compat: align cacheflush syscall with arch/arm 2014-12-01 13:31:12 +00:00
sys.c arm64: compat: Check for AArch32 state 2016-04-20 12:22:42 +01:00
time.c arm64: ftrace: fix a stack tracer's output under function graph tracer 2015-12-21 17:26:02 +00:00
topology.c arm64: kernel: remove non-legit DT warnings when booting using ACPI 2015-07-27 11:08:41 +01:00
trace-events-emulation.h arm64: Trace emulation of AArch32 legacy instructions 2014-11-20 16:35:02 +00:00
traps.c arm64: trap userspace "dc cvau" cache operation on errata-affected core 2016-07-01 11:46:00 +01:00
vdso.c arm64: apply __ro_after_init to some objects 2016-08-22 12:32:29 +01:00
vmlinux.lds.S arm64: relocatable: suppress R_AARCH64_ABS64 relocations in vmlinux 2016-07-29 10:45:01 +01:00