qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 0/6] Introduce bit-based phys_ram_dirty, and bit-based dirty page checker.
@ 2010-04-19  9:43 Yoshiaki Tamura
  2010-04-19  9:43 ` [Qemu-devel] [PATCH v3 1/6] Modify DIRTY_FLAG value and DIRTY_IDX introduce to use as indexes of bit-based phys_ram_dirty Yoshiaki Tamura
                   ` (6 more replies)
  0 siblings, 7 replies; 18+ messages in thread
From: Yoshiaki Tamura @ 2010-04-19  9:43 UTC (permalink / raw)
  To: qemu-devel; +Cc: aliguori, ohmura.kei, mtosatti, Yoshiaki Tamura, avi

The dirty and non-dirty pages are checked one by one.  When most of the memory
is not dirty, checking the dirty and non-dirty pages by multiple page size
should be much faster than checking them one by one.  We introduced bit-based
phys_ram_dirty for VGA, CODE, MIGRATION, MASTER, and
cpu_physical_memory_get_dirty_range() for this purpose.

Changes from v2 to v3 are:

- Change FLAGS value to (1,2,4,8), and add IDX (0,1,2,3)
- Use ffs to convert FLAGS to IDX.
- Add a helper function which takes IDX.
- Change the behavior of MASTER as a buffer.
- Change dirty bitmap access to a loop.
- Add brace after if ()
- Move some macros to qemu-common.h.

Yoshiaki Tamura (6):
  Modify DIRTY_FLAG value and DIRTY_IDX introduce to use as indexes of
    bit-based phys_ram_dirty.
  Introduce bit-based phys_ram_dirty for VGA, CODE, MIGRATION and
    MASTER.
  Modifies wrapper functions for byte-based phys_ram_dirty bitmap to
    bit-based     phys_ram_dirty bitmap.
  Introduce cpu_physical_memory_get_dirty_range().
  Use cpu_physical_memory_set_dirty_range() to update phys_ram_dirty.
  Use cpu_physical_memory_get_dirty_range() to check multiple dirty
    pages.

 arch_init.c   |   54 ++++++++++++++---------
 bswap.h       |    2 +
 cpu-all.h     |  131 ++++++++++++++++++++++++++++++++++++++++++++++++--------
 exec.c        |   83 ++++++++++++++++++++++++++++++++++--
 kvm-all.c     |   33 +++++++--------
 qemu-common.h |    3 +
 6 files changed, 243 insertions(+), 63 deletions(-)

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2010-04-19 14:51 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-19  9:43 [Qemu-devel] [PATCH v3 0/6] Introduce bit-based phys_ram_dirty, and bit-based dirty page checker Yoshiaki Tamura
2010-04-19  9:43 ` [Qemu-devel] [PATCH v3 1/6] Modify DIRTY_FLAG value and DIRTY_IDX introduce to use as indexes of bit-based phys_ram_dirty Yoshiaki Tamura
2010-04-19 10:15   ` [Qemu-devel] " Avi Kivity
2010-04-19 10:30     ` Yoshiaki Tamura
2010-04-19  9:43 ` [Qemu-devel] [PATCH v3 2/6] Introduce bit-based phys_ram_dirty for VGA, CODE, MIGRATION and MASTER Yoshiaki Tamura
2010-04-19 10:17   ` [Qemu-devel] " Avi Kivity
2010-04-19 10:36     ` Yoshiaki Tamura
2010-04-19 11:31       ` Yoshiaki Tamura
2010-04-19 11:38         ` Avi Kivity
2010-04-19 11:52           ` Yoshiaki Tamura
2010-04-19 11:56             ` Avi Kivity
2010-04-19 14:51               ` Yoshiaki Tamura
2010-04-19  9:43 ` [Qemu-devel] [PATCH v3 3/6] Modifies wrapper functions for byte-based phys_ram_dirty bitmap to bit-based phys_ram_dirty bitmap Yoshiaki Tamura
2010-04-19  9:43 ` [Qemu-devel] [PATCH v3 4/6] Introduce cpu_physical_memory_get_dirty_range() Yoshiaki Tamura
2010-04-19  9:43 ` [Qemu-devel] [PATCH v3 5/6] Use cpu_physical_memory_set_dirty_range() to update phys_ram_dirty Yoshiaki Tamura
2010-04-19  9:43 ` [Qemu-devel] [PATCH v3 6/6] Use cpu_physical_memory_get_dirty_range() to check multiple dirty pages Yoshiaki Tamura
2010-04-19 10:24 ` [Qemu-devel] Re: [PATCH v3 0/6] Introduce bit-based phys_ram_dirty, and bit-based dirty page checker Avi Kivity
2010-04-19 10:37   ` Yoshiaki Tamura

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