linux-uconsole/arch/arm/kernel
Will Deacon e358073331 ARM: 7308/1: vfp: flush thread hwstate before copying ptrace registers
commit 8130b9d7b9 upstream.

If we are context switched whilst copying into a thread's
vfp_hard_struct then the partial copy may be corrupted by the VFP
context switching code (see "ARM: vfp: flush thread hwstate before
restoring context from sigframe").

This patch updates the ptrace VFP set code so that the thread state is
flushed before the copy, therefore disabling VFP and preventing
corruption from occurring.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-02-13 11:06:05 -08:00
..
.gitignore
armksyms.c Merge branch 'p2v' into devel 2011-03-16 23:35:27 +00:00
arthur.c
asm-offsets.c ARM: pm: add generic CPU suspend/resume support 2011-02-22 17:11:23 +00:00
atags.c
atags.h
bios32.c arm: bios32: Remove non exisiting machine code 2011-03-29 14:47:50 +02:00
calls.S Merge branch 'setns' 2011-05-28 10:51:01 -07:00
compat.c
compat.h
crash_dump.c crash_dump: export is_kdump_kernel to modules, consolidate elfcorehdr_addr, setup_elfcorehdr and saved_max_pfn 2011-03-23 19:47:19 -07:00
crunch-bits.S
crunch.c
debug.S ARM: 6826/1: Merge v6 and v7 DEBUG_LL DCC support 2011-03-28 19:01:43 +01:00
devtree.c ARM: 6953/1: DT: don't try to access physical address zero 2011-06-09 10:15:06 +01:00
dma-isa.c
dma.c
early_printk.c
ecard.c arm: Fold irq_set_chip/irq_set_handler 2011-03-29 14:47:58 +02:00
ecard.h
elf.c ARM: 6878/1: fix personality flag propagation across an exec 2011-04-14 09:15:24 +01:00
entry-armv.S ARM: 6952/1: fix lockdep warning of "unannotated irqs-off" 2011-06-06 10:56:22 +01:00
entry-common.S ARM: 6952/1: fix lockdep warning of "unannotated irqs-off" 2011-06-06 10:56:22 +01:00
entry-header.S ARM: v6k: select clear exclusive code seqences according to V6 variants 2011-02-02 21:23:28 +00:00
etm.c ARM: 6838/1: etm: fix section mismatch warning 2011-03-28 19:01:17 +01:00
fiq.c ARM: 6938/1: fiq: Refactor {get,set}_fiq_regs() for Thumb-2 2011-05-26 10:31:06 +01:00
fiqasm.S ARM: 6938/1: fiq: Refactor {get,set}_fiq_regs() for Thumb-2 2011-05-26 10:31:06 +01:00
ftrace.c ARM: ftrace: graph tracer + dynamic ftrace 2010-11-19 21:43:27 +05:30
head-common.S arm/dt: Make __vet_atags also accept a dtb image 2011-05-11 15:12:32 +02:00
head-nommu.S ARM: Defer lookup of machine_type to setup.c 2011-02-15 16:36:44 +00:00
head.S ARM: 7150/1: Allow kernel unaligned accesses on ARMv6+ processors 2011-11-26 09:09:53 -08:00
hw_breakpoint.c ARM: 6864/1: hw_breakpoint: clear DBGVCR out of reset 2011-04-10 21:13:35 +01:00
init_task.c
io.c
irq.c arm: Use generic show_interrupts() 2011-03-29 14:47:57 +02:00
isa.c
iwmmxt.S ARM: pxa: add iwmmx support for PJ4 2010-12-20 23:07:36 +08:00
kgdb.c kgdb,arm: fix register dump 2010-10-29 13:14:40 -05:00
kprobes-decode.c ARM: kprobes: Tidy-up kprobes-decode.c 2011-04-28 23:41:01 -04:00
kprobes.c ARM: kprobes: Fix probing of conditionally executed instructions 2011-04-28 23:40:54 -04:00
leds.c ARM: Use struct syscore_ops instead of sysdevs for PM in common code 2011-04-24 19:16:08 +02:00
machine_kexec.c [ARM] add machine-specific hook to machine_kexec 2011-03-03 16:26:55 -05:00
Makefile Merge branches 'devel', 'devel-stable' and 'fixes' into for-linus 2011-05-27 22:59:57 +01:00
module.c ARM: 6963/1: Thumb-2: Relax relocation requirements for non-function symbols 2011-06-17 11:25:04 +01:00
perf_event.c ARM: 6989/1: perf: do not start the PMU when no events are present 2011-07-05 12:37:23 +01:00
perf_event_v6.c ARM: 6835/1: perf: ensure overflows aren't missed due to IRQ latency 2011-03-26 10:06:09 +00:00
perf_event_v7.c ARM: 7117/1: perf: fix HW_CACHE_* events on Cortex-A9 2011-10-25 07:10:13 +02:00
perf_event_xscale.c ARM: 6835/1: perf: ensure overflows aren't missed due to IRQ latency 2011-03-26 10:06:09 +00:00
pj4-cp0.c ARM: pxa: add iwmmx support for PJ4 2010-12-20 23:07:36 +08:00
pmu.c ARM: 6742/1: pmu: avoid setting IRQ affinity on UP systems 2011-02-19 11:24:05 +00:00
process.c ARM: 7161/1: errata: no automatic store buffer drain 2011-12-09 08:52:25 -08:00
ptrace.c ARM: 7308/1: vfp: flush thread hwstate before copying ptrace registers 2012-02-13 11:06:05 -08:00
relocate_kernel.S ARM: 6497/1: kexec: Correct data alignment for CONFIG_THUMB2_KERNEL 2010-11-30 13:44:23 +00:00
return_address.c ARM: fix some sparse errors in generic ARM code 2011-02-23 17:24:12 +00:00
sched_clock.c ARM: sched_clock: make minsec argument to clocks_calc_mult_shift() zero 2011-01-11 16:44:02 +00:00
setup.c ARM: move memory layout sanity checking before meminfo initialization 2011-07-05 20:27:16 +01:00
signal.c ARM: 7306/1: vfp: flush thread hwstate before restoring context from sigframe 2012-02-13 11:06:04 -08:00
signal.h
sleep.S ARM: 6825/1: kernel/sleep.S: fix Thumb2 compilation issues 2011-03-26 10:06:08 +00:00
smp.c ARM: SMP: wait for CPU to be marked active 2011-06-21 11:09:05 +01:00
smp_scu.c ARM: 7091/1: errata: D-cache line maintenance operation by MVA may not succeed 2011-10-03 11:41:06 -07:00
smp_tlb.c ARM: SMP: split out software TLB maintainence broadcasting 2010-12-20 15:09:17 +00:00
smp_twd.c ARM: 6994/1: smp_twd: Fix typo in 'twd_timer_rate' printing 2011-07-07 15:00:12 +01:00
stacktrace.c ARM: fix /proc/$PID/stack on SMP 2011-01-15 09:27:04 +00:00
swp_emulate.c Fix common misspellings 2011-03-31 11:26:23 -03:00
sys_arm.c
sys_oabi-compat.c ARM: 6891/1: prevent heap corruption in OABI semtimedop 2011-04-29 15:53:14 +01:00
tcm.c ARM: P2V: separate PHYS_OFFSET from platform definitions 2011-02-17 23:26:55 +00:00
tcm.h
thumbee.c
time.c ARM: Use struct syscore_ops instead of sysdevs for PM in common code 2011-04-24 19:16:08 +02:00
traps.c ARM: extend Code: line by one 16-bit quantity for Thumb instructions 2011-06-09 23:55:45 +01:00
unwind.c ARM: 6468/1: backtrace: fix calculation of thread stack base 2010-11-07 16:12:37 +00:00
vmlinux.lds.S percpu: Always align percpu output section to PAGE_SIZE 2011-03-24 18:50:09 +01:00
xscale-cp0.c