Blame SOURCES/kvm-s390x-cpumodel-default-enable-bpb-and-ppa15-for-z196.patch

357786
From 11637f33d743a928b6e05f4475f3f840715f33c6 Mon Sep 17 00:00:00 2001
357786
From: Cornelia Huck <cohuck@redhat.com>
357786
Date: Tue, 3 Jul 2018 10:55:10 +0200
357786
Subject: [PATCH 56/57] s390x/cpumodel: default enable bpb and ppa15 for z196
357786
 and later
357786
357786
RH-Author: Cornelia Huck <cohuck@redhat.com>
357786
Message-id: <20180703105510.30555-1-cohuck@redhat.com>
357786
Patchwork-id: 81191
357786
O-Subject: [RHEL-7.6 qemu-kvm-ma PATCH] s390x/cpumodel: default enable bpb and ppa15 for z196 and later
357786
Bugzilla: 1595715
357786
RH-Acked-by: Laurent Vivier <lvivier@redhat.com>
357786
RH-Acked-by: Eduardo Habkost <ehabkost@redhat.com>
357786
RH-Acked-by: David Hildenbrand <david@redhat.com>
357786
357786
Most systems and host kernels provide the necessary building blocks for
357786
bpb and ppa15. We can reverse the logic and default enable those
357786
features, while still allowing to disable it via cpu model.
357786
357786
So let us add bpb and ppa15 to z196 and later default CPU model for the
357786
qemu rhel7.6.0 machine. (like -cpu z13).  Older machine types (i.e.
357786
s390-ccw-virtio-rhel7.5.0) will retain the old value and not provide those
357786
bits in the default model.
357786
357786
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
357786
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
357786
---
357786
 hw/s390x/s390-virtio-ccw.c  | 4 ++++
357786
 target/s390x/gen-features.c | 2 ++
357786
 2 files changed, 6 insertions(+)
357786
357786
diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
357786
index 64e2a3b..bf039a1 100644
357786
--- a/hw/s390x/s390-virtio-ccw.c
357786
+++ b/hw/s390x/s390-virtio-ccw.c
357786
@@ -912,6 +912,10 @@ static void ccw_machine_rhel750_instance_options(MachineState *machine)
357786
     /* before 2.12 we emulated the very first z900, and RHEL 7.5 is
357786
        based on 2.10 */
357786
     s390_set_qemu_cpu_model(0x2064, 7, 1, qemu_cpu_feat);
357786
+
357786
+    /* bpb and ppa15 were only in the full model in RHEL 7.5 */
357786
+    s390_cpudef_featoff_greater(11, 1, S390_FEAT_PPA15);
357786
+    s390_cpudef_featoff_greater(11, 1, S390_FEAT_BPB);
357786
 }
357786
 
357786
 static void ccw_machine_rhel750_class_options(MachineClass *mc)
357786
diff --git a/target/s390x/gen-features.c b/target/s390x/gen-features.c
357786
index 0cdbc15..6626b6f 100644
357786
--- a/target/s390x/gen-features.c
357786
+++ b/target/s390x/gen-features.c
357786
@@ -512,6 +512,8 @@ static uint16_t default_GEN11_GA1[] = {
357786
     S390_FEAT_IPTE_RANGE,
357786
     S390_FEAT_ACCESS_EXCEPTION_FS_INDICATION,
357786
     S390_FEAT_GROUP_MSA_EXT_4,
357786
+    S390_FEAT_PPA15,
357786
+    S390_FEAT_BPB,
357786
 };
357786
 
357786
 #define default_GEN11_GA2 EmptyFeat
357786
-- 
357786
1.8.3.1
357786