summary refs log tree commit diff stats
path: root/gitlab/issues/target_i386/host_arm
diff options
context:
space:
mode:
authorChristian Krinitsin <mail@krinitsin.com>2025-05-21 21:21:26 +0200
committerChristian Krinitsin <mail@krinitsin.com>2025-05-21 21:21:26 +0200
commit4b927bc37359dec23f67d3427fc982945f24f404 (patch)
tree245449ef9146942dc7fffd0235b48b7e70a00bf2 /gitlab/issues/target_i386/host_arm
parentaa8bd79cec7bf6790ddb01d156c2ef2201abbaab (diff)
downloademulator-bug-study-4b927bc37359dec23f67d3427fc982945f24f404.tar.gz
emulator-bug-study-4b927bc37359dec23f67d3427fc982945f24f404.zip
add gitlab issues in toml format
Diffstat (limited to 'gitlab/issues/target_i386/host_arm')
-rw-r--r--gitlab/issues/target_i386/host_arm/accel_TCG/1659.toml35
-rw-r--r--gitlab/issues/target_i386/host_arm/accel_TCG/2101.toml25
-rw-r--r--gitlab/issues/target_i386/host_arm/accel_TCG/2168.toml40
-rw-r--r--gitlab/issues/target_i386/host_arm/accel_TCG/2271.toml26
-rw-r--r--gitlab/issues/target_i386/host_arm/accel_TCG/2560.toml113
-rw-r--r--gitlab/issues/target_i386/host_arm/accel_missing/2027.toml241
-rw-r--r--gitlab/issues/target_i386/host_arm/accel_missing/2531.toml68
7 files changed, 548 insertions, 0 deletions
diff --git a/gitlab/issues/target_i386/host_arm/accel_TCG/1659.toml b/gitlab/issues/target_i386/host_arm/accel_TCG/1659.toml
new file mode 100644
index 00000000..d1a201b5
--- /dev/null
+++ b/gitlab/issues/target_i386/host_arm/accel_TCG/1659.toml
@@ -0,0 +1,35 @@
+id = 1659
+title = "x86 vm fails to stop on Darwin aarch64 when qemu compiled with -O1/-O2"
+state = "closed"
+created_at = "2023-05-17T18:19:05.804Z"
+closed_at = "2023-06-25T08:25:34.498Z"
+labels = ["accel: TCG", "host: arm", "hostos: macOS", "target: i386"]
+url = "https://gitlab.com/qemu-project/qemu/-/issues/1659"
+host-os = "MacOS Ventura 13.3.1 (a)"
+host-arch = "ARM64"
+qemu-version = "8.0.0"
+guest-os = "Ubuntu 20.04"
+guest-arch = "x86"
+description = """When compiled with `-O2` or `-O1` qemu process hangs on full VM stopping on macOS aarch64 host if `shutdown -P now` initiated from guest system."""
+reproduce = """1. Compile latest qemu version with -O2 (default value) or -O1 passed 
+2. Run qemu-system-x86_64 with ubuntu image, e.g. https://cloud-images.ubuntu.com/focal/20230215/focal-server-cloudimg-amd64.img and custom cloud-init (for user/password authentication)
+3. Wait until image is loaded, connect via vnc or provide login/password in stdio
+4. Initiate shutdown with `sudo shutdown -P now`
+5. See that VM indefinitely shutdowns
+6. Kill VM from host system with kill -9 <qemu-system-x86_64-process-pid>
+7. Recompile qemu with -O0
+8. Repeat steps 2-4
+9. See that vm successfully stopped, and qemu process exited with code 0"""
+additional = """I've created thread dump from activity monitor with threads which qemu hanging on, attached below
+[sample-qemu-system-x86_64.txt](/uploads/119b89b7f55f4374acb9ae1f9dc2e517/sample-qemu-system-x86_64.txt)
+
+Probably there is some compiler optimisation which prevents qemu threads from receive shutdown signal or appropriate notification from another threads.
+
+The compiler version with which qemu is built:
+```bash
+% cc --version
+Apple clang version 14.0.3 (clang-1403.0.22.14.1)
+Target: arm64-apple-darwin22.4.0
+Thread model: posix
+InstalledDir: /Library/Developer/CommandLineTools/usr/bin
+```"""
diff --git a/gitlab/issues/target_i386/host_arm/accel_TCG/2101.toml b/gitlab/issues/target_i386/host_arm/accel_TCG/2101.toml
new file mode 100644
index 00000000..d9ab520c
--- /dev/null
+++ b/gitlab/issues/target_i386/host_arm/accel_TCG/2101.toml
@@ -0,0 +1,25 @@
+id = 2101
+title = "[qemu-user/qemu-x86_64] run x86_64 'ls /' on aarch64 platform get wrong result"
+state = "opened"
+created_at = "2024-01-16T09:43:03.607Z"
+closed_at = "n/a"
+labels = ["accel: TCG", "host: arm", "linux-user", "target: i386"]
+url = "https://gitlab.com/qemu-project/qemu/-/issues/2101"
+host-os = "Fedora-39/Fedora-36/Fedora-29"
+host-arch = "x86_64"
+qemu-version = "any"
+guest-os = "Fedora-39/Fedora-36/Fedora-29"
+guest-arch = "ARM64/aarch64"
+description = """```
+    qemu-x86_64 -L /tmp/ls-x86_64/root-x86_64-ls  /tmp/ls-x86_64/root-x86_64-ls/bin/ls  -l  /
+    ```
+get wrong result"""
+reproduce = """1. copy /usr/bin/ls and the so library files it depends on from x86_64 platform to aarch64 platform
+2. qemu-x86_64 -L /path/to/x86_64/lib/root/dir  /path/to/ls  /  -l"""
+additional = """Actual test script:
+```
+# host
+curl -Ls https://github.com/tcler/kiss-vm-ns/raw/master/utils/archive-ld-program.sh | sudo bash /dev/stdin ls
+scp  ls.x86_64.ash  root@jiyin-fedora-39_aarch64:
+ssh root@jiyin-fedora-39_aarch64 ./ls.x86_64.ash -l /
+```"""
diff --git a/gitlab/issues/target_i386/host_arm/accel_TCG/2168.toml b/gitlab/issues/target_i386/host_arm/accel_TCG/2168.toml
new file mode 100644
index 00000000..17a15d30
--- /dev/null
+++ b/gitlab/issues/target_i386/host_arm/accel_TCG/2168.toml
@@ -0,0 +1,40 @@
+id = 2168
+title = "qemu-x86_64: segfault when running grep on arm64 host"
+state = "closed"
+created_at = "2024-02-15T01:52:52.932Z"
+closed_at = "2024-06-08T21:02:32.305Z"
+labels = ["accel: TCG", "host: arm", "kind::Bug", "linux-user", "target: i386"]
+url = "https://gitlab.com/qemu-project/qemu/-/issues/2168"
+host-os = "Gentoo"
+host-arch = "ARM64"
+qemu-version = "qemu-x86_64 version 8.2.1"
+guest-os = "Gentoo"
+guest-arch = "x86_64"
+description = """An internal segmentation fault occurs when attempting to run `grep` in a Gentoo stage3 chroot"""
+reproduce = """1. Unpack an x86_64 chroot environment (easiest way is using one of Gentoo's stage3s from https://get.gentoo.org)
+2. Run `qemu-x86_64 -L /path/to/x86_64/chroot /path/to/x86_64/chroot/bin/grep`"""
+additional = """It seems this only occurs in 8.x.x, 7.x.x does not have this segfault.
+
+Output:
+```
+# qemu-x86_64 -L /bugs/grep-sandbox /bugs/grep-sandbox/bin/grep
+qemu-x86_64: QEMU internal SIGSEGV {code=MAPERR, addr=0x20}
+Segmentation fault
+```
+
+GDB bt:
+```
+(gdb) bt
+#0  open_self_maps_2 (opaque=0xffffffffd0b0, guest_start=18446744073699065856, guest_end=<optimized out>, flags=12) at ../linux-user/syscall.c:8089
+#1  0x000000000048539c in walk_memory_regions (priv=priv@entry=0xffffffffd0b0, fn=fn@entry=0x4a13e4 <open_self_maps_2>) at ../accel/tcg/user-exec.c:176
+#2  0x00000000004a20bc in open_self_maps_1 (smaps=false, fd=3, env=<optimized out>) at ../linux-user/syscall.c:8112
+#3  open_self_maps (cpu_env=<optimized out>, fd=3) at ../linux-user/syscall.c:8122
+#4  0x00000000004aaa00 in do_guest_openat (cpu_env=cpu_env@entry=0x862050, dirfd=dirfd@entry=-100, fname=fname@entry=0x5555555776f1 "/proc/self/maps", flags=0, mode=mode@entry=0, safe=safe@entry=true)
+    at ../linux-user/syscall.c:8381
+#5  0x00000000004b0cc4 in do_syscall1 (cpu_env=cpu_env@entry=0x862050, num=num@entry=257, arg1=arg1@entry=4294967196, arg2=arg2@entry=93824992376561, arg3=arg3@entry=0, arg4=arg4@entry=0,
+    arg5=arg5@entry=93824992373306, arg6=arg6@entry=0, arg8=0, arg7=0) at ../linux-user/syscall.c:9075
+#6  0x00000000004b2770 in do_syscall (cpu_env=cpu_env@entry=0x862050, num=257, arg1=4294967196, arg2=93824992376561, arg3=0, arg4=0, arg5=93824992373306, arg6=0, arg7=arg7@entry=0, arg8=arg8@entry=0)
+    at ../linux-user/syscall.c:13658
+#7  0x0000000000404fdc in cpu_loop (env=env@entry=0x862050) at ../linux-user/x86_64/../i386/cpu_loop.c:242
+#8  0x0000000000400d7c in main (argc=4, argv=0xffffffffed48, envp=<optimized out>) at ../linux-user/main.c:1014
+```"""
diff --git a/gitlab/issues/target_i386/host_arm/accel_TCG/2271.toml b/gitlab/issues/target_i386/host_arm/accel_TCG/2271.toml
new file mode 100644
index 00000000..16d1429c
--- /dev/null
+++ b/gitlab/issues/target_i386/host_arm/accel_TCG/2271.toml
@@ -0,0 +1,26 @@
+id = 2271
+title = "pci passthrough fails from aarch64 to amd64 guest"
+state = "opened"
+created_at = "2024-04-06T18:05:44.288Z"
+closed_at = "n/a"
+labels = ["VFIO", "accel: TCG", "host: arm", "kind::Feature Request", "target: i386"]
+url = "https://gitlab.com/qemu-project/qemu/-/issues/2271"
+host-os = "Ubuntu 23.10"
+host-arch = "aarch64"
+qemu-version = "QEMU emulator version 8.0.4 (Debian 1:8.0.4+dfsg-1ubuntu3.23.10.3)"
+guest-os = "Ubuntu 22.04"
+guest-arch = "AMD64"
+description = """**PCIe device Pass-thru from aarch64 host to amd64 guest fails with the below**
+
+qemu-system-amd64: -device vfio-pci,host=0003:06:00.0: VFIO_MAP_DMA failed: Invalid argument
+qemu-system-amd64: -device vfio-pci,host=0003:06:00.0: vfio 0003:06:00.0: failed to setup container for group 25: memory listener initialization failed: Region pc.ram: vfio_dma_map(0xba4058207210, 0x100000, 0xbff00000, 0xeba70a300000) = -22 (Invalid argument)
+
+pass-thru with same command line syntax works correctly if the guest is aarch64 (qemu-system-aarch64).
+
+AMD64 guest VM otherwise works correctly if -device vfio-pci is not used.
+
+libvirt / virtmanager fail for aarch64 host -> amd64 guest as well."""
+reproduce = """1. Unbind pass-thru device from host.
+2. Attach pass-thru device to vfio-pci
+3. Execute qemu-system-amd64 as above."""
+additional = "n/a"
diff --git a/gitlab/issues/target_i386/host_arm/accel_TCG/2560.toml b/gitlab/issues/target_i386/host_arm/accel_TCG/2560.toml
new file mode 100644
index 00000000..b4d28d14
--- /dev/null
+++ b/gitlab/issues/target_i386/host_arm/accel_TCG/2560.toml
@@ -0,0 +1,113 @@
+id = 2560
+title = "Go garbage collector crashes when using qemu-x86_64 on an aarch64 host"
+state = "opened"
+created_at = "2024-09-05T19:08:46.266Z"
+closed_at = "n/a"
+labels = ["accel: TCG", "host: arm", "kind::Feature Request", "linux-user", "target: i386"]
+url = "https://gitlab.com/qemu-project/qemu/-/issues/2560"
+host-os = "Alpine Linux"
+host-arch = "aarch64"
+qemu-version = "from 9.0.1"
+guest-os = "n/a"
+guest-arch = "x86_64"
+description = """Apps compiled for Go and the Go compiler/tool itself crash when they are run with `qemu-x86_64` on an AARCH64 host system. This was not a problem on QEMU 8.2.x (I bisected, see further down). I also seem to recall that Go 1.21 is fine on QEMU 9.x, so maybe some recent change in Go 1.22 + recent changes in QEMU broke something?
+
+The crash from Go seems to be in the garbage collector, I cannot reproduce the issue when I disable the GC with `GOGC=off`.
+
+Output from Go when it crashes:
+
+```
+$ sudo chroot . go build main.go
+runtime: lfstack.push invalid packing: node=0xffff6542b2c0 cnt=0x1 packed=0xffff6542b2c00001 -> node=0xffffffff6542b2c0
+fatal error: lfstack.push
+
+runtime stack:
+runtime.throw({0xa95b29?, 0x797b1e2a383c?})
+        runtime/panic.go:1023 +0x5c fp=0xc000515f08 sp=0xc000515ed8 pc=0x43c27c
+runtime.(*lfstack).push(0x0?, 0xc0005041c0?)
+        runtime/lfstack.go:29 +0x125 fp=0xc000515f48 sp=0xc000515f08 pc=0x40fd45
+runtime.(*spanSetBlockAlloc).free(...)
+        runtime/mspanset.go:322
+runtime.(*spanSet).reset(0xf46980)
+        runtime/mspanset.go:264 +0x79 fp=0xc000515f78 sp=0xc000515f48 pc=0x437219
+runtime.finishsweep_m()
+        runtime/mgcsweep.go:258 +0x8d fp=0xc000515fb8 sp=0xc000515f78 pc=0x42a6cd
+runtime.gcStart.func2()
+        runtime/mgc.go:685 +0xf fp=0xc000515fc8 sp=0xc000515fb8 pc=0x46e40f
+runtime.systemstack(0x0)
+        runtime/asm_amd64.s:509 +0x4a fp=0xc000515fd8 sp=0xc000515fc8 pc=0x47442a
+````"""
+reproduce = """0. Use an aarch64 host system!
+
+1. Set up binfmt to use qemu-x86_64:
+
+```
+$ cat /proc/sys/fs/binfmt_misc/qemu-x86_64
+enabled
+interpreter /usr/bin/qemu-x86_64
+flags: OCF
+offset 0
+magic 7f454c4602010100000000000000000002003e00
+mask fffffffffffefe00fffffffffffffffffeffffff
+```
+
+2. Download/extract x86_64 rootfs:
+
+```
+$ curl -O https://dl-cdn.alpinelinux.org/alpine/v3.20/releases/x86_64/alpine-minirootfs-3.20.2-x86_64.tar.gz\t
+```
+
+3. Create example app in the x86_64 rootfs:
+
+```
+package main
+
+func main() {
+}
+```
+
+4. Build using chroot:
+
+```
+$ sudo chroot /path/to/x86_64/rootfs apk add go
+$ sudo chroot /path/to/x86_64/rootfs go build main.go
+runtime: lfstack.push invalid packing: node=0xffff6542b2c0 cnt=0x1 packed=0xffff6542b2c00001 -> node=0xffffffff6542b2c0
+fatal error: lfstack.push
+...
+```
+
+5. As noted previously, if the Go garbage collector is disabled, then it works, presumably because it avoids the bug(?) in QEMU:
+
+```
+$ sudo chroot . env GOGC=off go build main.go
+# might have to mount /dev to build successfully, but Go doesn't panic!
+```"""
+additional = """I've bisected this exact crash/failure to:
+
+```
+commit 2952b642a555207748dd961fcbfdc48f198eebb6
+Author: Richard Henderson <richard.henderson@linaro.org>
+Date:   Tue Feb 13 10:20:27 2024 -1000
+
+    linux-user: Split out do_munmap
+
+    Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
+    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
+```
+
+Though a different crash starts happening at the commit before that one:
+
+```
+commit ad87d26e6bb13257409f412224c862fc54025e8b
+Author: Richard Henderson <richard.henderson@linaro.org>
+Date:   Tue Jan 2 12:57:55 2024 +1100
+
+    linux-user: Do early mmap placement only for reserved_va
+
+    For reserved_va, place all non-fixed maps then proceed
+    as for MAP_FIXED.
+
+    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
+```
+
+FYI @rth7680"""
diff --git a/gitlab/issues/target_i386/host_arm/accel_missing/2027.toml b/gitlab/issues/target_i386/host_arm/accel_missing/2027.toml
new file mode 100644
index 00000000..60c4dcca
--- /dev/null
+++ b/gitlab/issues/target_i386/host_arm/accel_missing/2027.toml
@@ -0,0 +1,241 @@
+id = 2027
+title = "Go runtime panic with qemu-x86_64-static on aarch64 (bisected)"
+state = "opened"
+created_at = "2023-12-10T13:38:47.943Z"
+closed_at = "n/a"
+labels = ["host: arm", "linux-user", "target: i386", "workflow::Triaged"]
+url = "https://gitlab.com/qemu-project/qemu/-/issues/2027"
+host-os = "Fedora 39 Asahi Remix"
+host-arch = "aarch64"
+qemu-version = "qemu-x86_64 version 8.1.1 (qemu-8.1.1-1.fc39)"
+guest-os = "Fedora 39 Asahi Remix"
+guest-arch = "x86"
+description = """I have run into some crashes with certain x86 Go binaries running on arm64 (Asahi Linux) using qemu-user-static. The issue is also reproducible on current master (9c74490bff6c8886a922008d0c9ce6cae70dd17e). I have bisected the issue to commit 2d708164e0475064e0e2167bd73e8570e22df1e0:
+
+```
+first bad commit: [2d708164e0475064e0e2167bd73e8570e22df1e0] linux-user: Define TASK_UNMAPPED_BASE in $guest/target_mman.h
+```"""
+reproduce = """1. Build example Go program `GOARCH=amd64 go build -o crashing .`
+2. Run it with `qemu-x86_64-static ./crashing`
+
+<details><summary>Go program to reproduce</summary>
+
+```go
+package main
+
+import "crypto/x509"
+
+func main() {
+  x509.SystemCertPool()
+}
+```
+
+</details>"""
+additional = """<details><summary>Go program stacktrace</summary>
+
+```
+runtime: lfstack.push invalid packing: node=0xffff3c3a9780 cnt=0x1 packed=0xffff3c3a97800001 -> node=0xffffffff3c3a9780
+fatal error: lfstack.push
+
+runtime stack:
+runtime.throw({0x52cb61?, 0x2ce5?})
+\t/usr/lib/golang/src/runtime/panic.go:1077 +0x5c fp=0xc000613f08 sp=0xc000613ed8 pc=0x433d5c
+runtime.(*lfstack).push(0xa0000000002?, 0xffffffffffffefe8?)
+\t/usr/lib/golang/src/runtime/lfstack.go:29 +0x125 fp=0xc000613f48 sp=0xc000613f08 pc=0x40ac25
+runtime.(*spanSetBlockAlloc).free(...)
+\t/usr/lib/golang/src/runtime/mspanset.go:322
+runtime.(*spanSet).reset(0x64d220)
+\t/usr/lib/golang/src/runtime/mspanset.go:264 +0x79 fp=0xc000613f78 sp=0xc000613f48 pc=0x42ef79
+runtime.finishsweep_m()
+\t/usr/lib/golang/src/runtime/mgcsweep.go:260 +0x95 fp=0xc000613fb8 sp=0xc000613f78 pc=0x423455
+runtime.gcStart.func2()
+\t/usr/lib/golang/src/runtime/mgc.go:687 +0xf fp=0xc000613fc8 sp=0xc000613fb8 pc=0x45bd8f
+traceback: unexpected SPWRITE function runtime.systemstack
+runtime.systemstack()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:509 +0x4a fp=0xc000613fd8 sp=0xc000613fc8 pc=0x46016a
+
+goroutine 1 [running]:
+runtime.systemstack_switch()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:474 +0x8 fp=0xc0001bb9f0 sp=0xc0001bb9e0 pc=0x460108
+runtime.gcStart({0xc000600000?, 0x98370?, 0x307800?})
+\t/usr/lib/golang/src/runtime/mgc.go:686 +0x2e5 fp=0xc0001bba88 sp=0xc0001bb9f0 pc=0x418e05
+runtime.mallocgc(0x98370, 0x50bb80, 0x1)
+\t/usr/lib/golang/src/runtime/malloc.go:1242 +0x76f fp=0xc0001bbaf0 sp=0xc0001bba88 pc=0x40caaf
+runtime.makeslice(0xc0001840a8?, 0x26?, 0x0?)
+\t/usr/lib/golang/src/runtime/slice.go:103 +0x49 fp=0xc0001bbb18 sp=0xc0001bbaf0 pc=0x449729
+os.ReadFile({0xc00035a0f0?, 0x52dcd6?})
+\t/usr/lib/golang/src/os/file.go:738 +0xe5 fp=0xc0001bbbf0 sp=0xc0001bbb18 pc=0x49ed25
+crypto/x509.loadSystemRoots()
+\t/usr/lib/golang/src/crypto/x509/root_unix.go:70 +0x3d4 fp=0xc0001bbcd8 sp=0xc0001bbbf0 pc=0x4fdef4
+crypto/x509.initSystemRoots()
+\t/usr/lib/golang/src/crypto/x509/root.go:30 +0x5c fp=0xc0001bbd10 sp=0xc0001bbcd8 pc=0x4fd9fc
+sync.(*Once).doSlow(0x1?, 0xb30000c00018ada0?)
+\t/usr/lib/golang/src/sync/once.go:74 +0xbf fp=0xc0001bbd70 sp=0xc0001bbd10 pc=0x467bff
+sync.(*Once).Do(...)
+\t/usr/lib/golang/src/sync/once.go:65
+crypto/x509.systemRootsPool()
+\t/usr/lib/golang/src/crypto/x509/root.go:21 +0x45 fp=0xc0001bbdc0 sp=0xc0001bbd70 pc=0x4fd8a5
+crypto/x509.SystemCertPool()
+\t/usr/lib/golang/src/crypto/x509/cert_pool.go:112 +0x25 fp=0xc0001bbf30 sp=0xc0001bbdc0 pc=0x4f6705
+main.main()
+\t/home/cyrill/dev/goruntime-crash/main.go:6 +0xf fp=0xc0001bbf40 sp=0xc0001bbf30 pc=0x4ff18f
+runtime.main()
+\t/usr/lib/golang/src/runtime/proc.go:267 +0x2bb fp=0xc0001bbfe0 sp=0xc0001bbf40 pc=0x43673b
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc0001bbfe8 sp=0xc0001bbfe0 pc=0x461f61
+
+goroutine 2 [force gc (idle)]:
+runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
+\t/usr/lib/golang/src/runtime/proc.go:398 +0xce fp=0xc00004efa8 sp=0xc00004ef88 pc=0x436b8e
+runtime.goparkunlock(...)
+\t/usr/lib/golang/src/runtime/proc.go:404
+runtime.forcegchelper()
+\t/usr/lib/golang/src/runtime/proc.go:322 +0xb3 fp=0xc00004efe0 sp=0xc00004efa8 pc=0x436a13
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc00004efe8 sp=0xc00004efe0 pc=0x461f61
+created by runtime.init.6 in goroutine 1
+\t/usr/lib/golang/src/runtime/proc.go:310 +0x1a
+
+goroutine 3 [GC sweep wait]:
+runtime.gopark(0x1?, 0x0?, 0x0?, 0x0?, 0x0?)
+\t/usr/lib/golang/src/runtime/proc.go:398 +0xce fp=0xc00004f778 sp=0xc00004f758 pc=0x436b8e
+runtime.goparkunlock(...)
+\t/usr/lib/golang/src/runtime/proc.go:404
+runtime.bgsweep(0x0?)
+\t/usr/lib/golang/src/runtime/mgcsweep.go:321 +0xdf fp=0xc00004f7c8 sp=0xc00004f778 pc=0x4235bf
+runtime.gcenable.func1()
+\t/usr/lib/golang/src/runtime/mgc.go:200 +0x25 fp=0xc00004f7e0 sp=0xc00004f7c8 pc=0x418945
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc00004f7e8 sp=0xc00004f7e0 pc=0x461f61
+created by runtime.gcenable in goroutine 1
+\t/usr/lib/golang/src/runtime/mgc.go:200 +0x66
+
+goroutine 4 [GC scavenge wait]:
+runtime.gopark(0xc00006c000?, 0x570658?, 0x0?, 0x0?, 0x0?)
+\t/usr/lib/golang/src/runtime/proc.go:398 +0xce fp=0xc00004ff70 sp=0xc00004ff50 pc=0x436b8e
+runtime.goparkunlock(...)
+\t/usr/lib/golang/src/runtime/proc.go:404
+runtime.(*scavengerState).park(0x625680)
+\t/usr/lib/golang/src/runtime/mgcscavenge.go:425 +0x49 fp=0xc00004ffa0 sp=0xc00004ff70 pc=0x420e49
+runtime.bgscavenge(0x0?)
+\t/usr/lib/golang/src/runtime/mgcscavenge.go:658 +0x59 fp=0xc00004ffc8 sp=0xc00004ffa0 pc=0x4213f9
+runtime.gcenable.func2()
+\t/usr/lib/golang/src/runtime/mgc.go:201 +0x25 fp=0xc00004ffe0 sp=0xc00004ffc8 pc=0x4188e5
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc00004ffe8 sp=0xc00004ffe0 pc=0x461f61
+created by runtime.gcenable in goroutine 1
+\t/usr/lib/golang/src/runtime/mgc.go:201 +0xa5
+
+goroutine 17 [finalizer wait]:
+runtime.gopark(0x400000?, 0x10004e670?, 0x0?, 0x0?, 0x654640?)
+\t/usr/lib/golang/src/runtime/proc.go:398 +0xce fp=0xc00004e628 sp=0xc00004e608 pc=0x436b8e
+runtime.runfinq()
+\t/usr/lib/golang/src/runtime/mfinal.go:193 +0x107 fp=0xc00004e7e0 sp=0xc00004e628 pc=0x4179c7
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc00004e7e8 sp=0xc00004e7e0 pc=0x461f61
+created by runtime.createfing in goroutine 1
+\t/usr/lib/golang/src/runtime/mfinal.go:163 +0x3d
+
+goroutine 18 [GC worker (idle)]:
+runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
+\t/usr/lib/golang/src/runtime/proc.go:398 +0xce fp=0xc00004a750 sp=0xc00004a730 pc=0x436b8e
+runtime.gcBgMarkWorker()
+\t/usr/lib/golang/src/runtime/mgc.go:1293 +0xe5 fp=0xc00004a7e0 sp=0xc00004a750 pc=0x41a2c5
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc00004a7e8 sp=0xc00004a7e0 pc=0x461f61
+created by runtime.gcBgMarkStartWorkers in goroutine 1
+\t/usr/lib/golang/src/runtime/mgc.go:1217 +0x1c
+
+goroutine 19 [GC worker (idle)]:
+runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
+\t/usr/lib/golang/src/runtime/proc.go:398 +0xce fp=0xc00004af50 sp=0xc00004af30 pc=0x436b8e
+runtime.gcBgMarkWorker()
+\t/usr/lib/golang/src/runtime/mgc.go:1293 +0xe5 fp=0xc00004afe0 sp=0xc00004af50 pc=0x41a2c5
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc00004afe8 sp=0xc00004afe0 pc=0x461f61
+created by runtime.gcBgMarkStartWorkers in goroutine 1
+\t/usr/lib/golang/src/runtime/mgc.go:1217 +0x1c
+
+goroutine 33 [GC worker (idle)]:
+runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
+\t/usr/lib/golang/src/runtime/proc.go:398 +0xce fp=0xc000090750 sp=0xc000090730 pc=0x436b8e
+runtime.gcBgMarkWorker()
+\t/usr/lib/golang/src/runtime/mgc.go:1293 +0xe5 fp=0xc0000907e0 sp=0xc000090750 pc=0x41a2c5
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc0000907e8 sp=0xc0000907e0 pc=0x461f61
+created by runtime.gcBgMarkStartWorkers in goroutine 1
+\t/usr/lib/golang/src/runtime/mgc.go:1217 +0x1c
+
+goroutine 20 [GC worker (idle)]:
+runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
+\t/usr/lib/golang/src/runtime/proc.go:398 +0xce fp=0xc00004b750 sp=0xc00004b730 pc=0x436b8e
+runtime.gcBgMarkWorker()
+\t/usr/lib/golang/src/runtime/mgc.go:1293 +0xe5 fp=0xc00004b7e0 sp=0xc00004b750 pc=0x41a2c5
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc00004b7e8 sp=0xc00004b7e0 pc=0x461f61
+created by runtime.gcBgMarkStartWorkers in goroutine 1
+\t/usr/lib/golang/src/runtime/mgc.go:1217 +0x1c
+
+goroutine 49 [GC worker (idle)]:
+runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
+\t/usr/lib/golang/src/runtime/proc.go:398 +0xce fp=0xc00008c750 sp=0xc00008c730 pc=0x436b8e
+runtime.gcBgMarkWorker()
+\t/usr/lib/golang/src/runtime/mgc.go:1293 +0xe5 fp=0xc00008c7e0 sp=0xc00008c750 pc=0x41a2c5
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc00008c7e8 sp=0xc00008c7e0 pc=0x461f61
+created by runtime.gcBgMarkStartWorkers in goroutine 1
+\t/usr/lib/golang/src/runtime/mgc.go:1217 +0x1c
+
+goroutine 21 [GC worker (idle)]:
+runtime.gopark(0xa740c76b8ab?, 0x0?, 0x0?, 0x0?, 0x0?)
+\t/usr/lib/golang/src/runtime/proc.go:398 +0xce fp=0xc00004bf50 sp=0xc00004bf30 pc=0x436b8e
+runtime.gcBgMarkWorker()
+\t/usr/lib/golang/src/runtime/mgc.go:1293 +0xe5 fp=0xc00004bfe0 sp=0xc00004bf50 pc=0x41a2c5
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc00004bfe8 sp=0xc00004bfe0 pc=0x461f61
+created by runtime.gcBgMarkStartWorkers in goroutine 1
+\t/usr/lib/golang/src/runtime/mgc.go:1217 +0x1c
+
+goroutine 22 [GC worker (idle)]:
+runtime.gopark(0xa740cc9dc5e?, 0x0?, 0x0?, 0x0?, 0x0?)
+\t/usr/lib/golang/src/runtime/proc.go:398 +0xce fp=0xc00004c750 sp=0xc00004c730 pc=0x436b8e
+runtime.gcBgMarkWorker()
+\t/usr/lib/golang/src/runtime/mgc.go:1293 +0xe5 fp=0xc00004c7e0 sp=0xc00004c750 pc=0x41a2c5
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc00004c7e8 sp=0xc00004c7e0 pc=0x461f61
+created by runtime.gcBgMarkStartWorkers in goroutine 1
+\t/usr/lib/golang/src/runtime/mgc.go:1217 +0x1c
+
+goroutine 23 [GC worker (idle)]:
+runtime.gopark(0x654640?, 0x1?, 0xba?, 0x5f?, 0x0?)
+\t/usr/lib/golang/src/runtime/proc.go:398 +0xce fp=0xc00004cf50 sp=0xc00004cf30 pc=0x436b8e
+runtime.gcBgMarkWorker()
+\t/usr/lib/golang/src/runtime/mgc.go:1293 +0xe5 fp=0xc00004cfe0 sp=0xc00004cf50 pc=0x41a2c5
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc00004cfe8 sp=0xc00004cfe0 pc=0x461f61
+created by runtime.gcBgMarkStartWorkers in goroutine 1
+\t/usr/lib/golang/src/runtime/mgc.go:1217 +0x1c
+
+goroutine 24 [GC worker (idle)]:
+runtime.gopark(0xa740c58ec16?, 0x0?, 0x0?, 0x0?, 0x0?)
+\t/usr/lib/golang/src/runtime/proc.go:398 +0xce fp=0xc00004d750 sp=0xc00004d730 pc=0x436b8e
+runtime.gcBgMarkWorker()
+\t/usr/lib/golang/src/runtime/mgc.go:1293 +0xe5 fp=0xc00004d7e0 sp=0xc00004d750 pc=0x41a2c5
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc00004d7e8 sp=0xc00004d7e0 pc=0x461f61
+created by runtime.gcBgMarkStartWorkers in goroutine 1
+\t/usr/lib/golang/src/runtime/mgc.go:1217 +0x1c
+
+goroutine 34 [GC worker (idle)]:
+runtime.gopark(0x654640?, 0x1?, 0x7a?, 0xa3?, 0x0?)
+\t/usr/lib/golang/src/runtime/proc.go:398 +0xce fp=0xc000090f50 sp=0xc000090f30 pc=0x436b8e
+runtime.gcBgMarkWorker()
+\t/usr/lib/golang/src/runtime/mgc.go:1293 +0xe5 fp=0xc000090fe0 sp=0xc000090f50 pc=0x41a2c5
+runtime.goexit()
+\t/usr/lib/golang/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000090fe8 sp=0xc000090fe0 pc=0x461f61
+created by runtime.gcBgMarkStartWorkers in goroutine 1
+\t/usr/lib/golang/src/runtime/mgc.go:1217 +0x1c
+exit status 2
+```
+
+</details>"""
diff --git a/gitlab/issues/target_i386/host_arm/accel_missing/2531.toml b/gitlab/issues/target_i386/host_arm/accel_missing/2531.toml
new file mode 100644
index 00000000..e3b2797e
--- /dev/null
+++ b/gitlab/issues/target_i386/host_arm/accel_missing/2531.toml
@@ -0,0 +1,68 @@
+id = 2531
+title = "QEMU internal SIGSEGV when creating an x86_64 Debian chroot from an aarch64 host."
+state = "closed"
+created_at = "2024-08-22T20:23:04.155Z"
+closed_at = "2024-10-07T16:11:20.811Z"
+labels = ["host: arm", "linux-user", "target: i386", "workflow::Needs Info"]
+url = "https://gitlab.com/qemu-project/qemu/-/issues/2531"
+host-os = "Ubuntu 24.04 LTS (Running in WSL2 on Windows 11)"
+host-arch = "aarch64"
+qemu-version = "qemu-x86_64 version 8.2.2 (Debian 1:8.2.2+ds-0ubuntu1)"
+guest-os = "Debian 12"
+guest-arch = "x86_64"
+description = """When I try to create a x86_64 Debian chroot using debootstrap from an aarch64 host system, QEMU segfaults causing the process to fail."""
+reproduce = """1. Run `sudo apt install debootstrap qemu-user-static binfmt-support`
+2. Run `sudo debootstrap --arch amd64 bookworm debian_chroot http://deb.debian.org/debian/`"""
+additional = """End of deboostrap output:
+```
+I: Configuring dash...
+I: Configuring libpam-modules:amd64...
+I: Configuring grep...
+I: Configuring perl-base...
+I: Configuring gzip...
+I: Configuring passwd...
+I: Configuring login...
+I: Configuring apt...
+I: Configuring adduser...
+I: Configuring libc-bin...
+W: Failure while configuring required packages.
+W: See /home/allen/debian_chroot/debootstrap/debootstrap.log for details (possibly the package passwd is at fault)
+```
+
+End of debootstrap log:
+```
+$ tail /home/allen/debian_chroot/debootstrap/debootstrap.log -n30
+Setting up grep (3.8-5) ...
+Setting up perl-base (5.36.0-7+deb12u1) ...
+Setting up gzip (1.12-1) ...
+Setting up passwd (1:4.13+dfsg1-1+b1) ...
+x86_64-binfmt-P: QEMU internal SIGSEGV {code=MAPERR, addr=0x20}
+Segmentation fault
+groupadd: group 'shadow' already exists
+Group ID 42 has been allocated for the shadow group.  You have either
+used 42 yourself or created a shadow group with a different ID.
+Please correct this problem and reconfigure with dpkg --configure passwd''.
+
+Note that both user and group IDs in the range 0-99 are globally
+allocated by the Debian project and must be the same on every Debian
+system.
+dpkg: error processing package passwd (--configure):
+ installed passwd package post-installation script subprocess returned error exit status 1
+Setting up libpam-runtime (1.5.2-6+deb12u1) ...
+Setting up login (1:4.13+dfsg1-1+b1) ...
+dpkg: apt: dependency problems, but configuring anyway as you requested:
+ apt depends on adduser.
+
+Setting up apt (2.6.1) ...
+dpkg: adduser: dependency problems, but configuring anyway as you requested:
+ adduser depends on passwd; however:
+  Package passwd is not configured yet.
+
+Setting up adduser (3.134) ...
+Processing triggers for libc-bin (2.36-9+deb12u7) ...
+Errors were encountered while processing:
+ passwd
+```
+
+Full debootstrap log:
+[debootstrap.log](/uploads/4eb24abd98a647e08bd03deea897b9dd/debootstrap.log)"""