linux/arch/arm64/kernel
Dave Martin 20987de3c2 arm64: signal: split frame link record from sigcontext structure
In order to be able to increase the amount of the data currently
written to the __reserved[] array in the signal frame, it is
necessary to overwrite the locations currently occupied by the
{fp,lr} frame link record pushed at the top of the signal stack.

In order for this to work, this patch detaches the frame link
record from struct rt_sigframe and places it separately at the top
of the signal stack.  This will allow subsequent patches to insert
data between it and __reserved[].

This change relies on the non-ABI status of the placement of the
frame record with respect to struct sigframe: this status is
undocumented, but the placement is not declared or described in the
user headers, and known unwinder implementations (libgcc,
libunwind, gdb) appear not to rely on it.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-20 12:42:58 +01:00
..
probes arm64: Call __show_regs directly 2017-05-30 11:07:41 +01:00
vdso arm64: drop non-existing vdso-offsets.h from .gitignore 2017-03-30 19:29:30 +01:00
.gitignore
acpi_numa.c arm64/numa: avoid inconsistent information to be printed 2016-09-09 14:59:08 +01:00
acpi_parking_protocol.c arm64: Use __pa_symbol for kernel symbols 2017-01-12 15:05:39 +00:00
acpi.c efi/bgrt: Enable ACPI BGRT handling on arm64 2017-04-05 12:27:25 +02:00
alternative.c arm64: alternatives: apply boot time fixups via the linear mapping 2017-03-23 13:54:19 +00:00
arm64ksyms.c arm64: switch to RAW_COPY_USER 2017-03-28 18:23:24 -04:00
armv8_deprecated.c arm64: armv8_deprecated: ensure extension of addr 2017-05-09 17:47:05 +01:00
asm-offsets.c arm: kernel: Add SMC structure parameter 2017-02-03 18:46:33 +00:00
cacheinfo.c arm64: cacheinfo: Remove CCSIDR-based cache information probing 2017-03-20 16:16:54 +00:00
cpu_errata.c arm64: cpu_errata: Add capability to advertise Cortex-A73 erratum 858921 2017-04-07 11:22:08 +01:00
cpu_ops.c arm64: apply __ro_after_init to some objects 2016-08-22 12:32:29 +01:00
cpu-reset.h arm64: Use __pa_symbol for kernel symbols 2017-01-12 15:05:39 +00:00
cpu-reset.S arm64: Add back cpu reset routines 2016-06-27 16:31:25 +01:00
cpufeature.c arm64: cpufeature: Fix CPU_OUT_OF_SPEC taint for uniform systems 2017-06-05 11:40:23 +01:00
cpuidle.c arm64: kernel: Update kerneldoc for cpu_suspend() rename 2017-03-10 18:06:24 +00:00
cpuinfo.c arm64: v8.3: Support for weaker release consistency 2017-03-20 16:30:22 +00:00
crash_dump.c arm64: kdump: provide /proc/vmcore file 2017-04-05 18:31:38 +01:00
debug-monitors.c arm64: cpufeature: Make ID reg accessor naming less counterintuitive 2017-04-04 16:55:41 +01:00
efi-entry.S arm64: efi-entry.S: avoid open-coded adr_l 2017-01-17 17:41:14 +00:00
efi-header.S arm64: efi: split Image code and data into separate PE/COFF sections 2017-04-04 17:50:59 +01:00
efi.c arm64: mm: replace 'block_mappings_allowed' with 'page_mappings_only' 2016-11-07 18:15:04 +00:00
entry32.S
entry-fpsimd.S
entry-ftrace.S arm64: include asm/assembler.h in entry-ftrace.S 2017-02-15 11:34:25 +00:00
entry.S arm64: entry: improve data abort handling of tagged pointers 2017-05-09 17:26:59 +01:00
fpsimd.c sched/headers: Prepare for new header dependencies before moving code to <linux/sched/signal.h> 2017-03-02 08:42:29 +01:00
ftrace-mod.S arm64: ftrace: add support for far branches to dynamic ftrace 2017-06-07 11:52:02 +01:00
ftrace.c arm64: ftrace: fix building without CONFIG_MODULES 2017-06-12 14:43:25 +01:00
head.S Merge branch 'arm64/common-sysreg' of git://git.kernel.org/pub/scm/linux/kernel/git/mark/linux into for-next/core 2017-04-04 18:08:47 +01:00
hibernate-asm.S arm64: Introduce raw_{d,i}cache_line_size 2016-09-09 15:03:29 +01:00
hibernate.c arm64: hibernate: preserve kdump image around hibernation 2017-04-05 18:28:50 +01:00
hw_breakpoint.c arm64: hw_breakpoint: fix watchpoint matching for tagged pointers 2017-05-09 17:26:40 +01:00
hyp-stub.S arm64: hyp-stub: Zero x0 on successful stub handling 2017-04-09 07:49:35 -07:00
image.h arm64 updates for 4.7: 2016-05-16 17:17:24 -07:00
insn.c bpf, arm64: implement jiting of BPF_XADD 2017-05-02 15:04:50 -04:00
io.c
irq.c
jump_label.c
kaslr.c arm64: kaslr: Fix up the kernel image alignment 2017-03-22 15:43:11 +00:00
kgdb.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
kuser32.S
machine_kexec.c arm64: kdump: add VMCOREINFO's for user-space tools 2017-04-05 18:29:47 +01:00
Makefile arm64: ftrace: add support for far branches to dynamic ftrace 2017-06-07 11:52:02 +01:00
module-plts.c arm64: module: split core and init PLT sections 2017-04-26 12:31:00 +01:00
module.c arm64: ftrace: add support for far branches to dynamic ftrace 2017-06-07 11:52:02 +01:00
module.lds arm64: module: split core and init PLT sections 2017-04-26 12:31:00 +01:00
paravirt.c
pci.c ARM64/PCI: Set root bus NUMA node on ACPI systems 2017-05-30 11:45:21 +01: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: Ignore exclude_hv when kernel is running in HYP 2017-05-15 18:30:37 +01: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
process.c arm64: Add dump_backtrace() in show_regs 2017-05-30 11:07:42 +01:00
psci.c arm64: Use __pa_symbol for kernel symbols 2017-01-12 15:05:39 +00:00
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
reloc_test_core.c arm64: relocation testing module 2017-04-04 17:03:32 +01:00
reloc_test_syms.S arm64: relocation testing module 2017-04-04 17:03:32 +01:00
relocate_kernel.S arm64: Introduce raw_{d,i}cache_line_size 2016-09-09 15:03:29 +01:00
return_address.c arm64: factor out current_stack_pointer 2016-11-11 18:25:43 +00:00
setup.c arm64: check return value of of_flat_dt_get_machine_name 2017-05-30 11:07:42 +01:00
signal32.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
signal.c arm64: signal: split frame link record from sigcontext structure 2017-06-20 12:42:58 +01:00
sleep.S arm64: move sp_el0 and tpidr_el1 into cpu_suspend_ctx 2016-11-11 18:25:44 +00:00
smccc-call.S firmware: qcom: scm: Fix interrupted SCM calls 2017-02-03 18:46:33 +00:00
smp_spin_table.c arm64: Use __pa_symbol for kernel symbols 2017-01-12 15:05:39 +00:00
smp.c arm64 updates for 4.12: 2017-05-05 12:11:37 -07:00
stacktrace.c arm64: Export save_stack_trace_tsk() 2017-06-15 11:52:35 +01:00
suspend.c arm64: move sp_el0 and tpidr_el1 into cpu_suspend_ctx 2016-11-11 18:25:44 +00:00
sys32.c
sys_compat.c sched/headers: Prepare for the reduction of <linux/sched.h>'s signal API dependency 2017-03-02 08:42:37 +01:00
sys.c arm64: compat: Check for AArch32 state 2016-04-20 12:22:42 +01:00
time.c
topology.c sched/headers: Prepare for new header dependencies before moving code to <linux/sched/topology.h> 2017-03-02 08:42:26 +01:00
trace-events-emulation.h
traps.c arm64: Add dump_backtrace() in show_regs 2017-05-30 11:07:42 +01:00
vdso.c arm64, vdso: Define vdso_{start,end} as array 2017-06-06 17:49:55 +01:00
vmlinux.lds.S arm64: efi: split Image code and data into separate PE/COFF sections 2017-04-04 17:50:59 +01:00