linux-stable/arch/s390/kvm
Michael Mueller 658b6eda20 KVM: s390: add cpu model support
This patch enables cpu model support in kvm/s390 via the vm attribute
interface.

During KVM initialization, the host properties cpuid, IBC value and the
facility list are stored in the architecture specific cpu model structure.

During vcpu setup, these properties are taken to initialize the related SIE
state. This mechanism allows to adjust the properties from user space and thus
to implement different selectable cpu models.

This patch uses the IBC functionality to block instructions that have not
been implemented at the requested CPU type and GA level compared to the
full host capability.

Userspace has to initialize the cpu model before vcpu creation. A cpu model
change of running vcpus is not possible.

Signed-off-by: Michael Mueller <mimu@linux.vnet.ibm.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Reviewed-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
2015-02-09 12:44:13 +01:00
..
diag.c KVM: s390/cmm: Fix prefix handling for diag 10 balloon 2014-09-10 12:19:42 +02:00
gaccess.c KVM: s390: use facilities and cpu_id per KVM 2015-02-09 12:44:12 +01:00
gaccess.h KVM: s390: Enable DAT support for TPROT handler 2014-05-30 09:39:36 +02:00
guestdbg.c KVM: s390: return -EFAULT if copy_from_user() fails 2014-05-06 14:57:59 +02:00
intercept.c KVM: s390: Take addressing mode into account for MVPG interception 2015-01-23 13:25:38 +01:00
interrupt.c KVM: s390: floating irqs: fix user triggerable endless loop 2015-02-09 12:44:10 +01:00
irq.h KVM: s390: irq routing for adapter interrupts. 2014-03-21 13:43:00 +01:00
Kconfig KVM: Give IRQFD its own separate enabling Kconfig option 2014-08-05 14:26:28 +02:00
kvm-s390.c KVM: s390: add cpu model support 2015-02-09 12:44:13 +01:00
kvm-s390.h KVM: s390: use facilities and cpu_id per KVM 2015-02-09 12:44:12 +01:00
Makefile KVM: s390: hardware support for guest debugging 2014-04-22 13:24:51 +02:00
priv.c KVM: s390: use facilities and cpu_id per KVM 2015-02-09 12:44:12 +01:00
sigp.c KVM: s390: forward most SIGP orders to user space 2015-01-23 13:25:37 +01:00
trace-s390.h KVM: s390: handle stop irqs without action_bits 2015-01-23 13:25:33 +01:00
trace.h KVM: s390: interpretive execution of SIGP EXTERNAL CALL 2014-05-16 14:57:28 +02:00