linux/arch/mips/kernel
Paul Burton 16f77de82f Revert "MIPS: Save/restore MSA context around signals"
This reverts commit eec43a224c "MIPS: Save/restore MSA context around
signals" and the MSA parts of ca750649e0 "MIPS: kernel: signal:
Prevent save/restore FPU context in user memory" (the restore path of
which appears incorrect anyway...).

The reverted patch took care not to break compatibility with userland
users of struct sigcontext, but inadvertantly changed the offset of the
uc_sigmask field of struct ucontext. Thus Linux v3.15 breaks the
userland ABI. The MSA context will need to be saved via some other
opt-in mechanism, but for now revert the change to reduce the fallout.

This will have minimal impact upon use of MSA since the only supported
CPU which includes it (the P5600) is 32-bit and therefore requires that
the experimental CONFIG_MIPS_O32_FP64_SUPPORT Kconfig option be selected
before the kernel will set FR=1 for a task, a requirement for MSA use.
Thus the users of MSA are limited to known small groups of people & this
patch won't be breaking any previously working MSA-using userland
outside of experimental settings.

[ralf@linux-mips.org: Fixed rejects.]

Cc: stable@vger.kernel.org
Reported-by: Joseph S. Myers <joseph@codesourcery.com>
Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Cc: linux-mips@linux-mips.org
Cc: stable@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/7107/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2014-06-26 10:48:18 +01:00
..
.gitignore
8250-platform.c
asm-offsets.c Revert "MIPS: Save/restore MSA context around signals" 2014-06-26 10:48:18 +01:00
binfmt_elfn32.c
binfmt_elfo32.c MIPS: Support for 64-bit FP with O32 binaries 2014-01-13 23:40:56 +01:00
bmips_vec.S MIPS: Fix gigaton of warning building with microMIPS. 2014-03-31 18:17:12 +02:00
branch.c Merge branch '3.15-fixes' into mips-for-linux-next 2014-06-04 22:53:02 +02:00
cevt-bcm1480.c
cevt-ds1287.c
cevt-gic.c MIPS: allow GIC clockevent device config from other CPUs 2014-05-02 16:39:11 +01:00
cevt-gt641xx.c
cevt-r4k.c Merge branch 'wip-mips-pm' of https://github.com/paulburton/linux into mips-for-linux-next 2014-05-29 15:08:23 +02:00
cevt-sb1250.c
cevt-txx9.c
cps-vec.S MIPS: smp-cps: duplicate core0 CCA on secondary cores 2014-05-28 16:20:33 +01:00
cpu-bugs64.c
cpu-probe.c MIPS: Add function get_ebase_cpunum 2014-05-30 21:01:11 +02:00
crash.c mips: delete non-required instances of include <linux/init.h> 2014-01-24 22:39:56 +01:00
crash_dump.c
csrc-bcm1480.c
csrc-gic.c
csrc-ioasic.c
csrc-r4k.c
csrc-sb1250.c
early_printk.c
early_printk_8250.c
entry.S MIPS: MT: Remove SMTC support 2014-05-24 00:07:01 +02:00
ftrace.c Most of the changes were largely clean ups, and some documentation. 2014-04-03 10:26:31 -07:00
genex.S MIPS: MT: Remove SMTC support 2014-05-24 00:07:01 +02:00
gpio_txx9.c
head.S MIPS: MT: Remove SMTC support 2014-05-24 00:07:01 +02:00
i8253.c
i8259.c MIPS: MT: Remove SMTC support 2014-05-24 00:07:01 +02:00
idle.c Merge branch 'wip-mips-pm' of https://github.com/paulburton/linux into mips-for-linux-next 2014-05-29 15:08:23 +02:00
irq-gic.c MIPS: allow GIC clockevent device config from other CPUs 2014-05-02 16:39:11 +01:00
irq-gt641xx.c
irq-msc01.c MIPS: MT: Remove SMTC support 2014-05-24 00:07:01 +02:00
irq-rm7000.c
irq.c Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2014-06-09 18:10:34 -07:00
irq_cpu.c
irq_txx9.c
jump_label.c
kgdb.c MIPS: kernel: {ftrace,kgdb}: Set correct address limit for cache flushes 2014-03-26 23:09:18 +01:00
kprobes.c
linux32.c
machine_kexec.c
Makefile MIPS: OCTEON: Enable use of FPU 2014-05-30 21:01:09 +02:00
mcount.S
mips-cm.c MIPS: Add generic CM probe & access code 2014-03-06 21:25:22 +01:00
mips-cpc.c MIPS: smp-cps: rework core/VPE initialisation 2014-05-28 16:20:28 +01:00
mips-mt-fpaff.c MIPS: MT: Remove SMTC support 2014-05-24 00:07:01 +02:00
mips-mt.c MIPS: MT: Remove SMTC support 2014-05-24 00:07:01 +02:00
mips_ksyms.c MIPS: checksum: Split the 'copy_user' symbol 2014-03-26 23:09:17 +01:00
mips_machine.c
module-rela.c
module.c
octeon_switch.S MIPS: OCTEON: Enable use of FPU 2014-05-30 21:01:09 +02:00
perf_event.c
perf_event_mipsxx.c MIPS: perf: Add interAptiv support 2014-03-31 18:17:12 +02:00
pm-cps.c MIPS: pm-cps: convert smp_mb__*() 2014-06-16 12:47:47 +01:00
pm.c MIPS: PM: Implement PM helper macros 2014-05-02 16:39:10 +01:00
proc.c Revert "MIPS: MT: proc: Add support for printing VPE and TC ids" 2014-05-13 00:29:33 +02:00
process.c MIPS: MT: Remove SMTC support 2014-05-24 00:07:01 +02:00
prom.c mips: convert fdt pointers to opaque pointers 2014-04-30 00:59:13 -05:00
ptrace.c MIPS: ptrace: Avoid smp_processor_id() in preemptible code 2014-05-28 10:54:41 +02:00
ptrace32.c MIPS: Simplify PTRACE_PEEKUSR for FPC_EIR 2014-03-31 18:17:12 +02:00
r4k_fpu.S Revert "MIPS: Save/restore MSA context around signals" 2014-06-26 10:48:18 +01:00
r4k_switch.S MIPS: OCTEON: Enable use of FPU 2014-05-30 21:01:09 +02:00
r2300_fpu.S
r2300_switch.S
r6000_fpu.S
relocate_kernel.S
reset.c
rtlx-cmp.c MIPS: APRP: Unregister rtlx interrupt hook at module exit 2014-03-06 20:55:07 +01:00
rtlx-mt.c MIPS: MT: Remove SMTC support 2014-05-24 00:07:01 +02:00
rtlx.c MIPS: APRP: Code formatting clean-ups. 2014-01-22 20:19:02 +01:00
scall32-o32.S MIPS: Wire up renameat2 syscall. 2014-05-13 17:57:33 +02:00
scall64-64.S MIPS: Wire up renameat2 syscall. 2014-05-13 17:57:33 +02:00
scall64-n32.S MIPS: Wire up renameat2 syscall. 2014-05-13 17:57:33 +02:00
scall64-o32.S MIPS: Wire up renameat2 syscall. 2014-05-13 17:57:33 +02:00
segment.c MIPS: Add debugfs file to print the segmentation control registers 2014-01-22 20:19:00 +01:00
setup.c
signal-common.h
signal.c Revert "MIPS: Save/restore MSA context around signals" 2014-06-26 10:48:18 +01:00
signal32.c Revert "MIPS: Save/restore MSA context around signals" 2014-06-26 10:48:18 +01:00
signal_n32.c
smp-bmips.c MIPS: SMP: Remove plat_smp_ops cpus_done method. 2014-05-27 11:06:42 +02:00
smp-cmp.c MIPS: SMP: Remove plat_smp_ops cpus_done method. 2014-05-27 11:06:42 +02:00
smp-cps.c MIPS: smp-cps: Convert smp_mb__after_atomic_dec() 2014-06-16 12:47:47 +01:00
smp-gic.c cpuidle: cpuidle-cps: add MIPS CPS cpuidle driver 2014-05-28 16:20:36 +01:00
smp-mt.c MIPS: SMP: Remove plat_smp_ops cpus_done method. 2014-05-27 11:06:42 +02:00
smp-up.c MIPS: SMP: Remove plat_smp_ops cpus_done method. 2014-05-27 11:06:42 +02:00
smp.c Merge branch 'wip-mips-pm' of https://github.com/paulburton/linux into mips-for-linux-next 2014-05-29 15:08:23 +02:00
spinlock_test.c
spram.c MIPS: Use current_cpu_type() instead of c->cputype 2014-03-31 18:17:12 +02:00
stacktrace.c
sync-r4k.c MIPS: MT: Remove SMTC support 2014-05-24 00:07:01 +02:00
syscall.c MIPS: Fix gigaton of warning building with microMIPS. 2014-03-31 18:17:12 +02:00
time.c MIPS: MT: Remove SMTC support 2014-05-24 00:07:01 +02:00
topology.c
traps.c Merge branch '3.15-fixes' into mips-for-linux-next 2014-06-04 22:53:02 +02:00
unaligned.c MIPS: kernel: unaligned: Handle unaligned accesses for EVA 2014-03-26 23:09:16 +01:00
vdso.c
vmlinux.lds.S
vpe-cmp.c MIPS: APRP: Add VPE loader support for CMP platforms. 2014-01-22 20:19:02 +01:00
vpe-mt.c MIPS: MT: Remove SMTC support 2014-05-24 00:07:01 +02:00
vpe.c Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2014-01-30 17:20:32 -08:00
watch.c