KVM: s390: return -EFAULT if lowcore is not mapped during irq delivery
authorJens Freimann <jfrei@linux.vnet.ibm.com>
Thu, 17 Apr 2014 08:10:30 +0000 (10:10 +0200)
committerChristian Borntraeger <borntraeger@de.ibm.com>
Mon, 25 Aug 2014 12:35:56 +0000 (14:35 +0200)
commit7939503147f89f0799ddc89afec2aeae57dd7e2c
tree5e314444b3142d0b96cbeb748c815a9c432ca20a
parentd3d692c82e4ed79ae7c85f8825ccfdb7d11819da
KVM: s390: return -EFAULT if lowcore is not mapped during irq delivery

Currently we just kill the userspace process and exit the thread
immediatly without making sure that we don't hold any locks etc.

Improve this by making KVM_RUN return -EFAULT if the lowcore is not
mapped during interrupt delivery. To achieve this we need to pass
the return code of guest memory access routines used in interrupt
delivery all the way back to the KVM_RUN ioctl.

Signed-off-by: Jens Freimann <jfrei@linux.vnet.ibm.com>
Reviewed-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
arch/s390/kvm/interrupt.c
arch/s390/kvm/kvm-s390.c
arch/s390/kvm/kvm-s390.h