We're currently assuming EL1 can execute code it shouldn't, and that EL0 shouldn't execute code it can. Fix those cases, and also extend instruction execution control to handle WXN and more.
The first patch addresses EL0 faulting when it should be allowed to execute. The second patch addresses EL1 not faulting when it should, as well as adds in additional execution control. Andrew Jones (2): tcg-aarch64: user doesn't need R/W access to exec tcg-arm: more instruction execution control target-arm/helper.c | 103 ++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 80 insertions(+), 23 deletions(-) -- 1.9.3