linux/arch/s390
Heiko Carstens 5ef2d5231d s390/ptrace: fix guarded storage regset handling
If the guarded storage regset for current is supposed to be changed,
the regset from user space is copied directly into the guarded storage
control block.

If then the process gets scheduled away while the control block is
being copied and before the new control block has been loaded, the
result is random: the process can be scheduled away due to a page
fault or preemption. If that happens the already copied parts will be
overwritten by save_gs_cb(), called from switch_to().

Avoid this by copying the data to a temporary buffer on the stack and
do the actual update with preemption disabled.

Fixes: f5bbd72198 ("s390/ptrace: guarded storage regset for the current task")
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2017-09-28 07:29:40 +02:00
..
appldata sched/headers: Move task statistics APIs from <linux/sched.h> to <linux/sched/stat.h> 2017-03-03 01:43:43 +01:00
boot s390/decompressor: fix initrd corruption caused by bss clear 2017-03-22 08:21:20 +01:00
configs s390: update defconfig 2017-06-08 15:53:48 +02:00
crypto s390/crypto: fix aes/paes Kconfig dependeny 2017-06-12 16:25:58 +02:00
hypfs s390: hypfs: make inode explicitly non-modular 2016-10-31 17:55:40 +01:00
include s390/runtime instrumentation: simplify task exit handling 2017-09-28 07:29:39 +02:00
kernel s390/ptrace: fix guarded storage regset handling 2017-09-28 07:29:40 +02:00
kvm First batch of KVM changes for 4.14 2017-09-08 15:18:36 -07:00
lib s390/uaccess: avoid mvcos jump label 2017-08-29 16:29:10 +02:00
mm s390/mm: fix write access check in gup_huge_pmd() 2017-09-19 08:36:20 +02:00
net bpf, s390x: implement jiting of BPF_J{LT, LE, SLT, SLE} 2017-08-09 16:53:57 -07:00
numa s390/numa: pin all possible cpus to nodes early 2016-12-07 07:23:33 +01:00
oprofile s390/dumpstack: restore reliable indicator for call traces 2016-10-17 14:44:30 +02:00
pci IOMMU Updates for Linux v4.14 2017-09-09 15:03:24 -07:00
tools First batch of KVM changes for 4.14 2017-09-08 15:18:36 -07:00
defconfig s390: update defconfig 2017-06-08 15:53:48 +02:00
Kbuild s390/crypto: Provide s390 specific arch random functionality. 2017-04-26 13:41:35 +02:00
Kconfig s390: add support for IBM z14 machines 2017-07-26 08:25:15 +02:00
Kconfig.debug Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2017-02-22 10:20:04 -08:00
Makefile s390: add support for IBM z14 machines 2017-07-26 08:25:15 +02:00