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 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.