linux/arch/s390
Julius Niedworok aca411a4b1 KVM: s390: reset KVM_REQ_MMU_RELOAD if mapping the prefix failed
When triggering KVM_RUN without a user memory region being mapped
(KVM_SET_USER_MEMORY_REGION) a validity intercept occurs. This could
happen, if the user memory region was not mapped initially or if it
was unmapped after the vcpu is initialized. The function
kvm_s390_handle_requests checks for the KVM_REQ_MMU_RELOAD bit. The
check function always clears this bit. If gmap_mprotect_notify
returns an error code, the mapping failed, but the KVM_REQ_MMU_RELOAD
was not set anymore. So the next time kvm_s390_handle_requests is
called, the execution would fall trough the check for
KVM_REQ_MMU_RELOAD. The bit needs to be resetted, if
gmap_mprotect_notify returns an error code. Resetting the bit with
kvm_make_request(KVM_REQ_MMU_RELOAD, vcpu) fixes the bug.

Reviewed-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Signed-off-by: Julius Niedworok <jniedwor@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
2016-08-12 09:11:08 +02:00
..
appldata mm: move most file-based accounting to the node 2016-07-28 16:07:41 -07:00
boot Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2016-08-02 16:37:12 -04:00
configs s390: Updated kernel config files 2016-06-15 16:37:07 +02:00
crypto Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2016-07-26 13:40:17 -07:00
hypfs - ARM: GICv3 ITS emulation and various fixes. Removal of the old 2016-08-02 16:11:27 -04:00
include dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
kernel - ARM: GICv3 ITS emulation and various fixes. Removal of the old 2016-08-02 16:11:27 -04:00
kvm KVM: s390: reset KVM_REQ_MMU_RELOAD if mapping the prefix failed 2016-08-12 09:11:08 +02:00
lib s390/lib: use basic blocks for inline assemblies 2016-06-28 09:32:28 +02:00
mm - ARM: GICv3 ITS emulation and various fixes. Removal of the old 2016-08-02 16:11:27 -04:00
net s390/bpf: fix recache skb->data/hlen for skb_vlan_push/pop 2016-05-19 09:14:27 +02:00
numa s390/numa: only set possible nodes within node_possible_map 2016-07-31 05:28:00 -04:00
oprofile s390/oprofile: remove hardware sampler support 2016-06-28 09:32:22 +02:00
pci dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
tools s390/facilities: do not generate DWORDS define anymore 2016-07-31 05:27:59 -04:00
defconfig s390: Updated kernel config files 2016-06-15 16:37:07 +02:00
Kbuild s390/numa: add core infrastructure 2015-08-03 18:40:25 +02:00
Kconfig s390: enable kcov support 2016-06-28 09:32:39 +02:00
Kconfig.debug arch: consolidate CONFIG_STRICT_DEVM in lib/Kconfig.debug 2016-01-09 06:30:49 -08:00
Makefile s390/facilities: add helper tool to generate facility lists 2015-12-18 14:59:20 +01:00