Skip to content
Snippets Groups Projects
Commit 88e74b61 authored by Richard Henderson's avatar Richard Henderson Committed by Thomas Huth
Browse files

target/microblaze: Collected fixes for env->iflags


There are several problems here that can result in soft lockup,
depending on exactly where an interrupt or exception is delivered:

Include BIMM_FLAG in IFLAGS_TB_MASK, since it needs to follow D_FLAG.
Ensure that iflags is 0 when entering an interrupt/exception handler.
Add mb_cpu_synchronize_from_tb to restore iflags from tb->flags.
The change to t_sync_flags is cosmetic, but makes the code clearer.

This fixes the reported regression in acceptance/replay_kernel.py.

Fixes: 683a247e ("target/microblaze: Store "current" iflags in insn_start")
Tested-by: default avatarThomas Huth <thuth@redhat.com>
Reported-by: default avatarThomas Huth <thuth@redhat.com>
Signed-off-by: default avatarRichard Henderson <richard.henderson@linaro.org>
Message-Id: <20200904190842.2282109-2-richard.henderson@linaro.org>
Signed-off-by: default avatarThomas Huth <thuth@redhat.com>
parent cc9962d8
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment