linux/arch
Janosch Frank ffb17c0cce KVM: s390: Fix skey emulation permission check
commit ca76ec9ca8 upstream.

All skey functions call skey_check_enable at their start, which checks
if we are in the PSTATE and injects a privileged operation exception
if we are.

Unfortunately they continue processing afterwards and perform the
operation anyhow as skey_check_enable does not deliver an error if the
exception injection was successful.

Let's move the PSTATE check into the skey functions and exit them on
such an occasion, also we now do not enable skey handling anymore in
such a case.

Signed-off-by: Janosch Frank <frankja@linux.vnet.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Fixes: a7e19ab ("KVM: s390: handle missing storage-key facility")
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2017-12-14 09:28:13 +01:00
..
alpha alpha: uapi: Add support for __SANE_USERSPACE_TYPES__ 2017-09-07 08:35:40 +02:00
arc ARC: Re-enable MMU upon Machine Check exception 2017-09-27 14:39:23 +02:00
arm ARM: OMAP1: DMA: Correct the number of logical channels 2017-12-09 22:01:50 +01:00
arm64 arm64: Implement arch-specific pte_access_permitted() 2017-11-30 08:39:01 +00:00
avr32 Merge branch 'akpm' (patches from Andrew) 2016-10-07 21:38:00 -07:00
blackfin ptrace: Don't allow accessing an undumpable mm 2017-01-06 10:40:13 +01:00
c6x c6x/ptrace: Remove useless PTRACE_SETREGSET implementation 2017-03-31 10:31:46 +02:00
cris cris: Only build flash rescue image if CONFIG_ETRAX_AXISFLASHMAP is selected 2017-01-12 11:39:24 +01:00
frv mm: larger stack guard gap, between vmas 2017-06-24 07:11:18 +02:00
h8300 h8300/ptrace: Fix incorrect register transfer count 2017-03-31 10:31:46 +02:00
hexagon nmi_backtrace: generate one-line reports for idle cpus 2016-10-07 18:46:30 -07:00
ia64 ptrace: Don't allow accessing an undumpable mm 2017-01-06 10:40:13 +01:00
m32r mm: replace access_process_vm() write parameter with gup_flags 2016-10-19 08:31:25 -07:00
m68k m68k: fix ColdFire node shift size calculation 2017-12-09 22:01:48 +01:00
metag metag/uaccess: Check access_ok in strncpy_from_user 2017-05-25 15:44:46 +02:00
microblaze Merge branch 'work.uaccess2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2016-10-11 23:38:39 -07:00
mips MIPS: BCM47XX: Fix LED inversion for WRT54GSv1 2017-11-30 08:39:03 +00:00
mn10300 mn10300: fix build error of missing fpu_save() 2017-06-17 06:41:56 +02:00
nios2 nios2: reserve boot memory for device tree 2017-04-12 12:41:14 +02:00
openrisc openrisc: Add _text symbol to fix ksym build error 2017-08-06 18:59:46 -07:00
parisc parisc: Fix validity check of pointer size argument in new CAS implementation 2017-11-30 08:39:08 +00:00
powerpc powerpc/mm: Fix memory hotplug BUG() on radix 2017-12-09 22:01:52 +01:00
s390 KVM: s390: Fix skey emulation permission check 2017-12-14 09:28:13 +01:00
score Merge branch 'gup_flag-cleanups' 2016-10-19 08:39:47 -07:00
sh serial: sh-sci: Fix register offsets for the IRDA serial port 2017-11-15 15:53:14 +01:00
sparc security/keys: add CONFIG_KEYS_COMPAT to Kconfig 2017-11-18 11:22:24 +01:00
tile mm: larger stack guard gap, between vmas 2017-06-24 07:11:18 +02:00
um um: Fix to call read_initrd after init_bootmem 2017-05-25 15:44:47 +02:00
unicore32 unicore32: use simpler API for random address requests 2016-10-11 15:06:32 -07:00
x86 KVM: x86: fix APIC page invalidation 2017-12-14 09:28:12 +01:00
xtensa xtensa: don't limit csum_partial export by CONFIG_NET 2017-08-16 13:43:16 -07:00
.gitignore arch: Ignore arch/i386 and arch/x86_64 2008-01-19 21:29:39 -08:00
Kconfig This adds a new gcc plugin named "latent_entropy". It is designed to 2016-10-15 10:03:15 -07:00