All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sean Christopherson <seanjc@google.com>
To: Jun Miao <jun.miao@intel.com>
Cc: pbonzini@redhat.com, kvm@vger.kernel.org,
	linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] KVM: Fix comments that refer to the non-existent install_new_memslots()
Date: Fri, 24 Mar 2023 07:54:29 -0700	[thread overview]
Message-ID: <ZB25pR7cv3mjnn4s@google.com> (raw)
In-Reply-To: <20230223052851.1054799-1-jun.miao@intel.com>

On Thu, Feb 23, 2023, Jun Miao wrote:
> The function of install_new_memslots() was replaced by kvm_swap_active_memslots().
> In order to avoid confusion, fix the comments that refer the non-existent name of
> install_new_memslots which always be ignored.
> 
> Fixes: a54d806688fe ("KVM: Keep memslots in tree-based structures instead of array-based ones")
> Signed-off-by: Jun Miao <jun.miao@intel.com>

Two nits, but I'll fix them up when applying.  Thanks!

> ---
>  Documentation/virt/kvm/locking.rst |  2 +-
>  include/linux/kvm_host.h           |  4 ++--
>  virt/kvm/kvm_main.c                | 10 +++++-----
>  3 files changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/Documentation/virt/kvm/locking.rst b/Documentation/virt/kvm/locking.rst
> index 14c4e9fa501d..6e03ad853c27 100644
> --- a/Documentation/virt/kvm/locking.rst
> +++ b/Documentation/virt/kvm/locking.rst
> @@ -21,7 +21,7 @@ The acquisition orders for mutexes are as follows:
>  - kvm->mn_active_invalidate_count ensures that pairs of
>    invalidate_range_start() and invalidate_range_end() callbacks
>    use the same memslots array.  kvm->slots_lock and kvm->slots_arch_lock
> -  are taken on the waiting side in install_new_memslots, so MMU notifiers
> +  are taken on the waiting side in kvm_swap_active_memslots(), so MMU notifiers

This isn't accurate, kvm_swap_active_memslots() isn't what actually acquires
those locks.  I don't see any reason to be super precise, the key takeaway is
that modifying memslots takes the locks _and_ is the waiter.  I'll tweak this to:

  are taken on the waiting side when modifying memslots, so MMU notifiers

> @@ -1810,11 +1810,11 @@ static int kvm_set_memslot(struct kvm *kvm,
>  	int r;
>  
>  	/*
> -	 * Released in kvm_swap_active_memslots.
> +	 * Released in kvm_swap_active_memslots().
>  	 *
>  	 * Must be held from before the current memslots are copied until
>  	 * after the new memslots are installed with rcu_assign_pointer,
> -	 * then released before the synchronize srcu in kvm_swap_active_memslots.
> +	 * then released before the synchronize srcu in kvm_swap_active_memslots().

This block can be massaged slightly to avoid running past 80 chars:

	 * Must be held from before the current memslots are copied until after
	 * the new memslots are installed with rcu_assign_pointer, then
	 * released before the synchronize srcu in kvm_swap_active_memslots().

>  	 *
>  	 * When modifying memslots outside of the slots_lock, must be held
>  	 * before reading the pointer to the current memslots until after all
> -- 
> 2.32.0
> 

  reply	other threads:[~2023-03-24 14:54 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-23  5:28 [PATCH v2] KVM: Fix comments that refer to the non-existent install_new_memslots() Jun Miao
2023-03-24 14:54 ` Sean Christopherson [this message]
2023-03-24 23:35 ` 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=ZB25pR7cv3mjnn4s@google.com \
    --to=seanjc@google.com \
    --cc=jun.miao@intel.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pbonzini@redhat.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.