Re: [PATCH 15/24] kvm: mmu: Wrap mmu_lock cond_resched and needbreak

Paolo Bonzini
2021-01-28T08:20:08Z

On 27/01/21 22:20, Ben Gardon wrote:
> On Wed, Jan 27, 2021 at 12:55 PM Paolo Bonzini <pbonzini@redhat.com> wrote:
>>
>> On 27/01/21 21:08, Ben Gardon wrote:
>>> I'm not entirely sure I understand this suggestion. Are you suggesting
>>> we'd have the spinlock and rwlock in a union in struct kvm but then
>>> use a static define to choose which one is used by other functions? It
>>> seems like if we're using static defines the union doesn't add value.
>>
>> Of course you're right. You'd just place the #ifdef in the struct kvm
>> definition.
>
> Ah okay, thanks for clarifying.
>
>>
>> You can place static inline functions for lock/unlock in
>> virt/kvm/mmu_lock.h, in order to avoid a proliferation of #ifdefs.
>
> Would you prefer to make that change in this series or at a later
> date? I'm assuming this would replace all the wrapper functions and
> mean that x86 is rwlock only.

Yes, exactly. I would like to make tdp_mmu=1 the default as soon as
parallel page faults are in (and thus scalability should be on par with
the shadow MMU).

Paolo