[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 04/29] display: add memory_region_sync_dirty_bitm
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PATCH v3 04/29] display: add memory_region_sync_dirty_bitmap calls |
Date: |
Tue, 26 May 2015 18:54:40 +0200 |
These are strictly speaking only needed for KVM and Xen, but it's still
nice to be consistent.
Signed-off-by: Paolo Bonzini <address@hidden>
---
hw/display/cg3.c | 1 +
hw/display/g364fb.c | 1 +
hw/display/sm501.c | 1 +
hw/display/tcx.c | 2 ++
4 files changed, 5 insertions(+)
diff --git a/hw/display/cg3.c b/hw/display/cg3.c
index cbcf518..b94e5e0 100644
--- a/hw/display/cg3.c
+++ b/hw/display/cg3.c
@@ -106,6 +106,7 @@ static void cg3_update_display(void *opaque)
pix = memory_region_get_ram_ptr(&s->vram_mem);
data = (uint32_t *)surface_data(surface);
+ memory_region_sync_dirty_bitmap(&s->vram_mem);
for (y = 0; y < height; y++) {
int update = s->full_update;
diff --git a/hw/display/g364fb.c b/hw/display/g364fb.c
index be62dd6..52a9733 100644
--- a/hw/display/g364fb.c
+++ b/hw/display/g364fb.c
@@ -260,6 +260,7 @@ static void g364fb_update_display(void *opaque)
qemu_console_resize(s->con, s->width, s->height);
}
+ memory_region_sync_dirty_bitmap(&s->mem_vram);
if (s->ctla & CTLA_FORCE_BLANK) {
g364fb_draw_blank(s);
} else if (s->depth == 8) {
diff --git a/hw/display/sm501.c b/hw/display/sm501.c
index 43f8538..15a5ba8 100644
--- a/hw/display/sm501.c
+++ b/hw/display/sm501.c
@@ -1322,6 +1322,7 @@ static void sm501_draw_crt(SM501State * s)
}
/* draw each line according to conditions */
+ memory_region_sync_dirty_bitmap(&s->local_mem_region);
for (y = 0; y < height; y++) {
int update_hwc = draw_hwc_line ? within_hwc_y_range(s, y, 1) : 0;
int update = full_update || update_hwc;
diff --git a/hw/display/tcx.c b/hw/display/tcx.c
index 58faa96..f3faf78 100644
--- a/hw/display/tcx.c
+++ b/hw/display/tcx.c
@@ -353,6 +353,7 @@ static void tcx_update_display(void *opaque)
return;
}
+ memory_region_sync_dirty_bitmap(&ts->vram_mem);
for (y = 0; y < ts->height; page += TARGET_PAGE_SIZE) {
if (memory_region_get_dirty(&ts->vram_mem, page, TARGET_PAGE_SIZE,
DIRTY_MEMORY_VGA)) {
@@ -446,6 +447,7 @@ static void tcx24_update_display(void *opaque)
dd = surface_stride(surface);
ds = 1024;
+ memory_region_sync_dirty_bitmap(&ts->vram_mem);
for (y = 0; y < ts->height; page += TARGET_PAGE_SIZE,
page24 += TARGET_PAGE_SIZE, cpage += TARGET_PAGE_SIZE) {
if (tcx24_check_dirty(ts, page, page24, cpage)) {
--
1.8.3.1
- [Qemu-devel] [PATCH v3 01/29] memory: the only dirty memory flag for users is DIRTY_MEMORY_VGA, (continued)
- [Qemu-devel] [PATCH v3 01/29] memory: the only dirty memory flag for users is DIRTY_MEMORY_VGA, Paolo Bonzini, 2015/05/26
- [Qemu-devel] [PATCH v3 03/29] display: enable DIRTY_MEMORY_VGA tracking explicitly, Paolo Bonzini, 2015/05/26
- [Qemu-devel] [PATCH v3 18/29] translate-all: make less of tb_invalidate_phys_page_range depend on is_cpu_write_access, Paolo Bonzini, 2015/05/26
- [Qemu-devel] [PATCH v3 20/29] exec: invert return value of cpu_physical_memory_get_clean, rename, Paolo Bonzini, 2015/05/26
- [Qemu-devel] [PATCH v3 10/29] kvm: accept non-mapped memory in kvm_dirty_pages_log_change, Paolo Bonzini, 2015/05/26
- [Qemu-devel] [PATCH v3 13/29] ram_addr: tweaks to xen_modified_memory, Paolo Bonzini, 2015/05/26
- [Qemu-devel] [PATCH v3 09/29] memory: track DIRTY_MEMORY_CODE in mr->dirty_log_mask, Paolo Bonzini, 2015/05/26
- [Qemu-devel] [PATCH v3 22/29] memory: do not touch code dirty bitmap unless TCG is enabled, Paolo Bonzini, 2015/05/26
- [Qemu-devel] [PATCH v3 05/29] memory: differentiate memory_region_is_logging and memory_region_get_dirty_log_mask, Paolo Bonzini, 2015/05/26
- [Qemu-devel] [PATCH v3 04/29] display: add memory_region_sync_dirty_bitmap calls,
Paolo Bonzini <=
- [Qemu-devel] [PATCH v3 15/29] exec: move functions to translate-all.h, Paolo Bonzini, 2015/05/26
- [Qemu-devel] [PATCH v3 23/29] bitmap: add atomic set functions, Paolo Bonzini, 2015/05/26
- [Qemu-devel] [PATCH v3 19/29] exec: pass client mask to cpu_physical_memory_set_dirty_range, Paolo Bonzini, 2015/05/26
- [Qemu-devel] [PATCH v3 07/29] framebuffer: check memory_region_is_logging, Paolo Bonzini, 2015/05/26
- [Qemu-devel] [PATCH v3 11/29] memory: include DIRTY_MEMORY_MIGRATION in the dirty log mask, Paolo Bonzini, 2015/05/26