]> git.ipfire.org Git - thirdparty/qemu.git/commit
linux-user/arm: Do not allocate a commpage at all for M-profile CPUs
authorPhilippe Mathieu-Daudé <philmd@linaro.org>
Tue, 11 Jul 2023 15:34:08 +0000 (17:34 +0200)
committerRichard Henderson <richard.henderson@linaro.org>
Sat, 15 Jul 2023 07:02:33 +0000 (08:02 +0100)
commitd713cf4d6c71076513a10528303b3e337b4d5998
tree4f46c3aaaef1f42ce31a81ec34698769c46fea54
parentac42f443102f601144682de19b69c31889e0ad49
linux-user/arm: Do not allocate a commpage at all for M-profile CPUs

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>
Reviewed-by: Anton Johansson <anjo@rev.ng>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230711153408.68389-1-philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
linux-user/elfload.c