[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <90363e5c-e21c-16cc-7ed1-59e3f73d9a87@redhat.com>
Date: Tue, 1 Mar 2022 18:08:55 +0100
From: Paolo Bonzini <pbonzini@...hat.com>
To: Sean Christopherson <seanjc@...gle.com>,
Christian Borntraeger <borntraeger@...ux.ibm.com>,
Janosch Frank <frankja@...ux.ibm.com>
Cc: David Hildenbrand <david@...hat.com>,
Claudio Imbrenda <imbrenda@...ux.ibm.com>,
Vitaly Kuznetsov <vkuznets@...hat.com>,
Wanpeng Li <wanpengli@...cent.com>,
Jim Mattson <jmattson@...gle.com>,
Joerg Roedel <joro@...tes.org>, kvm@...r.kernel.org,
linux-kernel@...r.kernel.org, Ben Gardon <bgardon@...gle.com>,
Lai Jiangshan <jiangshanlai@...il.com>
Subject: Re: [PATCH v2 0/7] KVM: x86/mmu: Zap only obsolete roots on "reload"
On 2/25/22 19:22, Sean Christopherson wrote:
> For all intents and purposes, this is an x86/mmu series, but it touches
> s390 and common KVM code because KVM_REQ_MMU_RELOAD is currently a generic
> request despite its use being encapsulated entirely within arch code.
>
> The meat of the series is to zap only obsolete (a.k.a. invalid) roots in
> response to KVM marking a root obsolete/invalid due to it being zapped.
> KVM currently drops/zaps all roots, which, aside from being a performance
> hit if the guest is using multiple roots, complicates x86 KVM paths that
> load a new root because it raises the question of what should be done if
> there's a pending KVM_REQ_MMU_RELOAD, i.e. if the path _knows_ that any
> root it loads will be obliterated.
>
> Paolo, I'm hoping you can squash patch 01 with your patch it "fixes".
>
> I'm also speculating that this will be applied after my patch to remove
> KVM_REQ_GPC_INVALIDATE, otherwise the changelog in patch 06 will be
> wrong.
Queued, thanks.
Paolo
> v2:
> - Collect reviews. [Claudio, Janosch]
> - Rebase to latest kvm/queue.
>
> v1: https://lore.kernel.org/all/20211209060552.2956723-1-seanjc@google.com
>
> Sean Christopherson (7):
> KVM: x86: Remove spurious whitespaces from kvm_post_set_cr4()
> KVM: x86: Invoke kvm_mmu_unload() directly on CR4.PCIDE change
> KVM: Drop kvm_reload_remote_mmus(), open code request in x86 users
> KVM: x86/mmu: Zap only obsolete roots if a root shadow page is zapped
> KVM: s390: Replace KVM_REQ_MMU_RELOAD usage with arch specific request
> KVM: Drop KVM_REQ_MMU_RELOAD and update vcpu-requests.rst
> documentation
> KVM: WARN if is_unsync_root() is called on a root without a shadow
> page
>
> Documentation/virt/kvm/vcpu-requests.rst | 7 +-
> arch/s390/include/asm/kvm_host.h | 2 +
> arch/s390/kvm/kvm-s390.c | 8 +--
> arch/s390/kvm/kvm-s390.h | 2 +-
> arch/x86/include/asm/kvm_host.h | 2 +
> arch/x86/kvm/mmu.h | 1 +
> arch/x86/kvm/mmu/mmu.c | 83 ++++++++++++++++++++----
> arch/x86/kvm/x86.c | 10 +--
> include/linux/kvm_host.h | 4 +-
> virt/kvm/kvm_main.c | 5 --
> 10 files changed, 90 insertions(+), 34 deletions(-)
>
>
> base-commit: f4bc051fc91ab9f1d5225d94e52d369ef58bec58
Powered by blists - more mailing lists