Re: [PATCH v8 1/2] s390/setup: diag 318: refactor struct

Collin Walling
2020-06-22T15:37:29Z

On 6/22/20 10:56 AM, Christian Borntraeger wrote:
>
> On 19.06.20 00:22, Collin Walling wrote:
>> The diag 318 struct introduced in include/asm/diag.h can be
>> reused in KVM, so let's condense the version code fields in the
>> diag318_info struct for easier usage and simplify it until we
>> can determine how the data should be formatted.
>>
>> Signed-off-by: Collin Walling <walling@linux.ibm.com>
>> Reviewed-by: David Hildenbrand <david@redhat.com>
>> Reviewed-by: Cornelia Huck <cohuck@redhat.com>
>> Reviewed-by: Thomas Huth <thuth@redhat.com>
>> Reviewed-by: Janosch Frank <frankja@linux.ibm.com>
>
> Series looks good to me. Can you respin the 2nd patch regarding the VSIE things
> and I can then apply it.
>
>

Will do. Thanks.

>> ---
>> arch/s390/include/asm/diag.h | 6 ++----
>> arch/s390/kernel/setup.c | 3 +--
>> 2 files changed, 3 insertions(+), 6 deletions(-)
>>
>> diff --git a/arch/s390/include/asm/diag.h b/arch/s390/include/asm/diag.h
>> index 0036eab14391..ca8f85b53a90 100644
>> --- a/arch/s390/include/asm/diag.h
>> +++ b/arch/s390/include/asm/diag.h
>> @@ -298,10 +298,8 @@ struct diag26c_mac_resp {
>> union diag318_info {
>> unsigned long val;
>> struct {
>> - unsigned int cpnc : 8;
>> - unsigned int cpvc_linux : 24;
>> - unsigned char cpvc_distro[3];
>> - unsigned char zero;
>> + unsigned long cpnc : 8;
>> + unsigned long cpvc : 56;
>> };
>> };
>>
>> diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c
>> index 5853c9872dfe..878cacfc9c3e 100644
>> --- a/arch/s390/kernel/setup.c
>> +++ b/arch/s390/kernel/setup.c
>> @@ -1021,8 +1021,7 @@ static void __init setup_control_program_code(void)
>> {
>> union diag318_info diag318_info = {
>> .cpnc = CPNC_LINUX,
>> - .cpvc_linux = 0,
>> - .cpvc_distro = {0},
>> + .cpvc = 0,
>> };
>>
>> if (!sclp.has_diag318)
>>

--
Regards,
Collin

Stay safe and stay healthy