summary refs log tree commit diff stats
path: root/results/scraper/launchpad-without-comments/1705118
diff options
context:
space:
mode:
authorChristian Krinitsin <mail@krinitsin.com>2025-06-30 12:24:58 +0000
committerChristian Krinitsin <mail@krinitsin.com>2025-06-30 12:27:06 +0000
commit33606b41d35115f887ea688b1a16f2ff85bf2fe4 (patch)
tree406b2c7b19a087ba437c68f3dbf0b589fa1d6150 /results/scraper/launchpad-without-comments/1705118
parentadedf8771bc4de3113041ca21bd4d0d1c0014b6a (diff)
downloadqemu-analysis-33606b41d35115f887ea688b1a16f2ff85bf2fe4.tar.gz
qemu-analysis-33606b41d35115f887ea688b1a16f2ff85bf2fe4.zip
add launchpad bug reports without comments
Diffstat (limited to 'results/scraper/launchpad-without-comments/1705118')
-rw-r--r--results/scraper/launchpad-without-comments/170511856
1 files changed, 56 insertions, 0 deletions
diff --git a/results/scraper/launchpad-without-comments/1705118 b/results/scraper/launchpad-without-comments/1705118
new file mode 100644
index 000000000..8fe2c781b
--- /dev/null
+++ b/results/scraper/launchpad-without-comments/1705118
@@ -0,0 +1,56 @@
+qemu user mode: rt signals not implemented for sparc guests
+
+The documentation
+<https://qemu.weilnetz.de/doc/qemu-doc.html#Features> says that
+qemu in user mode supports POSIX signal handling.
+
+Catching SIGSEGV according to POSIX, however, does not work on
+  ppc, ppc64, ppc64le, s390x, sparc64.
+It does work, however, on
+  aarch64, alpha, arm, hppa, m68k, mips, mips64, sh4.
+
+How to reproduce:
+The attached program runs fine (exits with code 0) on
+  - real hardware Linux/PowerPC64 (in 32-bit and 64-bit mode),
+  - real hardware Linux/PowerPC64LE,
+  - qemu-system-s390x emulated Linux/s390x,
+  - real hardware Linux/SPARC64.
+$ gcc -O -Wall testsigsegv.c; ./a.out; echo $?
+0
+
+For ppc:
+$ powerpc-linux-gnu-gcc-5 -O -Wall -static testsigsegv.c -o testsigsegv-ppc
+$ ~/inst-qemu/2.9.0/bin/qemu-ppc testsigsegv-ppc
+$ echo $?
+3
+
+For ppc64:
+$ powerpc64-linux-gnu-gcc-5 -O -Wall -static testsigsegv.c -o testsigsegv-ppc64
+$ ~/inst-qemu/2.9.0/bin/qemu-ppc64 testsigsegv-ppc64
+$ echo $?
+3
+
+For ppc64le:
+$ powerpc64le-linux-gnu-gcc-5 -O -Wall -static testsigsegv.c -o testsigsegv-ppc64le
+$ ~/inst-qemu/2.9.0/bin/qemu-ppc64le testsigsegv-ppc64le
+$ echo $?
+3
+
+For s390x:
+$ s390x-linux-gnu-gcc-5 -O -Wall -static testsigsegv.c -o testsigsegv-s390x
+$ ~/inst-qemu/2.9.0/bin/qemu-s390x testsigsegv-s390x
+$ echo $?
+3
+$ s390x-linux-gnu-gcc-5 -O -Wall -static testsigsegv.c -DAVOID_LINUX_S390X_COMPAT -o testsigsegv-s390x-a
+$ ~/inst-qemu/2.9.0/bin/qemu-s390x testsigsegv-s390x-a
+$ echo $?
+0
+So, the test fails here because the Linux/s390x kernel omits the least
+significant 12 bits of the fault address in the 'si_addr' field. But
+qemu-s390x is not compatible with the Linux/s390x behaviour: it puts
+the complete fault address in the 'si_addr' field.
+
+For sparc64:
+$ sparc64-linux-gnu-gcc-5 -O -Wall -static testsigsegv.c -o testsigsegv-sparc64
+$ ~/inst-qemu/2.9.0/bin/qemu-sparc64 testsigsegv-sparc64
+Segmentation fault (core dumped)
\ No newline at end of file