[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <76165cca-b8ec-172a-4a1b-6f3514b44344@linux.ibm.com>
Date: Mon, 2 Jul 2018 18:20:55 +0200
From: Halil Pasic <pasic@...ux.ibm.com>
To: Cornelia Huck <cohuck@...hat.com>,
Tony Krowiak <akrowiak@...ux.ibm.com>
Cc: Christian Borntraeger <borntraeger@...ibm.com>,
Tony Krowiak <akrowiak@...ux.vnet.ibm.com>,
linux-s390@...r.kernel.org, linux-kernel@...r.kernel.org,
kvm@...r.kernel.org, freude@...ibm.com, schwidefsky@...ibm.com,
heiko.carstens@...ibm.com, kwankhede@...dia.com,
bjsdjshi@...ux.vnet.ibm.com, pbonzini@...hat.com,
alex.williamson@...hat.com, pmorel@...ux.vnet.ibm.com,
alifm@...ux.vnet.ibm.com, mjrosato@...ux.vnet.ibm.com,
jjherne@...ux.vnet.ibm.com, thuth@...hat.com,
pasic@...ux.vnet.ibm.com, berrange@...hat.com,
fiuczy@...ux.vnet.ibm.com, buendgen@...ibm.com
Subject: Re: [PATCH v6 05/21] KVM: s390: CPU model support for AP
virtualization
On 07/02/2018 06:11 PM, Cornelia Huck wrote:
> On Mon, 2 Jul 2018 11:54:28 -0400
> Tony Krowiak <akrowiak@...ux.ibm.com> wrote:
>
>> On 07/02/2018 11:41 AM, Cornelia Huck wrote:
>>> On Mon, 2 Jul 2018 11:37:11 -0400
>>> Tony Krowiak <akrowiak@...ux.ibm.com> wrote:
>>>
>>>> On 07/02/2018 10:38 AM, Christian Borntraeger wrote:
>>>>> On 06/29/2018 11:11 PM, Tony Krowiak wrote:
>>>>>> Introduces a new CPU model feature and two CPU model
>>>>>> facilities to support AP virtualization for KVM guests.
>>>>>>
>>>>>> CPU model feature:
>>>>>>
>>>>>> The KVM_S390_VM_CPU_FEAT_AP feature indicates that
>>>>>> AP instructions are available on the guest. This
>>>>>> feature will be enabled by the kernel only if the AP
>>>>>> instructions are installed on the linux host. This feature
>>>>>> must be specifically turned on for the KVM guest from
>>>>>> userspace to use the VFIO AP device driver for guest
>>>>>> access to AP devices.
>>>>>>
>>>>>> CPU model facilities:
>>>>>>
>>>>>> 1. AP Query Configuration Information (QCI) facility is installed.
>>>>>>
>>>>>> This is indicated by setting facilities bit 12 for
>>>>>> the guest. The kernel will not enable this facility
>>>>>> for the guest if it is not set on the host. This facility
>>>>>> must not be set by userspace if the KVM_S390_VM_CPU_FEAT_AP
>>>>>> feature is not installed.
>>>>>>
>>>>>> If this facility is not set for the KVM guest, then only
>>>>>> APQNs with an APQI less than 16 will be available to the
>>>>>> guest regardless of the guest's matrix configuration. This
>>>>>> is a limitation of the AP bus running on the guest.
>>>>>>
>>>>>> 2. AP Facilities Test facility (APFT) is installed.
>>>>>>
>>>>>> This is indicated by setting facilities bit 15 for
>>>>>> the guest. The kernel will not enable this facility for
>>>>>> the guest if it is not set on the host. This facility
>>>>>> must not be set by userspace if the KVM_S390_VM_CPU_FEAT_AP
>>>>>> feature is not installed.
>>>>>>
>>>>>> If this facility is not set for the KVM guest, then no
>>>>>> AP devices will be available to the guest regardless of
>>>>>> the guest's matrix configuration. This is a limitation
>>>>>> of the AP bus running under the guest.
>>>>>>
>>>>>> Reviewed-by: Christian Borntraeger <borntraeger@...ibm.com>
>>>>>> Reviewed-by: Halil Pasic <pasic@...ux.ibm.com>
>>>>>> Signed-off-by: Tony Krowiak <akrowiak@...ux.ibm.com>
>>>>> I think it probably should be at the end of the series, other than that its good.
>>>> If I move this to the end of the series, the very next patch checks the
>>>>
>>>> KVM_S390_VM_CPU_FEAT_AP feature?
>>> Introduce it here, offer it only with the last patch?
>>
>> I apologize, but I don't know what you mean by this. Are you suggesting
>> this patch
>> should only include the #define for KVM_S390_VM_CPU_FEAT_AP?
>
> Yes, just introduce the definition here (so code later in the series
> can refer to it) and flip the switch (offer the bit) as the final
> patch.
>
The other features introduced and exposed here are no different. For
KVM_S390_VM_CPU_FEAT_AP defer exposing means defer allow_cpu_feat();
for the STFLE features, defer adding to FACILITIES_KVM_CPUMODEL.
Anyway, I think the definition should be squashed into #6. Expose the
features after patch #6 is in place or expose them at the end of the
series is IMHO a matter of taste -- and I lean towards expose at the
end of the series.
Regards,
Halil
Powered by blists - more mailing lists