From: Avi Kivity <avi@redhat.com>
To: Jan Kiszka <jan.kiszka@siemens.com>
Cc: Zachary Amsden <zamsden@redhat.com>,
Marcelo Tosatti <mtosatti@redhat.com>, kvm <kvm@vger.kernel.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] KVM: x86: Convert tsc_write_lock to raw_spinlock
Date: Tue, 08 Feb 2011 11:15:56 +0200 [thread overview]
Message-ID: <4D5109CC.2030901@redhat.com> (raw)
In-Reply-To: <4D502AA5.7040407@siemens.com>
On 02/07/2011 07:23 PM, Jan Kiszka wrote:
> On 2011-02-07 18:10, Avi Kivity wrote:
> > On 02/07/2011 06:59 PM, Jan Kiszka wrote:
> >>>
> >>> (well, actually, cpufreq_notifier and kvm_arch_hardware_enable are
> >>> already non preemptible, and the stats code should just go away?)
> >>
> >> The stats code is trivial to convert, so it doesn't matter.
> >
> > Removal is easier.
>
> Is that stat interface no longer used?
It's there for compatibility. I'm itching to remove it. See
qemu-kvm.git/kvm/kvm_stat for the only known user, and for the
replacement via tracepoints.
Tracepoints have marginally lower overhead when disabled, and somewhat
higher overhead when enabled. A disadvantage of tracepoints is that it
is harder to associate an event with a vm when that event is triggered
by a workqueue, but I don't think it matters in practice (kvm_stat
doesn't even provide a per-vm breakdown).
> >
> >> But what about mmu_shrink and its list_move_tail? How is this
> >> synchronized against kvm_destroy_vm - already today?
> >
> > kvm_destroy_vm() takes kvm_lock. If a vm is destroyed before
> > mmu_shrink(), mmu_shrink() will never see it. If we reach mmu_shrink()
> > before kvm_destroy_vm(), the latter will wait until mmu_shrink() is done.
> >
>
> Ah, I was confused. Would require some more logic if we wanted to make
> the loop lock-less, though.
Yes, the usual rcu_read_lock() / grab reference / rcu_read_unlock().
--
error compiling committee.c: too many arguments to function
next prev parent reply other threads:[~2011-02-08 9:16 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-04 9:49 [PATCH] KVM: x86: Convert tsc_write_lock to raw_spinlock Jan Kiszka
2011-02-04 21:03 ` Zachary Amsden
2011-02-07 11:35 ` Jan Kiszka
2011-02-07 14:11 ` Zachary Amsden
2011-02-07 15:00 ` Jan Kiszka
2011-02-07 15:15 ` Zachary Amsden
2011-02-07 15:38 ` Jan Kiszka
2011-02-07 15:52 ` Avi Kivity
2011-02-07 15:58 ` Jan Kiszka
2011-02-07 16:26 ` Avi Kivity
2011-02-07 16:59 ` Jan Kiszka
2011-02-07 17:10 ` Avi Kivity
2011-02-07 17:23 ` Jan Kiszka
2011-02-08 9:15 ` Avi Kivity [this message]
2011-02-08 9:55 ` Jan Kiszka
2011-02-08 9:58 ` Avi Kivity
2011-02-10 10:40 ` Avi Kivity
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=4D5109CC.2030901@redhat.com \
--to=avi@redhat.com \
--cc=jan.kiszka@siemens.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@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.