qemu/target
Pierre Morel 9ef2d19e5f s390x/cpumodel: Set up CPU model for AQIC interception
Let's add support for the AP-Queue interruption facility to the CPU
model.

The S390_FEAT_AP_QUEUE_INTERRUPT_CONTROL, CPU facility indicates
whether the PQAP instruction with the AQIC command is available
to the guest.
This feature will be enabled only if the AP instructions are
available on the linux host and AQIC facility is installed on
the host.

This feature must be turned on from userspace to intercept AP
instructions on the KVM guest. The QEMU command line to turn
this feature on looks something like this:

    qemu-system-s390x ... -cpu xxx,apqi=on ...
or
    ... -cpu host

Right now AP pass-through devices do not support migration,
which means that we do not have to take care of migrating
the interrupt data:
virsh migrate apguest --live qemu+ssh://root@target.lan/system
error: Requested operation is not valid: domain has assigned non-USB host devices

Signed-off-by: Pierre Morel <pmorel@linux.ibm.com>
Reviewed-by: Tony Krowiak <akrowiak@linux.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: Halil Pasic <pasic@linux.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
[rebase to newest qemu and fixup description]
Message-Id: <20190705153249.12525-1-borntraeger@de.ibm.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
2019-07-08 12:57:16 +02:00
..
alpha Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
arm hw/arm: Replace global smp variables with machine smp properties 2019-07-05 17:08:03 -03:00
cris Supply missing header guards 2019-06-12 13:20:21 +02:00
hppa hppa: Delete unused hppa_cpu_list() function 2019-07-05 17:08:03 -03:00
i386 i386: Add Cascadelake-Server-v2 CPU model 2019-07-05 17:12:30 -03:00
lm32 Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
m68k m68k comments break patch submission due to being incorrectly formatted 2019-06-26 17:14:39 +02:00
microblaze Supply missing header guards 2019-06-12 13:20:21 +02:00
mips MIPS queue for July 2nd, 2019 2019-07-03 21:19:03 +01:00
moxie Supply missing header guards 2019-06-12 13:20:21 +02:00
nios2 hmp: Move hmp.h to include/monitor/ 2019-07-02 07:19:45 +02:00
openrisc general: Replace global smp variables with smp machine properties 2019-07-05 17:07:36 -03:00
ppc Monitor patches for 2019-07-02 2019-07-03 00:16:43 +01:00
riscv RISC-V: Clear load reservations on context switch and SC 2019-06-25 22:37:04 -07:00
s390x s390x/cpumodel: Set up CPU model for AQIC interception 2019-07-08 12:57:16 +02:00
sh4 hmp: Move hmp.h to include/monitor/ 2019-07-02 07:19:45 +02:00
sparc hmp: Move hmp.h to include/monitor/ 2019-07-02 07:19:45 +02:00
tilegx Normalize position of header guard 2019-06-12 13:20:20 +02:00
tricore tricore: add QSEED instruction 2019-06-25 15:02:07 +02:00
unicore32 Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
xtensa hmp: Move hmp.h to include/monitor/ 2019-07-02 07:19:45 +02:00