This is an automated email from the ASF dual-hosted git repository. acassis pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/nuttx.git
commit a2a1f881e29f3aacd7f064508aa601386dee2243 Author: Marco Casaroli <[email protected]> AuthorDate: Mon Aug 10 22:03:13 2026 +0200 Documentation/qemu-armv8a: Note fork() and the semihosting flag. The kernel mode section shows the QEMU command but does not say why -semihosting is there. Without it the guest traps in smh_call and stops in AppBringUp, which reads as a kernel defect and is not one. It cost me a session once. Also state that a kernel build is the only mode on this board with POSIX fork(), and that vfork() is available in every mode. Assisted-by: Claude Opus 5 (1M context) <[email protected]> Signed-off-by: Marco Casaroli <[email protected]> --- .../platforms/arm64/qemu/boards/qemu-armv8a/index.rst | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Documentation/platforms/arm64/qemu/boards/qemu-armv8a/index.rst b/Documentation/platforms/arm64/qemu/boards/qemu-armv8a/index.rst index 5b488b0a147..675a02bb5f5 100644 --- a/Documentation/platforms/arm64/qemu/boards/qemu-armv8a/index.rst +++ b/Documentation/platforms/arm64/qemu/boards/qemu-armv8a/index.rst @@ -463,6 +463,16 @@ Running with QEMU: -net none -chardev stdio,id=con,mux=on -serial chardev:con \ -mon chardev=con,mode=readline -kernel ./nuttx +``-semihosting`` is necessary. A kernel build loads its applications over +hostfs. Without the flag the guest traps in ``smh_call`` and stops in +``AppBringUp``, which looks like a kernel defect and is not one. + +A kernel build gives each process its own address environment. This is the +only build mode on this board that provides POSIX ``fork()``: the child +receives its own copy of the memory of the parent, at the same virtual +addresses. ``vfork()`` is available in every build mode. + + Inter-VM share memory Device (ivshmem) --------------------------------------
