diff mbox series

[v1,2/4] target/arm64: hold BQL when calling do_interrupt()

Message ID 20180926112048.17778-3-alex.bennee@linaro.org
State Superseded
Headers show
Series fixes for kvm/arm64 guest debug | expand

Commit Message

Alex Bennée Sept. 26, 2018, 11:20 a.m. UTC
Fix the assertion failure when running interrupts.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>

---
 target/arm/kvm64.c | 2 ++
 1 file changed, 2 insertions(+)

-- 
2.17.1

Comments

Peter Maydell Oct. 2, 2018, 9:55 a.m. UTC | #1
On 26 September 2018 at 12:20, Alex Bennée <alex.bennee@linaro.org> wrote:
> Fix the assertion failure when running interrupts.

>

> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>

> ---

>  target/arm/kvm64.c | 2 ++

>  1 file changed, 2 insertions(+)

>

> diff --git a/target/arm/kvm64.c b/target/arm/kvm64.c

> index 80ad07ed0c..346e1f1a73 100644

> --- a/target/arm/kvm64.c

> +++ b/target/arm/kvm64.c

> @@ -984,7 +984,9 @@ bool kvm_arm_handle_debug(CPUState *cs, struct kvm_debug_exit_arch *debug_exit)

>      cs->exception_index = EXCP_BKPT;

>      env->exception.syndrome = debug_exit->hsr;

>      env->exception.vaddress = debug_exit->far;

> +    qemu_mutex_lock_iothread();

>      cc->do_interrupt(cs);

> +    qemu_mutex_unlock_iothread();

>

>      return false;

>  }

> --

> 2.17.1


Reviewed-by: Peter Maydell <peter.maydell@linaro.org>


thanks
-- PMM
diff mbox series

Patch

diff --git a/target/arm/kvm64.c b/target/arm/kvm64.c
index 80ad07ed0c..346e1f1a73 100644
--- a/target/arm/kvm64.c
+++ b/target/arm/kvm64.c
@@ -984,7 +984,9 @@  bool kvm_arm_handle_debug(CPUState *cs, struct kvm_debug_exit_arch *debug_exit)
     cs->exception_index = EXCP_BKPT;
     env->exception.syndrome = debug_exit->hsr;
     env->exception.vaddress = debug_exit->far;
+    qemu_mutex_lock_iothread();
     cc->do_interrupt(cs);
+    qemu_mutex_unlock_iothread();
 
     return false;
 }