From: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
To: qemu-devel@nongnu.org
Cc: Glauber Costa <glommer@redhat.com>, aliguori@us.ibm.com
Subject: Re: [Qemu-devel] vga optmization
Date: Tue, 04 Nov 2008 15:13:40 +0000 [thread overview]
Message-ID: <491066A4.10302@eu.citrix.com> (raw)
In-Reply-To: <5d6222a80811040655u107e242cs6f1e7aaf33f2e6dc@mail.gmail.com>
Glauber Costa wrote:
> On Tue, Nov 4, 2008 at 12:51 PM, Avi Kivity <avi@redhat.com> wrote:
>> Stefano Stabellini wrote:
>>> Why don't you make qemu_physical_sync_dirty_bitmap take also and end
>>> address, and you merge the two bitmaps in this address range in this
>>> function, so you don't have to change cpu_physical_memory_get_dirty at
>>> all?
>>>
>>> I am saying to do something like:
>>>
>>> void qemu_physical_sync_dirty_bitmap(ram_addr_t start_addr, ram_addr_t
>>> end_addr)
>>> {
>>> /* sync and merge the two bitmaps between start_addr and end_addr
>>> */
>>> }
>>>
>>> then leave cpu_physical_memory_get_dirty untouched.
>>> I would prefer this approch, it also leaves more space to other
>>> optimizations.
>>>
>> That's how current kvm userspace works. It's also more correct, since the
>> kvm bitmap feeds both the vga dirty bits and the live migration dirty bits.
>
> My reason to do this way, was to be lazy about updating the dirty bitmap.
> But if the common case is to check for all pages in the region, then
> it won't matter much.
We have an optimization not to always check for all pages in the region,
it is not really good looking, but it is working fine.
I could send a patch with this optimization after yours, it only affects
vga.c.
next prev parent reply other threads:[~2008-11-04 15:10 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-11-03 17:31 [Qemu-devel] vga optmization Glauber Costa
2008-11-03 17:43 ` Stefano Stabellini
2008-11-03 17:52 ` Glauber Costa
2008-11-03 18:06 ` Stefano Stabellini
2008-11-03 18:03 ` Blue Swirl
2008-11-03 18:14 ` Glauber Costa
2008-11-03 18:41 ` Blue Swirl
2008-11-03 18:47 ` Glauber Costa
2008-11-03 18:13 ` Fabrice Bellard
2008-11-03 18:18 ` Glauber Costa
2008-11-04 7:23 ` Avi Kivity
2008-11-04 9:31 ` andrzej zaborowski
2008-11-04 11:40 ` Stefano Stabellini
2008-11-04 13:43 ` Glauber Costa
2008-11-04 14:51 ` Avi Kivity
2008-11-04 14:52 ` Anthony Liguori
2008-11-04 14:55 ` Glauber Costa
2008-11-04 15:13 ` Stefano Stabellini [this message]
2008-11-04 20:42 ` Avi Kivity
2008-11-04 20:51 ` Anthony Liguori
2008-11-04 15:01 ` Stefano Stabellini
2008-11-04 20:28 ` Glauber Costa
2008-11-04 20:40 ` Anthony Liguori
2008-11-05 14:42 ` Stefano Stabellini
2008-11-07 11:15 ` Glauber Costa
2008-11-07 11:33 ` Stefano Stabellini
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=491066A4.10302@eu.citrix.com \
--to=stefano.stabellini@eu.citrix.com \
--cc=aliguori@us.ibm.com \
--cc=glommer@redhat.com \
--cc=qemu-devel@nongnu.org \
/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;
as well as URLs for NNTP newsgroup(s).