[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [qemu-s390x] [PATCH v1] s390x/cpumodel: make qemu cpu model play wit
From: |
Christian Borntraeger |
Subject: |
Re: [qemu-s390x] [PATCH v1] s390x/cpumodel: make qemu cpu model play with "none" machine |
Date: |
Wed, 13 Dec 2017 14:34:15 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 |
On 12/13/2017 02:24 PM, David Hildenbrand wrote:
> Make sure "-cpu qemu" works with "-M none".
>
> Signed-off-by: David Hildenbrand <address@hidden>
> ---
>
> Conny, if this is okay, can you squash with the original patch?
>
> hw/s390x/s390-virtio-ccw.c | 4 ----
> target/s390x/cpu_models.c | 7 +++++--
> target/s390x/gen-features.c | 4 ++--
> 3 files changed, 7 insertions(+), 8 deletions(-)
>
> diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
> index c1f96418fa..466e45343c 100644
> --- a/hw/s390x/s390-virtio-ccw.c
> +++ b/hw/s390x/s390-virtio-ccw.c
> @@ -725,10 +725,6 @@ bool css_migration_enabled(void)
>
> static void ccw_machine_2_12_instance_options(MachineState *machine)
> {
> - static const S390FeatInit qemu_cpu_feat = { S390_FEAT_LIST_QEMU_V2_12 };
> -
> - /* with 2.12 we emulated a stripped down zEC12 (GA 2) */
> - s390_set_qemu_cpu_model(0x2827, 12, 2, qemu_cpu_feat);
> }
So what happens now when you specify a 2.10 machine?
>
> static void ccw_machine_2_12_class_options(MachineClass *mc)
> diff --git a/target/s390x/cpu_models.c b/target/s390x/cpu_models.c
> index 7404ef52c6..212a5f0697 100644
> --- a/target/s390x/cpu_models.c
> +++ b/target/s390x/cpu_models.c
> @@ -1122,8 +1122,6 @@ static void s390_qemu_cpu_model_initfn(Object *obj)
> S390CPU *cpu = S390_CPU(obj);
>
> cpu->model = g_malloc0(sizeof(*cpu->model));
> - /* has to be initialized by now via s390_set_qemu_cpu_model() */
> - g_assert(s390_qemu_cpu_model.def);
> /* copy the CPU model so we can modify it */
> memcpy(cpu->model, &s390_qemu_cpu_model, sizeof(*cpu->model));
> }
> @@ -1266,6 +1264,7 @@ static void init_ignored_base_feat(void)
>
> static void register_types(void)
> {
> + static const S390FeatInit qemu_latest_init = {
> S390_FEAT_LIST_QEMU_LATEST };
> int i;
>
> init_ignored_base_feat();
> @@ -1281,6 +1280,10 @@ static void register_types(void)
> s390_cpu_defs[i].full_feat);
> }
>
> + /* initialize the qemu model with latest definition */
> + s390_set_qemu_cpu_model(QEMU_MAX_CPU_TYPE, QEMU_MAX_CPU_GEN,
> + QEMU_MAX_CPU_EC_GA, qemu_latest_init);
> +
> for (i = 0; i < ARRAY_SIZE(s390_cpu_defs); i++) {
> char *base_name = s390_base_cpu_type_name(s390_cpu_defs[i].name);
> TypeInfo ti_base = {
> diff --git a/target/s390x/gen-features.c b/target/s390x/gen-features.c
> index 983f2dcd52..deace660e1 100644
> --- a/target/s390x/gen-features.c
> +++ b/target/s390x/gen-features.c
> @@ -544,7 +544,7 @@ static uint16_t qemu_V2_11[] = {
> S390_FEAT_ZARCH,
> };
>
> -static uint16_t qemu_V2_12[] = {
> +static uint16_t qemu_LATEST[] = {
> S390_FEAT_DAT_ENH,
> S390_FEAT_IDTE_SEGMENT,
> S390_FEAT_STFLE,
> @@ -685,7 +685,7 @@ static FeatGroupDefSpec FeatGroupDef[] = {
> *******************************/
> static FeatGroupDefSpec QemuFeatDef[] = {
> QEMU_FEAT_INITIALIZER(V2_11),
> - QEMU_FEAT_INITIALIZER(V2_12),
> + QEMU_FEAT_INITIALIZER(LATEST),
> QEMU_FEAT_INITIALIZER(MAX),
> };
>
- [qemu-s390x] [PATCH v3 for-2.12 12/14] s390x/tcg: implement extract-CPU-time facility, (continued)
- [qemu-s390x] [PATCH v3 for-2.12 12/14] s390x/tcg: implement extract-CPU-time facility, David Hildenbrand, 2017/12/08
- [qemu-s390x] [PATCH v3 for-2.12 11/14] s390x/tcg: Implement SIGNAL ADAPTER instruction, David Hildenbrand, 2017/12/08
- [qemu-s390x] [PATCH v3 for-2.12 10/14] s390x/tcg: Implement STORE CHANNEL PATH STATUS, David Hildenbrand, 2017/12/08
- [qemu-s390x] [PATCH v3 for-2.12 14/14] s390x: change the QEMU cpu model to a stripped down z12, David Hildenbrand, 2017/12/08
- [qemu-s390x] [PATCH v4 for-2-12] s390x: change the QEMU cpu model to a stripped down z12, David Hildenbrand, 2017/12/08
- [qemu-s390x] [PATCH v1] s390x/cpumodel: make qemu cpu model play with "none" machine, David Hildenbrand, 2017/12/13
- Re: [qemu-s390x] [PATCH v1] s390x/cpumodel: make qemu cpu model play with "none" machine,
Christian Borntraeger <=
- Re: [qemu-s390x] [PATCH v1] s390x/cpumodel: make qemu cpu model play with "none" machine, David Hildenbrand, 2017/12/13
- Re: [qemu-s390x] [PATCH v1] s390x/cpumodel: make qemu cpu model play with "none" machine, Cornelia Huck, 2017/12/13
- Re: [qemu-s390x] [PATCH v1] s390x/cpumodel: make qemu cpu model play with "none" machine, Cornelia Huck, 2017/12/14
- [qemu-s390x] [PATCH v1] s390x/tcg: don't include z13 features in the qemu model, David Hildenbrand, 2017/12/13
- Re: [qemu-s390x] [PATCH v1] s390x/tcg: don't include z13 features in the qemu model, Cornelia Huck, 2017/12/13
- Re: [qemu-s390x] [PATCH v1] s390x/tcg: don't include z13 features in the qemu model, Cornelia Huck, 2017/12/14
Re: [qemu-s390x] [PATCH v3 for-2.12 00/14] s390x/tcg: CCW hotplug, facilities, instructions, Cornelia Huck, 2017/12/11