qemu-system-arm segfaults while servicing SYS_HEAPINFO
This bug has been copied automatically from: https://bugs.launchpad.net/qemu/+bug/1918302
I compiled QEMU version 5.2.0 from source on Ubuntu 18.04, and tried to
use it to run the attached bare-metal Arm hello-world image, using the
command line
qemu-system-arm -M microbit -semihosting -nographic -device
loader,file=hello.hex
The result was that qemu-system-arm itself died of a segfault. Compiling
it for debugging, the location of the segfault was in target/arm/arm-
semi.c, in the case handler for the semihosting call TARGET_SYS_HEAPINFO,
on line 1020 which assigns to 'rambase':
const struct arm_boot_info *info = env->boot_info;
target_ulong rambase = info->loader_start;
and the problem seems to be that 'info', aka env->boot_info, is NULL in
this context.