[Qemu-devel] [PATCH 13/22] exec: elide calls to tb_lock and tb_unlock

2017-07-04 Thread Paolo Bonzini
Adding assertions fixes link errors.

Reviewed-by: Richard Henderson 
Signed-off-by: Paolo Bonzini 
---
 exec.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/exec.c b/exec.c
index ee61915..a083ff8 100644
--- a/exec.c
+++ b/exec.c
@@ -2317,6 +2317,7 @@ static void notdirty_mem_write(void *opaque, hwaddr 
ram_addr,
 {
 bool locked = false;
 
+assert(tcg_enabled());
 if (!cpu_physical_memory_get_dirty_flag(ram_addr, DIRTY_MEMORY_CODE)) {
 locked = true;
 tb_lock();
@@ -2375,6 +2376,7 @@ static void check_watchpoint(int offset, int len, 
MemTxAttrs attrs, int flags)
 CPUWatchpoint *wp;
 uint32_t cpu_flags;
 
+assert(tcg_enabled());
 if (cpu->watchpoint_hit) {
 /* We re-entered the check after replacing the TB. Now raise
  * the debug interrupt so that is will trigger after the
@@ -2820,6 +2822,7 @@ static void invalidate_and_set_dirty(MemoryRegion *mr, 
hwaddr addr,
 cpu_physical_memory_range_includes_clean(addr, length, 
dirty_log_mask);
 }
 if (dirty_log_mask & (1 << DIRTY_MEMORY_CODE)) {
+assert(tcg_enabled());
 tb_lock();
 tb_invalidate_phys_range(addr, addr + length);
 tb_unlock();
-- 
1.8.3.1





Re: [Qemu-devel] [PATCH 13/22] exec: elide calls to tb_lock and tb_unlock

2017-07-03 Thread Richard Henderson

On 07/03/2017 09:34 AM, Paolo Bonzini wrote:

Adding assertions fixes link errors.

Signed-off-by: Paolo Bonzini
---
  exec.c | 3 +++
  1 file changed, 3 insertions(+)


Reviewed-by: Richard Henderson 


r~



[Qemu-devel] [PATCH 13/22] exec: elide calls to tb_lock and tb_unlock

2017-07-03 Thread Paolo Bonzini
Adding assertions fixes link errors.

Signed-off-by: Paolo Bonzini 
---
 exec.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/exec.c b/exec.c
index ee61915..a083ff8 100644
--- a/exec.c
+++ b/exec.c
@@ -2317,6 +2317,7 @@ static void notdirty_mem_write(void *opaque, hwaddr 
ram_addr,
 {
 bool locked = false;
 
+assert(tcg_enabled());
 if (!cpu_physical_memory_get_dirty_flag(ram_addr, DIRTY_MEMORY_CODE)) {
 locked = true;
 tb_lock();
@@ -2375,6 +2376,7 @@ static void check_watchpoint(int offset, int len, 
MemTxAttrs attrs, int flags)
 CPUWatchpoint *wp;
 uint32_t cpu_flags;
 
+assert(tcg_enabled());
 if (cpu->watchpoint_hit) {
 /* We re-entered the check after replacing the TB. Now raise
  * the debug interrupt so that is will trigger after the
@@ -2820,6 +2822,7 @@ static void invalidate_and_set_dirty(MemoryRegion *mr, 
hwaddr addr,
 cpu_physical_memory_range_includes_clean(addr, length, 
dirty_log_mask);
 }
 if (dirty_log_mask & (1 << DIRTY_MEMORY_CODE)) {
+assert(tcg_enabled());
 tb_lock();
 tb_invalidate_phys_range(addr, addr + length);
 tb_unlock();
-- 
1.8.3.1