From: Sean Christopherson <seanjc@google.com>
To: "Maciej S. Szmigiero" <mail@maciej.szmigiero.name>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
Vitaly Kuznetsov <vkuznets@redhat.com>,
Wanpeng Li <wanpengli@tencent.com>,
Jim Mattson <jmattson@google.com>, Joerg Roedel <joro@8bytes.org>,
Igor Mammedov <imammedo@redhat.com>,
Marc Zyngier <maz@kernel.org>, James Morse <james.morse@arm.com>,
Julien Thierry <julien.thierry.kdev@gmail.com>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
Huacai Chen <chenhuacai@kernel.org>,
Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>,
Paul Mackerras <paulus@ozlabs.org>,
Christian Borntraeger <borntraeger@de.ibm.com>,
Janosch Frank <frankja@linux.ibm.com>,
David Hildenbrand <david@redhat.com>,
Cornelia Huck <cohuck@redhat.com>,
Claudio Imbrenda <imbrenda@linux.ibm.com>,
Anup Patel <anup.patel@wdc.com>,
Paul Walmsley <paul.walmsley@sifive.com>,
Palmer Dabbelt <palmer@dabbelt.com>,
Albert Ou <aou@eecs.berkeley.edu>,
Alexandru Elisei <alexandru.elisei@arm.com>,
Atish Patra <atish.patra@wdc.com>,
Ben Gardon <bgardon@google.com>,
kvm@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v6 03/29] KVM: Resync only arch fields when slots_arch_lock gets reacquired
Date: Wed, 1 Dec 2021 01:07:56 +0000 [thread overview]
Message-ID: <YabK7IOM74ag2CcS@google.com> (raw)
In-Reply-To: <a47c93c2fe40e7ed27eb0ff6ac2b173254058b6c.1638304315.git.maciej.szmigiero@oracle.com>
On Tue, Nov 30, 2021, Maciej S. Szmigiero wrote:
> From: "Maciej S. Szmigiero" <maciej.szmigiero@oracle.com>
>
> There is no need to copy the whole memslot data after releasing
> slots_arch_lock for a moment to install temporary memslots copy in
> kvm_set_memslot() since this lock only protects the arch field of each
> memslot.
>
> Just resync this particular field after reacquiring slots_arch_lock.
>
> Note, this also eliminates the need to manually clear the INVALID flag
> when restoring memslots; the "setting" of the INVALID flag was an
> unwanted side effect of copying the entire memslots.
>
> Since kvm_copy_memslots() has just one caller remaining now
> open-code it instead.
>
> Signed-off-by: Maciej S. Szmigiero <maciej.szmigiero@oracle.com>
> [sean: tweak shortlog, note INVALID flag in changelog, revert comment]
> Signed-off-by: Sean Christopherson <seanjc@google.com>
Heh, I think you can drop my SoB? This is new territory for me, I don't know the
rules for this particular situation.
Reviewed-by: Sean Christopherson <seanjc@google.com>
next prev parent reply other threads:[~2021-12-01 1:08 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-30 21:41 [PATCH v6 00/29] KVM: Scalable memslots implementation Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 01/29] KVM: Require total number of memslot pages to fit in an unsigned long Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 02/29] KVM: Open code kvm_delete_memslot() into its only caller Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 03/29] KVM: Resync only arch fields when slots_arch_lock gets reacquired Maciej S. Szmigiero
2021-12-01 1:07 ` Sean Christopherson [this message]
2021-12-01 15:45 ` Maciej S. Szmigiero
2021-12-02 10:32 ` Paolo Bonzini
2021-11-30 21:41 ` [PATCH v6 04/29] KVM: Use "new" memslot's address space ID instead of dedicated param Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 05/29] KVM: Let/force architectures to deal with arch specific memslot data Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 06/29] KVM: arm64: Use "new" memslot instead of userspace memory region Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 07/29] KVM: MIPS: Drop pr_debug from memslot commit to avoid using "mem" Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 08/29] KVM: PPC: Avoid referencing userspace memory region in memslot updates Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 09/29] KVM: s390: Use "new" memslot instead of userspace memory region Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 10/29] KVM: x86: " Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 11/29] KVM: RISC-V: " Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 12/29] KVM: Stop passing kvm_userspace_memory_region to arch memslot hooks Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 13/29] KVM: Use prepare/commit hooks to handle generic memslot metadata updates Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 14/29] KVM: x86: Don't assume old/new memslots are non-NULL at memslot commit Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 15/29] KVM: s390: Skip gfn/size sanity checks on memslot DELETE or FLAGS_ONLY Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 16/29] KVM: Don't make a full copy of the old memslot in __kvm_set_memory_region() Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 17/29] KVM: x86: Don't call kvm_mmu_change_mmu_pages() if the count hasn't changed Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 18/29] KVM: x86: Use nr_memslot_pages to avoid traversing the memslots array Maciej S. Szmigiero
2021-12-01 2:21 ` Sean Christopherson
2021-12-01 15:45 ` Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 19/29] KVM: Integrate gfn_to_memslot_approx() into search_memslots() Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 20/29] KVM: Move WARN on invalid memslot index to update_memslots() Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 21/29] KVM: Resolve memslot ID via a hash table instead of via a static array Maciej S. Szmigiero
2021-12-01 2:54 ` Sean Christopherson
2021-12-01 15:45 ` Maciej S. Szmigiero
2021-12-01 16:23 ` Sean Christopherson
2021-11-30 21:41 ` [PATCH v6 22/29] KVM: Use interval tree to do fast hva lookup in memslots Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 23/29] KVM: s390: Introduce kvm_s390_get_gfn_end() Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 24/29] KVM: Keep memslots in tree-based structures instead of array-based ones Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 25/29] KVM: Call kvm_arch_flush_shadow_memslot() on the old slot in kvm_invalidate_memslot() Maciej S. Szmigiero
2021-12-01 3:27 ` Sean Christopherson
2021-12-01 15:45 ` Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 26/29] KVM: Optimize gfn lookup in kvm_zap_gfn_range() Maciej S. Szmigiero
2021-12-01 3:41 ` Sean Christopherson
2021-12-01 15:45 ` Maciej S. Szmigiero
2021-12-01 16:36 ` Sean Christopherson
2021-12-01 23:08 ` Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 27/29] KVM: Optimize overlapping memslots check Maciej S. Szmigiero
2021-12-01 3:08 ` Sean Christopherson
2021-12-01 15:45 ` Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 28/29] KVM: Wait 'til the bitter end to initialize the "new" memslot Maciej S. Szmigiero
2021-11-30 21:41 ` [PATCH v6 29/29] KVM: Dynamically allocate "new" memslots from the get-go Maciej S. Szmigiero
2021-12-01 3:45 ` [PATCH v6 00/29] KVM: Scalable memslots implementation Sean Christopherson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YabK7IOM74ag2CcS@google.com \
--to=seanjc@google.com \
--cc=aleksandar.qemu.devel@gmail.com \
--cc=alexandru.elisei@arm.com \
--cc=anup.patel@wdc.com \
--cc=aou@eecs.berkeley.edu \
--cc=atish.patra@wdc.com \
--cc=bgardon@google.com \
--cc=borntraeger@de.ibm.com \
--cc=chenhuacai@kernel.org \
--cc=cohuck@redhat.com \
--cc=david@redhat.com \
--cc=frankja@linux.ibm.com \
--cc=imammedo@redhat.com \
--cc=imbrenda@linux.ibm.com \
--cc=james.morse@arm.com \
--cc=jmattson@google.com \
--cc=joro@8bytes.org \
--cc=julien.thierry.kdev@gmail.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mail@maciej.szmigiero.name \
--cc=maz@kernel.org \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=paulus@ozlabs.org \
--cc=pbonzini@redhat.com \
--cc=suzuki.poulose@arm.com \
--cc=vkuznets@redhat.com \
--cc=wanpengli@tencent.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.