|
|
ae23c9 |
From 9269bf16c4ca06496840473ec842dfcbc2d9020f Mon Sep 17 00:00:00 2001
|
|
|
ae23c9 |
From: Cornelia Huck <cohuck@redhat.com>
|
|
|
ae23c9 |
Date: Tue, 7 Aug 2018 09:05:54 +0000
|
|
|
ae23c9 |
Subject: [PATCH 19/21] s390x/cpumodel: default enable bpb and ppa15 for z196
|
|
|
ae23c9 |
and later
|
|
|
ae23c9 |
|
|
|
ae23c9 |
RH-Author: Cornelia Huck <cohuck@redhat.com>
|
|
|
ae23c9 |
Message-id: <20180807100554.29643-3-cohuck@redhat.com>
|
|
|
ae23c9 |
Patchwork-id: 81660
|
|
|
ae23c9 |
O-Subject: [qemu-kvm RHEL8/virt212 PATCH 2/2] s390x/cpumodel: default enable bpb and ppa15 for z196 and later
|
|
|
ae23c9 |
Bugzilla: 1595718
|
|
|
ae23c9 |
RH-Acked-by: David Hildenbrand <david@redhat.com>
|
|
|
ae23c9 |
RH-Acked-by: Thomas Huth <thuth@redhat.com>
|
|
|
ae23c9 |
RH-Acked-by: Jens Freimann <jfreiman@redhat.com>
|
|
|
ae23c9 |
|
|
|
ae23c9 |
Upstream: downstream version of 8727315111 ("s390x/cpumodel: default
|
|
|
ae23c9 |
enable bpb and ppa15 for z196 and later"); downstream does
|
|
|
ae23c9 |
not have the upstream machine types, instead we need to
|
|
|
ae23c9 |
turn off the bits for the RHEL 7.5 machine
|
|
|
ae23c9 |
|
|
|
ae23c9 |
Most systems and host kernels provide the necessary building blocks for
|
|
|
ae23c9 |
bpb and ppa15. We can reverse the logic and default enable those
|
|
|
ae23c9 |
features, while still allowing to disable it via cpu model.
|
|
|
ae23c9 |
|
|
|
ae23c9 |
So let us add bpb and ppa15 to z196 and later default CPU model for the
|
|
|
ae23c9 |
qemu rhel7.6.0 machine. (like -cpu z13). Older machine types (i.e.
|
|
|
ae23c9 |
s390-ccw-virtio-rhel7.5.0) will retain the old value and not provide those
|
|
|
ae23c9 |
bits in the default model.
|
|
|
ae23c9 |
|
|
|
ae23c9 |
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
|
|
|
ae23c9 |
---
|
|
|
ae23c9 |
hw/s390x/s390-virtio-ccw.c | 4 ++++
|
|
|
ae23c9 |
target/s390x/gen-features.c | 2 ++
|
|
|
ae23c9 |
2 files changed, 6 insertions(+)
|
|
|
ae23c9 |
|
|
|
ae23c9 |
diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
|
|
|
ae23c9 |
index 64e2a3b..bf039a1 100644
|
|
|
ae23c9 |
--- a/hw/s390x/s390-virtio-ccw.c
|
|
|
ae23c9 |
+++ b/hw/s390x/s390-virtio-ccw.c
|
|
|
ae23c9 |
@@ -912,6 +912,10 @@ static void ccw_machine_rhel750_instance_options(MachineState *machine)
|
|
|
ae23c9 |
/* before 2.12 we emulated the very first z900, and RHEL 7.5 is
|
|
|
ae23c9 |
based on 2.10 */
|
|
|
ae23c9 |
s390_set_qemu_cpu_model(0x2064, 7, 1, qemu_cpu_feat);
|
|
|
ae23c9 |
+
|
|
|
ae23c9 |
+ /* bpb and ppa15 were only in the full model in RHEL 7.5 */
|
|
|
ae23c9 |
+ s390_cpudef_featoff_greater(11, 1, S390_FEAT_PPA15);
|
|
|
ae23c9 |
+ s390_cpudef_featoff_greater(11, 1, S390_FEAT_BPB);
|
|
|
ae23c9 |
}
|
|
|
ae23c9 |
|
|
|
ae23c9 |
static void ccw_machine_rhel750_class_options(MachineClass *mc)
|
|
|
ae23c9 |
diff --git a/target/s390x/gen-features.c b/target/s390x/gen-features.c
|
|
|
ae23c9 |
index 0cdbc15..6626b6f 100644
|
|
|
ae23c9 |
--- a/target/s390x/gen-features.c
|
|
|
ae23c9 |
+++ b/target/s390x/gen-features.c
|
|
|
ae23c9 |
@@ -512,6 +512,8 @@ static uint16_t default_GEN11_GA1[] = {
|
|
|
ae23c9 |
S390_FEAT_IPTE_RANGE,
|
|
|
ae23c9 |
S390_FEAT_ACCESS_EXCEPTION_FS_INDICATION,
|
|
|
ae23c9 |
S390_FEAT_GROUP_MSA_EXT_4,
|
|
|
ae23c9 |
+ S390_FEAT_PPA15,
|
|
|
ae23c9 |
+ S390_FEAT_BPB,
|
|
|
ae23c9 |
};
|
|
|
ae23c9 |
|
|
|
ae23c9 |
#define default_GEN11_GA2 EmptyFeat
|
|
|
ae23c9 |
--
|
|
|
ae23c9 |
1.8.3.1
|
|
|
ae23c9 |
|