Re: [PATCH v6 8/8] s390: guest support for diagnose 0x318

2020-09-16 Thread David Hildenbrand
On 16.09.20 10:11, Thomas Huth wrote:
> On 15/09/2020 21.44, Collin Walling wrote:
>> DIAGNOSE 0x318 (diag318) is an s390 instruction that allows the storage
>> of diagnostic information that is collected by the firmware in the case
>> of hardware/firmware service events.
>>
>> QEMU handles the instruction by storing the info in the CPU state. A
>> subsequent register sync will communicate the data to the hypervisor.
>>
>> QEMU handles the migration via a VM State Description.
>>
>> This feature depends on the Extended-Length SCCB (els) feature. If
>> els is not present, then a warning will be printed and the SCLP bit
>> that allows the Linux kernel to execute the instruction will not be
>> set.
>>
>> Availability of this instruction is determined by byte 134 (aka fac134)
>> bit 0 of the SCLP Read Info block. This coincidentally expands into the
>> space used for CPU entries, which means VMs running with the diag318
>> capability may not be able to read information regarding all CPUs
>> unless the guest kernel supports an extended-length SCCB.
>>
>> This feature is not supported in protected virtualization mode.
>>
>> Signed-off-by: Collin Walling 
>> Acked-by: Janosch Frank 
>> ---
>>  hw/s390x/sclp.c |  5 
>>  include/hw/s390x/sclp.h |  8 ++
>>  target/s390x/cpu.h  |  2 ++
>>  target/s390x/cpu_features.h |  1 +
>>  target/s390x/cpu_features_def.h.inc |  3 +++
>>  target/s390x/cpu_models.c   |  1 +
>>  target/s390x/gen-features.c |  1 +
>>  target/s390x/kvm.c  | 39 +
>>  target/s390x/machine.c  | 17 +
>>  9 files changed, 77 insertions(+)
> 
> Acked-by: Thomas Huth 
> 
> (I hope David could still comment on the CPU model stuff ... it looks ok
> to me here, but I got that wrong a couple of times in the past already...)
> 

Had a skim over it and it looks good to me!

Acked-by: David Hildenbrand 

-- 
Thanks,

David / dhildenb




Re: [PATCH v6 8/8] s390: guest support for diagnose 0x318

2020-09-16 Thread Thomas Huth
On 15/09/2020 21.44, Collin Walling wrote:
> DIAGNOSE 0x318 (diag318) is an s390 instruction that allows the storage
> of diagnostic information that is collected by the firmware in the case
> of hardware/firmware service events.
> 
> QEMU handles the instruction by storing the info in the CPU state. A
> subsequent register sync will communicate the data to the hypervisor.
> 
> QEMU handles the migration via a VM State Description.
> 
> This feature depends on the Extended-Length SCCB (els) feature. If
> els is not present, then a warning will be printed and the SCLP bit
> that allows the Linux kernel to execute the instruction will not be
> set.
> 
> Availability of this instruction is determined by byte 134 (aka fac134)
> bit 0 of the SCLP Read Info block. This coincidentally expands into the
> space used for CPU entries, which means VMs running with the diag318
> capability may not be able to read information regarding all CPUs
> unless the guest kernel supports an extended-length SCCB.
> 
> This feature is not supported in protected virtualization mode.
> 
> Signed-off-by: Collin Walling 
> Acked-by: Janosch Frank 
> ---
>  hw/s390x/sclp.c |  5 
>  include/hw/s390x/sclp.h |  8 ++
>  target/s390x/cpu.h  |  2 ++
>  target/s390x/cpu_features.h |  1 +
>  target/s390x/cpu_features_def.h.inc |  3 +++
>  target/s390x/cpu_models.c   |  1 +
>  target/s390x/gen-features.c |  1 +
>  target/s390x/kvm.c  | 39 +
>  target/s390x/machine.c  | 17 +
>  9 files changed, 77 insertions(+)

Acked-by: Thomas Huth 

(I hope David could still comment on the CPU model stuff ... it looks ok
to me here, but I got that wrong a couple of times in the past already...)