From: Avi Kivity <avi@redhat.com>
To: Takuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>,
kvm@vger.kernel.org, Alexander Graf <agraf@suse.de>,
kvm-ppc@vger.kernel.org, Scott Wood <scottwood@freescale.com>,
Alex Williamson <Alex.Williamson@redhat.com>
Subject: Re: Question about removing memslots
Date: Thu, 29 Mar 2012 11:44:12 +0200 [thread overview]
Message-ID: <4F742EEC.3020501@redhat.com> (raw)
In-Reply-To: <20120329141553.3bc61de3.yoshikawa.takuya@oss.ntt.co.jp>
On 03/29/2012 07:15 AM, Takuya Yoshikawa wrote:
> On Wed, 28 Mar 2012 11:37:38 +0200
> Avi Kivity <avi@redhat.com> wrote:
>
> > > Now I see that x86 just seems to flush everything, which is quite heavy
> > > handed considering how often cirrus does it, but maybe it doesn't have a
> > > choice (lack of reverse mapping from GPA ?).
> >
> > We do have a reverse mapping, so we could easily flush just a single
> > slot. The reason it hasn't been done is that slot changes are very are
> > on x86. They're usually only done by 16-bit software; 32-bit software
> > just maps the entire framebuffer BAR and accesses it directly. It's
> > also usually done in a tight loop, so flushing everything doesn't have a
> > large impact (and with a 20-bit address space, you couldn't cause a
> > large impact if you wanted to - memory is all of 256 pages).
>
> Even without using reverse mapping we can restrict that flush easily:
>
> http://www.spinics.net/lists/kvm/msg68695.html
> [PATCH] KVM: Avoid zapping unrelated shadows in __kvm_set_memory_region()
>
> This would be better than using reverse mapping because we do not have so
> many shadow pages when we are in a tight loop like you mensioned.
>
> Anyway we could easily see tens of milliseconds difference by eliminating
> unrelated flush.
Hm, the patch uses ->slot_bitmap which we might want to kill if we
increase the number of slots dramatically, as some people want to do.
btw, what happened to that patch, did it just get ignored on the list?
--
error compiling committee.c: too many arguments to function
next prev parent reply other threads:[~2012-03-29 9:44 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-28 7:24 Question about removing memslots Benjamin Herrenschmidt
2012-03-28 9:37 ` Avi Kivity
2012-03-28 9:59 ` Benjamin Herrenschmidt
2012-03-28 10:05 ` Avi Kivity
2012-03-28 10:17 ` Benjamin Herrenschmidt
2012-03-28 10:51 ` Avi Kivity
2012-03-28 21:04 ` Benjamin Herrenschmidt
2012-03-29 9:36 ` Avi Kivity
2012-03-29 11:46 ` Benjamin Herrenschmidt
2012-03-29 13:49 ` Gerd Hoffmann
2012-03-29 5:15 ` Takuya Yoshikawa
2012-03-29 9:44 ` Avi Kivity [this message]
2012-03-29 15:21 ` Takuya Yoshikawa
2012-03-29 15:26 ` Avi Kivity
2012-03-29 15:35 ` Takuya Yoshikawa
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=4F742EEC.3020501@redhat.com \
--to=avi@redhat.com \
--cc=Alex.Williamson@redhat.com \
--cc=agraf@suse.de \
--cc=benh@kernel.crashing.org \
--cc=kvm-ppc@vger.kernel.org \
--cc=kvm@vger.kernel.org \
--cc=scottwood@freescale.com \
--cc=yoshikawa.takuya@oss.ntt.co.jp \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox