Skip to content

Commit

Permalink
s390x/tcg: Reset exception_index to -1 instead of 0
Browse files Browse the repository at this point in the history
We use the marker "-1" for "no exception". s390_cpu_do_interrupt() might
get confused by that.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: David Hildenbrand <david@redhat.com>
  • Loading branch information
davidhildenbrand committed Sep 23, 2019
1 parent 4300b7c commit bed04a2
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions target/s390x/mem_helper.c
Expand Up @@ -1747,7 +1747,7 @@ uint32_t HELPER(tprot)(CPUS390XState *env, uint64_t a1, uint64_t a2)

if (env->int_pgm_code == PGM_PROTECTION) {
/* retry if reading is possible */
cs->exception_index = 0;
cs->exception_index = -1;
if (!s390_cpu_virt_mem_check_read(cpu, a1, 0, 1)) {
/* Fetching permitted; storing not permitted */
return 1;
Expand All @@ -1757,7 +1757,7 @@ uint32_t HELPER(tprot)(CPUS390XState *env, uint64_t a1, uint64_t a2)
switch (env->int_pgm_code) {
case PGM_PROTECTION:
/* Fetching not permitted; storing not permitted */
cs->exception_index = 0;
cs->exception_index = -1;
return 2;
case PGM_ADDRESSING:
case PGM_TRANS_SPEC:
Expand All @@ -1767,7 +1767,7 @@ uint32_t HELPER(tprot)(CPUS390XState *env, uint64_t a1, uint64_t a2)
}

/* Translation not available */
cs->exception_index = 0;
cs->exception_index = -1;
return 3;
}

Expand Down

0 comments on commit bed04a2

Please sign in to comment.