qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [RFC v3 07/13] ram_addr.h: Make exclusive bitmap accessors


From: Alvise Rigo
Subject: [Qemu-devel] [RFC v3 07/13] ram_addr.h: Make exclusive bitmap accessors atomic
Date: Fri, 10 Jul 2015 10:23:40 +0200

Suggested-by: Jani Kokkonen <address@hidden>
Suggested-by: Claudio Fontana <address@hidden>
Signed-off-by: Alvise Rigo <address@hidden>
---
 include/exec/ram_addr.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/include/exec/ram_addr.h b/include/exec/ram_addr.h
index 2766541..e51bd65 100644
--- a/include/exec/ram_addr.h
+++ b/include/exec/ram_addr.h
@@ -255,7 +255,7 @@ uint64_t cpu_physical_memory_sync_dirty_bitmap(unsigned 
long *dest,
 /* Exclusive bitmap accessors. */
 static inline void cpu_physical_memory_set_excl_dirty(ram_addr_t addr)
 {
-    set_bit(addr >> TARGET_PAGE_BITS,
+    set_bit_atomic(addr >> TARGET_PAGE_BITS,
             ram_list.dirty_memory[DIRTY_MEMORY_EXCLUSIVE]);
 }
 
@@ -267,8 +267,8 @@ static inline int 
cpu_physical_memory_excl_is_dirty(ram_addr_t addr)
 
 static inline void cpu_physical_memory_clear_excl_dirty(ram_addr_t addr)
 {
-    clear_bit(addr >> TARGET_PAGE_BITS,
-              ram_list.dirty_memory[DIRTY_MEMORY_EXCLUSIVE]);
+    bitmap_test_and_clear_atomic(ram_list.dirty_memory[DIRTY_MEMORY_EXCLUSIVE],
+                                 addr >> TARGET_PAGE_BITS, 1);
 }
 
 #endif
-- 
2.4.5




reply via email to

[Prev in Thread] Current Thread [Next in Thread]