From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54182) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VtE4o-00077b-7M for qemu-devel@nongnu.org; Wed, 18 Dec 2013 05:10:08 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VtE4i-0004cw-6J for qemu-devel@nongnu.org; Wed, 18 Dec 2013 05:10:02 -0500 Received: from mx1.redhat.com ([209.132.183.28]:38780) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VtE4h-0004cn-UG for qemu-devel@nongnu.org; Wed, 18 Dec 2013 05:09:56 -0500 Received: from int-mx01.intmail.prod.int.phx2.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id rBIA9tKW015840 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Wed, 18 Dec 2013 05:09:55 -0500 Message-ID: <52B17490.5080509@redhat.com> Date: Wed, 18 Dec 2013 12:10:24 +0200 From: Orit Wasserman MIME-Version: 1.0 References: <1387293974-24718-1-git-send-email-quintela@redhat.com> <1387293974-24718-10-git-send-email-quintela@redhat.com> In-Reply-To: <1387293974-24718-10-git-send-email-quintela@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 09/38] memory: set single dirty flags when possible List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Juan Quintela , qemu-devel@nongnu.org On 12/17/2013 05:25 PM, Juan Quintela wrote: > Signed-off-by: Juan Quintela > Reviewed-by: Eric Blake > --- > exec.c | 7 ++++--- > include/exec/memory-internal.h | 4 +++- > 2 files changed, 7 insertions(+), 4 deletions(-) > > diff --git a/exec.c b/exec.c > index a1fc280..6981f73 100644 > --- a/exec.c > +++ b/exec.c > @@ -1911,7 +1911,8 @@ static void invalidate_and_set_dirty(hwaddr addr, > /* invalidate code */ > tb_invalidate_phys_page_range(addr, addr + length, 0); > /* set dirty bit */ > - cpu_physical_memory_set_dirty_flags(addr, (0xff & ~CODE_DIRTY_FLAG)); > + cpu_physical_memory_set_dirty_flag(addr, VGA_DIRTY_FLAG); > + cpu_physical_memory_set_dirty_flag(addr, MIGRATION_DIRTY_FLAG); > } > xen_modified_memory(addr, length); > } > @@ -2493,8 +2494,8 @@ void stl_phys_notdirty(hwaddr addr, uint32_t val) > /* invalidate code */ > tb_invalidate_phys_page_range(addr1, addr1 + 4, 0); > /* set dirty bit */ > - cpu_physical_memory_set_dirty_flags( > - addr1, (0xff & ~CODE_DIRTY_FLAG)); > + cpu_physical_memory_set_dirty_flag(addr1, MIGRATION_DIRTY_FLAG); > + cpu_physical_memory_set_dirty_flag(addr1, VGA_DIRTY_FLAG); > } > } > } > diff --git a/include/exec/memory-internal.h b/include/exec/memory-internal.h > index 53cfe83..9f4ad69 100644 > --- a/include/exec/memory-internal.h > +++ b/include/exec/memory-internal.h > @@ -89,7 +89,9 @@ static inline void cpu_physical_memory_set_dirty_flag(ram_addr_t addr, > > static inline void cpu_physical_memory_set_dirty(ram_addr_t addr) > { > - cpu_physical_memory_set_dirty_flags(addr, 0xff); > + cpu_physical_memory_set_dirty_flag(addr, MIGRATION_DIRTY_FLAG); > + cpu_physical_memory_set_dirty_flag(addr, VGA_DIRTY_FLAG); > + cpu_physical_memory_set_dirty_flag(addr, CODE_DIRTY_FLAG); > } > > static inline int cpu_physical_memory_clear_dirty_flags(ram_addr_t addr, > Reviewed-by: Orit Wasserman