qemu-s390x
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [qemu-s390x] [Qemu-devel] [PATCH v3 for-2.12 14/14] s390x: change th


From: David Hildenbrand
Subject: Re: [qemu-s390x] [Qemu-devel] [PATCH v3 for-2.12 14/14] s390x: change the QEMU cpu model to a stripped down z12
Date: Fri, 8 Dec 2017 17:39:16 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0

On 08.12.2017 17:34, Daniel P. Berrange wrote:
> On Fri, Dec 08, 2017 at 05:29:36PM +0100, David Hildenbrand wrote:
>> On 08.12.2017 17:26, Cornelia Huck wrote:
>>> On Fri,  8 Dec 2017 17:02:07 +0100
>>> David Hildenbrand <address@hidden> wrote:
>>>
>>>> We are good enough to boot upstream Linux kernels / Fedora 26/27. That
>>>> should be sufficient for now.
>>>>
>>>> As the QEMU CPU model is migration safe, let's add compatibility code.
>>>> Generate the feature list to reduce the chance of messing things up in the
>>>> future.
>>>>
>>>> Signed-off-by: David Hildenbrand <address@hidden>
>>>> ---
>>>>  hw/s390x/s390-virtio-ccw.c  |   8 ++++
>>>>  target/s390x/cpu.h          |   3 ++
>>>>  target/s390x/cpu_models.c   | 100 
>>>> ++++++++++++++++++--------------------------
>>>>  target/s390x/cpu_models.h   |   1 +
>>>>  target/s390x/gen-features.c |  87 ++++++++++++++++++++++++++++++++++++++
>>>>  5 files changed, 140 insertions(+), 59 deletions(-)
>>>
>>> Unfortunately, this patch makes mingw unhappy (x86_64-w64-mingw32 on my
>>> F26 laptop):
>>>
>>> In file included from /home/cohuck/git/qemu/target/s390x/cpu_models.h:17:0,
>>>                  from /home/cohuck/git/qemu/target/s390x/cpu.h:28,
>>>                  from /home/cohuck/git/qemu/hw/s390x/s390-virtio-ccw.c:16:
>>> /home/cohuck/git/qemu/hw/s390x/s390-virtio-ccw.c: In function 
>>> 'ccw_machine_2_12_instance_options':
>>> ./gen-features.h:96:35: error: large integer implicitly truncated to 
>>> unsigned type [-Werror=overflow]
>>>  #define S390_FEAT_LIST_QEMU_V2_12 
>>> 0x3000e918fd6de14fULL,0x000ffffff0000000ULL,0x0000000000000000ULL,0x0000000000000000ULL
>>>                                    ^
>>> /home/cohuck/git/qemu/hw/s390x/s390-virtio-ccw.c:728:51: note: in expansion 
>>> of macro 'S390_FEAT_LIST_QEMU_V2_12'
>>>      static const S390FeatBitmap qemu_cpu_feat = { 
>>> S390_FEAT_LIST_QEMU_V2_12 };
>>>                                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
>>
>> Huh? we have ULL added to all constants, this should not get reported.
> 
> Isn't the problem here the S390FeatBitmap type which is a 'unsigned long',
> so not guaranteed to be 64-bits on 32-bit hosts ?

Right, I remember why I needed that ugly hack in cpu_model.c, where we
initialize the bitmap from an array (e.g. base_init). Thanks for the hint.

> 
> Regards,
> Daniel
> 


-- 

Thanks,

David / dhildenb



reply via email to

[Prev in Thread] Current Thread [Next in Thread]