other: 0.110 semantic: 0.094 permissions: 0.091 PID: 0.090 files: 0.086 device: 0.083 debug: 0.077 performance: 0.074 boot: 0.064 vnc: 0.057 socket: 0.057 graphic: 0.057 network: 0.032 KVM: 0.030 debug: 0.789 files: 0.038 other: 0.029 PID: 0.025 boot: 0.018 device: 0.017 semantic: 0.017 network: 0.015 performance: 0.014 graphic: 0.010 socket: 0.010 permissions: 0.007 vnc: 0.007 KVM: 0.004 qemu-system-arm segfaults while servicing SYS_HEAPINFO 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. Note that this only happens for M-profile in system emulation mode. ...oh, and also for A-profile where we do a boot of firmware and not a Linux-kernel style boot. Testing with: Subject: [PATCH v5 0/5] semihosting/next (SYS_HEAPINFO) Date: Fri, 12 Mar 2021 10:20:24 +0000 Message-Id: