Commit fc8dc06020f91d29754b5982bca22097ff60ce19
1 parent
f23db169
kqemu_set_notdirty() opt
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1560 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
3 additions
and
0 deletions
kqemu.c
@@ -237,6 +237,9 @@ void kqemu_set_notdirty(CPUState *env, ram_addr_t ram_addr) | @@ -237,6 +237,9 @@ void kqemu_set_notdirty(CPUState *env, ram_addr_t ram_addr) | ||
237 | fprintf(logfile, "kqemu_set_notdirty: addr=%08lx\n", ram_addr); | 237 | fprintf(logfile, "kqemu_set_notdirty: addr=%08lx\n", ram_addr); |
238 | } | 238 | } |
239 | #endif | 239 | #endif |
240 | + /* we only track transitions to dirty state */ | ||
241 | + if (phys_ram_dirty[ram_addr >> TARGET_PAGE_BITS] != 0xff) | ||
242 | + return; | ||
240 | if (nb_ram_pages_to_update >= KQEMU_MAX_RAM_PAGES_TO_UPDATE) | 243 | if (nb_ram_pages_to_update >= KQEMU_MAX_RAM_PAGES_TO_UPDATE) |
241 | nb_ram_pages_to_update = KQEMU_RAM_PAGES_UPDATE_ALL; | 244 | nb_ram_pages_to_update = KQEMU_RAM_PAGES_UPDATE_ALL; |
242 | else | 245 | else |