qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PULL 35/40] s390x/cpumodel: we are always in zarchitec


From: David Hildenbrand
Subject: Re: [Qemu-devel] [PULL 35/40] s390x/cpumodel: we are always in zarchitecture mode
Date: Mon, 17 Jul 2017 19:36:44 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.1.0

On 17.07.2017 19:33, David Hildenbrand wrote:
> On 14.07.2017 12:41, Christian Borntraeger wrote:
>> From: "Jason J. Herne" <address@hidden>
>>
>> In QEMU, a guest VCPU always started in and never was able to leave
>> z/Architecture mode. Now we have an architected way of showing this
>> condition.
>>
>> The SIGP SET ARCHITECTURE instruction is simply rejected. Linux as guest
>> seems to not care about the return value, which is a good thing
>> The new handling is just like already being in z/Architecture mode.
>>
>> We'll not try to fake absence of this facility, but still not indicate
>> the facility in case some strange CPU model turned z/Architecture off
>> completely (which doesn't work either way but let's us see how a
>> guest would react on a lack of this facility).
>>
>> Signed-off-by: Jason J. Herne <address@hidden>
>> Acked-by: Christian Borntraeger <address@hidden>
>> Acked-by: Cornelia Huck <address@hidden>
>> Signed-off-by: Christian Borntraeger <address@hidden>
>> ---
>>  target/s390x/cpu_features.c |  5 +++--
>>  target/s390x/kvm.c          | 38 +++++++++++---------------------------
>>  2 files changed, 14 insertions(+), 29 deletions(-)
>>
>> diff --git a/target/s390x/cpu_features.c b/target/s390x/cpu_features.c
>> index e5a3f71..fa887d9 100644
>> --- a/target/s390x/cpu_features.c
>> +++ b/target/s390x/cpu_features.c
>> @@ -337,8 +337,9 @@ void s390_fill_feat_block(const S390FeatBitmap features, 
>> S390FeatType type,
>>      int bit_nr;
>>  
>>      if (type == S390_FEAT_TYPE_STFL && test_bit(S390_FEAT_ZARCH, features)) 
>> {
>> -        /* z/Architecture is always active if around */
>> -        data[0] |= 0x20;
>> +        /* Features that are always active */
>> +        data[0] |= 0x20;  /* z/Architecture */
>> +        data[17] |= 0x20; /* Configuration-z-architectural-mode */
>>      }
> 
> This also requires changes in TCG , no? (set architecture there is left
> untouched)
> 
> 

Never mind, just realized we do our own block creation in do_stfle....

-- 

Thanks,

David



reply via email to

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