linux/arch/s390
Martin Schwidefsky 8955783143 s390: fix test_fp_ctl inline assembly contraints
commit bcf4dd5f9e upstream.

The test_fp_ctl function is used to test if a given value is a valid
floating-point control. The inline assembly in test_fp_ctl uses an
incorrect constraint for the 'orig_fpc' variable. If the compiler
chooses the same register for 'fpc' and 'orig_fpc' the test_fp_ctl()
function always returns true. This allows user space to trigger
kernel oopses with invalid floating-point control values on the
signal stack.

This problem has been introduced with git commit 4725c86055
"s390: fix save and restore of the floating-point-control register"

Reviewed-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
[bwh: Backported to 3.16: adjust filename]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
History 2016-08-22 22:38:22 +01:00
..
appldata s390/appldata: add slab.h for kzalloc/kfree 2014-05-20 08:58:51 +02:00
boot s390/boot/decompression: disable floating point in decompressor 2015-10-30 13:59:27 +00:00
configs s390: update default configuration 2014-06-11 10:13:30 +02:00
crypto crypto: s390/ghash - Fix incorrect ghash icv buffer handling. 2015-06-02 12:08:17 +01:00
hypfs sysfs: Create mountpoints with sysfs_create_mount_point 2015-08-20 18:24:03 +01:00
include s390: fix test_fp_ctl inline assembly contraints 2016-08-22 22:38:22 +01:00
kernel s390/dis: Fix handling of format specifiers 2016-01-25 10:43:56 +00:00
kvm KVM: s390: SCA must not cross page boundaries 2015-12-13 17:48:58 +00:00
lib s390/spinlock: avoid yield to non existent cpu 2016-06-15 21:29:24 +01:00
math-emu s390: fix save and restore of the floating-point-control register 2013-10-24 17:17:11 +02:00
mm s390/vmem: fix identity mapping 2016-08-22 22:37:57 +01:00
net net: filter: get rid of BPF_S_* enum 2014-06-01 22:16:58 -07:00
oprofile s390/oprofile: make return of 0 explicit 2014-05-27 10:26:00 +02:00
pci s390/pci: enforce fmb page boundary rule 2016-05-01 00:05:58 +02:00
defconfig s390: update default configuration 2014-06-11 10:13:30 +02:00
Kbuild s390/pci: base support 2012-11-30 15:40:45 +01:00
Kconfig s390/locking: Reenable optimistic spinning 2014-09-17 09:21:51 -07:00
Kconfig.debug Kconfig: consolidate CONFIG_DEBUG_STRICT_USER_COPY_CHECKS 2013-04-30 17:04:09 -07:00
Makefile s390: allow to set gcc -mtune flag 2013-10-31 09:54:01 +01:00