[Qemu-devel] [RFCPATCH18/20] cpu-exec: don't overwrite exception_index

Pavel Dovgalyuk posted 1 patch 6 years, 5 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20171031104918.3079.99425.stgit@pasha-VirtualBox
Test checkpatch passed
Test docker passed
Test ppc passed
Test s390x passed
accel/tcg/cpu-exec.c |    4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
[Qemu-devel] [RFCPATCH18/20] cpu-exec: don't overwrite exception_index
Posted by Pavel Dovgalyuk 6 years, 5 months ago
This patch adds a condition before overwriting exception_index fiels.
It is needed when exception_index is already set to some meaningful value.

Signed-off-by: Pavel Dovgalyuk <pavel.dovgaluk@ispras.ru>
---
 accel/tcg/cpu-exec.c |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/accel/tcg/cpu-exec.c b/accel/tcg/cpu-exec.c
index 4318441..35d0240 100644
--- a/accel/tcg/cpu-exec.c
+++ b/accel/tcg/cpu-exec.c
@@ -585,7 +585,9 @@ static inline bool cpu_handle_interrupt(CPUState *cpu,
     if (unlikely(atomic_read(&cpu->exit_request)
         || (use_icount && cpu->icount_decr.u16.low + cpu->icount_extra == 0))) {
         atomic_set(&cpu->exit_request, 0);
-        cpu->exception_index = EXCP_INTERRUPT;
+        if (cpu->exception_index == -1) {
+            cpu->exception_index = EXCP_INTERRUPT;
+        }
         return true;
     }