linux/arch/s390
Tony Krowiak 112c24d4dc KVM: s390: CPU model support for AP virtualization
Introduces two new CPU model facilities to support
AP virtualization for KVM guests:

1. AP Query Configuration Information (QCI) facility is installed.

   This is indicated by setting facilities bit 12 for
   the guest. The kernel will not enable this facility
   for the guest if it is not set on the host.

   If this facility is not set for the KVM guest, then only
   APQNs with an APQI less than 16 will be used by a Linux
   guest regardless of the matrix configuration for the virtual
   machine. This is a limitation of the Linux AP bus.

2. AP Facilities Test facility (APFT) is installed.

   This is indicated by setting facilities bit 15 for
   the guest. The kernel will not enable this facility for
   the guest if it is not set on the host.

   If this facility is not set for the KVM guest, then no
   AP devices will be available to the guest regardless of
   the guest's matrix configuration for the virtual
   machine. This is a limitation of the Linux AP bus.

Signed-off-by: Tony Krowiak <akrowiak@linux.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: Halil Pasic <pasic@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Tested-by: Michael Mueller <mimu@linux.ibm.com>
Tested-by: Farhan Ali <alifm@linux.ibm.com>
Acked-by: Cornelia Huck <cohuck@redhat.com>
Message-Id: <20180925231641.4954-26-akrowiak@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
2018-09-28 15:50:11 +02:00
..
appldata s390/appldata: reuse generic proc handler functions 2018-07-06 08:48:08 +02:00
boot s390/decompressor: avoid packing *.o.chkbss files into startup.a 2018-07-02 12:32:22 +02:00
configs s390: update defconfigs 2018-04-27 06:51:31 +02:00
crypto s390/crypto: Fix return code checking in cbc_paes_crypt() 2018-09-04 10:58:17 +02:00
hypfs s390/hypfs: Replace PTR_RET with PTR_ERR_OR_ZERO 2018-07-19 16:37:36 +02:00
include KVM: s390: device attrs to enable/disable AP interpretation 2018-09-28 15:50:11 +02:00
kernel Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2018-08-24 09:31:34 -07:00
kvm KVM: s390: device attrs to enable/disable AP interpretation 2018-09-28 15:50:11 +02:00
lib s390/lib: use expoline for all bcr instructions 2018-08-07 13:38:13 +02:00
mm mm: convert return type of handle_mm_fault() caller to vm_fault_t 2018-08-17 16:20:28 -07:00
net Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2018-08-13 19:07:17 -07:00
numa s390/numa: move initial setup of node_to_cpumask_map 2018-08-01 07:48:33 +02:00
oprofile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pci s390/pci: remove fmb address from debug output 2018-08-16 14:49:13 +02:00
purgatory Kbuild updates for v4.19 2018-08-15 12:09:03 -07:00
scripts s390/build: add *.o.chkbss files to targets list 2018-07-02 12:32:23 +02:00
tools KVM: s390: CPU model support for AP virtualization 2018-09-28 15:50:11 +02:00
defconfig s390: update defconfig 2018-04-16 10:29:34 +02:00
Kbuild s390/kexec_file: Add purgatory 2018-04-16 09:10:22 +02:00
Kconfig s390: vfio-ap: base implementation of VFIO AP device driver 2018-09-26 20:45:51 +02:00
Kconfig.debug Kconfig: consolidate the "Kernel hacking" menu 2018-08-02 08:06:48 +09:00
Makefile kbuild: rename LDFLAGS to KBUILD_LDFLAGS 2018-08-24 08:22:08 +09:00