On 14/11/2017 09:18, Pavel Dovgalyuk wrote:
> 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 61297f8..0473055 100644
> --- a/accel/tcg/cpu-exec.c
> +++ b/accel/tcg/cpu-exec.c
> @@ -594,7 +594,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;
> }
>
>
Thanks, queued for 2.11.
Paolo