Subject: Re: [PATCH V2 3/5] kvm/ppc/book3s_hv: Implement halt polling in the kvm_hv kernel module

From: Suraj Jitindar Singh <[email-masked]>
Date: Tue, 12 Jul 2016 16:33:10 +1000

On 12/07/16 03:26, David Matlack wrote:
> On Mon, Jul 11, 2016 at 10:07 AM, Paolo Bonzini <[email-masked]> wrote:
>>
>> On 11/07/2016 18:57, David Matlack wrote:
>>> On Mon, Jul 11, 2016 at 12:08 AM, Suraj Jitindar Singh
>>> <[email-masked]> wrote:
>>>> This patch introduces new halt polling functionality into the kvm_hv kernel
>>>> module. When a vcore is idle it will poll for some period of time before
>>>> scheduling itself out.
>>> Is there any way to reuse the existing halt-polling code? Having two
>>> copies risks them diverging over time.
>> s/risks/guarantees/ :(
>>
>> Unfortunately, handling of the hardware threads in KVM PPC is a mess,
>> and I don't think it's possible to remove the duplication.
> Ah, ok. That's a shame.

It's definitely not ideal having this code duplicated, although we have
the issue that on PPC we only poll once all of the vcpus on a vcore have
ceded and need to retain a reference to that vcore.

Additionally we only actually do this in HV code, on the KVM PR
version we call the generic halt-polling code which doesn't know
about vcores.

I don't see an easy way to use the existing function.

>> Paolo