From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:57973) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VUdaR-0006JC-Hi for qemu-devel@nongnu.org; Fri, 11 Oct 2013 10:21:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VUdaM-0007AG-6u for qemu-devel@nongnu.org; Fri, 11 Oct 2013 10:21:03 -0400 Received: from mx1.redhat.com ([209.132.183.28]:24204) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VUdaL-00079D-VD for qemu-devel@nongnu.org; Fri, 11 Oct 2013 10:20:58 -0400 From: Juan Quintela Date: Fri, 11 Oct 2013 16:20:44 +0200 Message-Id: <1381501250-19351-2-git-send-email-quintela@redhat.com> In-Reply-To: <1381501250-19351-1-git-send-email-quintela@redhat.com> References: <1381501250-19351-1-git-send-email-quintela@redhat.com> Subject: [Qemu-devel] [PATCH 1/7] vmware_vga: port to test_and_clear instead of test/reset List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: balrog@zabor.org, i.mitsyanko@samsung.com, paul@codesourcery.com, Juan Quintela From: Juan Quintela I am assuming that we are testing all the device pages on the loop, that is right? Signed-off-by: Juan Quintela Signed-off-by: Juan Quintela --- hw/display/vmware_vga.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/hw/display/vmware_vga.c b/hw/display/vmware_vga.c index a6a8cdc..9852a79 100644 --- a/hw/display/vmware_vga.c +++ b/hw/display/vmware_vga.c @@ -1082,7 +1082,7 @@ static void vmsvga_update_display(void *opaque) */ if (memory_region_is_logging(&s->vga.vram)) { vga_sync_dirty_bitmap(&s->vga); - dirty = memory_region_get_dirty(&s->vga.vram, 0, + dirty = memory_region_test_and_clear_dirty(&s->vga.vram, 0, surface_stride(surface) * surface_height(surface), DIRTY_MEMORY_VGA); } @@ -1091,11 +1091,6 @@ static void vmsvga_update_display(void *opaque) dpy_gfx_update(s->vga.con, 0, 0, surface_width(surface), surface_height(surface)); } - if (dirty) { - memory_region_reset_dirty(&s->vga.vram, 0, - surface_stride(surface) * surface_height(surface), - DIRTY_MEMORY_VGA); - } } static void vmsvga_reset(DeviceState *dev) -- 1.8.3.1