Since commit fbd3c4cff6 ("linux-user/arm: Mark the commpage
executable") executing bare-metal (linked with rdimon.specs)
cortex-M code fails as:
$ qemu-arm -cpu cortex-m3 ~/hello.exe.m3
qemu-arm: ../../accel/tcg/user-exec.c:492: page_set_flags: Assertion `last
<= GUEST_ADDR_MAX' failed.
Aborted (core dumped)
Commit 4f5c67f8df ("linux-user/arm: Take more care allocating
commpage") already took care of not allocating a commpage for
M-profile CPUs, however it had to be reverted as commit 6cda41daa2.
Re-introduce the M-profile fix from commit 4f5c67f8df.
Fixes: fbd3c4cff6 ("linux-user/arm: Mark the commpage executable")
Resolves:https://gitlab.com/qemu-project/qemu/-/issues/1755
Reported-by: Christophe Lyon<christophe.lyon@linaro.org>
Suggested-by: Richard Henderson<richard.henderson@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé<philmd@linaro.org>
---
linux-user/elfload.c | 21 +++++++++++++++++----
1 file changed, 17 insertions(+), 4 deletions(-)