summaryrefslogtreecommitdiffstats
path: root/target/nios2
diff options
context:
space:
mode:
authorPaolo Bonzini2017-03-01 11:28:04 +0100
committerPaolo Bonzini2017-03-14 13:26:37 +0100
commitc0d24e7f70816c8af51ebe9dc74aa276a81858dd (patch)
tree910312fd8941b64c99db074c7278323a5d7bf523 /target/nios2
parentscsi: mptsas: fix the wrong reading size in fetch request (diff)
downloadqemu-c0d24e7f70816c8af51ebe9dc74aa276a81858dd.tar.gz
qemu-c0d24e7f70816c8af51ebe9dc74aa276a81858dd.tar.xz
qemu-c0d24e7f70816c8af51ebe9dc74aa276a81858dd.zip
target/nios2: take BQL around interrupt check
The interrupt controller does not have its own locking. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'target/nios2')
-rw-r--r--target/nios2/op_helper.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/target/nios2/op_helper.c b/target/nios2/op_helper.c
index 538853cda7..efb1c489c9 100644
--- a/target/nios2/op_helper.c
+++ b/target/nios2/op_helper.c
@@ -21,6 +21,7 @@
#include "cpu.h"
#include "exec/helper-proto.h"
#include "exec/cpu_ldst.h"
+#include "qemu/main-loop.h"
#if !defined(CONFIG_USER_ONLY)
void helper_mmu_read_debug(CPUNios2State *env, uint32_t rn)
@@ -35,7 +36,9 @@ void helper_mmu_write(CPUNios2State *env, uint32_t rn, uint32_t v)
void helper_check_interrupts(CPUNios2State *env)
{
+ qemu_mutex_lock_iothread();
nios2_check_interrupts(env);
+ qemu_mutex_unlock_iothread();
}
#endif /* !CONFIG_USER_ONLY */