unicorn/qemu/target
Peter Maydell ecd3f0a5df
target/arm: Deliver BKPT/BRK exceptions to correct exception level
Most Arm architectural debug exceptions (eg watchpoints) are ignored
if the configured "debug exception level" is below the current
exception level (so for example EL1 can't arrange to get debug exceptions
for EL2 execution). Exceptions generated by the BRK or BPKT instructions
are a special case -- they must always cause an exception, so if
we're executing above the debug exception level then we
must take them to the current exception level.

This fixes a bug where executing BRK at EL2 could result in an
exception being taken at EL1 (which is strictly forbidden by the
architecture).

Fixes: https://bugs.launchpad.net/qemu/+bug/1838277

Backports commit 987a23224218fa3bb3aa0024ad236dcf29ebde9e from qemu
2019-08-08 19:53:30 -04:00
..
arm target/arm: Deliver BKPT/BRK exceptions to correct exception level 2019-08-08 19:53:30 -04:00
i386 i386: Fix Snowridge CPU model name and features 2019-08-08 19:52:23 -04:00
m68k m68k comments break patch submission due to being incorrectly formatted 2019-08-08 14:26:45 -04:00
mips target/mips: Fix emulation of MSA pack instructions on big endian hosts 2019-08-08 19:51:34 -04:00
riscv RISC-V: Clear load reservations on context switch and SC 2019-08-08 17:15:45 -04:00
sparc cpu: Introduce CPUNegativeOffsetState 2019-06-13 15:08:25 -04:00