diff options
| author | Christian Krinitsin <mail@krinitsin.com> | 2025-05-30 16:52:07 +0200 |
|---|---|---|
| committer | Christian Krinitsin <mail@krinitsin.com> | 2025-05-30 16:52:17 +0200 |
| commit | 9260319e7411ff8281700a532caa436f40120ec4 (patch) | |
| tree | 2f6bfe5f3458dd49d328d3a9eb508595450adec0 /gitlab/issues/target_i386/host_arm/accel_TCG | |
| parent | 225caa38269323af1bfc2daadff5ec8bd930747f (diff) | |
| download | qemu-analysis-9260319e7411ff8281700a532caa436f40120ec4.tar.gz qemu-analysis-9260319e7411ff8281700a532caa436f40120ec4.zip | |
gitlab scraper: download in toml and text format
Diffstat (limited to 'gitlab/issues/target_i386/host_arm/accel_TCG')
5 files changed, 0 insertions, 239 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 deleted file mode 100644 index d1a201b5d..000000000 --- a/gitlab/issues/target_i386/host_arm/accel_TCG/1659.toml +++ /dev/null @@ -1,35 +0,0 @@ -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 deleted file mode 100644 index d9ab520c8..000000000 --- a/gitlab/issues/target_i386/host_arm/accel_TCG/2101.toml +++ /dev/null @@ -1,25 +0,0 @@ -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 deleted file mode 100644 index 17a15d302..000000000 --- a/gitlab/issues/target_i386/host_arm/accel_TCG/2168.toml +++ /dev/null @@ -1,40 +0,0 @@ -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 deleted file mode 100644 index 16d1429c9..000000000 --- a/gitlab/issues/target_i386/host_arm/accel_TCG/2271.toml +++ /dev/null @@ -1,26 +0,0 @@ -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 deleted file mode 100644 index b4d28d141..000000000 --- a/gitlab/issues/target_i386/host_arm/accel_TCG/2560.toml +++ /dev/null @@ -1,113 +0,0 @@ -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""" |