From: Avi Kivity <avi@redhat.com>
To: Jan Kiszka <jan.kiszka@siemens.com>
Cc: Marcelo Tosatti <mtosatti@redhat.com>, kvm <kvm@vger.kernel.org>,
Zachary Amsden <zamsden@redhat.com>
Subject: Re: [PATCH 2/2] KVM: Convert read-only users of vm_list to RCU
Date: Thu, 10 Feb 2011 16:26:44 +0200 [thread overview]
Message-ID: <4D53F5A4.8050403@redhat.com> (raw)
In-Reply-To: <4D53EC7B.3030903@siemens.com>
On 02/10/2011 03:47 PM, Jan Kiszka wrote:
> >>
> >> Accept for mmu_shrink, which is write but not delete, thus works without
> >> that slow synchronize_rcu.
> >
> > I don't really see how you can implement list_move_rcu(), it has to be
> > atomic or other users will see a partial vm_list.
>
> Right, even if we synchronized that step cleanly, rcu-protected users
> could miss the moving vm during concurrent list walks.
>
> What about using a separate mutex for protecting vm_list instead?
> Unless I missed some detail, mmu_shrink should allow blocking.
What else does kvm_lock protect?
I think we could simply reduce the amount of time we hold kvm_lock.
Pick a vm, ref it, list_move_tail(), unlock, then do the actual
shrinking. Of course taking a ref must be done carefully, we might
already be in kvm_destroy_vm() at that time.
--
error compiling committee.c: too many arguments to function
next prev parent reply other threads:[~2011-02-10 14:26 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <4D512EF7.8040409@siemens.com>
2011-02-08 11:55 ` [PATCH 2/2] KVM: Convert read-only users of vm_list to RCU Jan Kiszka
2011-02-10 10:16 ` Avi Kivity
2011-02-10 11:31 ` Jan Kiszka
2011-02-10 12:34 ` Avi Kivity
2011-02-10 12:45 ` Jan Kiszka
2011-02-10 12:56 ` Avi Kivity
2011-02-10 12:57 ` Avi Kivity
2011-02-10 13:14 ` Jan Kiszka
2011-02-10 13:19 ` Avi Kivity
2011-02-10 13:47 ` Jan Kiszka
2011-02-10 14:26 ` Avi Kivity [this message]
2011-02-10 14:34 ` Jan Kiszka
2011-02-10 14:47 ` Avi Kivity
2011-02-10 14:55 ` Jan Kiszka
2011-02-15 12:32 ` Marcelo Tosatti
2011-02-15 14:08 ` Jan Kiszka
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=4D53F5A4.8050403@redhat.com \
--to=avi@redhat.com \
--cc=jan.kiszka@siemens.com \
--cc=kvm@vger.kernel.org \
--cc=mtosatti@redhat.com \
--cc=zamsden@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.