Bug ID | 1181064 |
---|---|
Summary | Segmentation fault on system call vectored (ppc64le on POWER9) |
Classification | openSUSE |
Product | openSUSE Tumbleweed |
Version | Current |
Hardware | Other |
OS | Other |
Status | NEW |
Severity | Normal |
Priority | P5 - None |
Component | Kernel |
Assignee | kernel-bugs@opensuse.org |
Reporter | tuliom@quites.com.br |
QA Contact | qa-bugs@suse.de |
Found By | --- |
Blocker | --- |
Linux 5.9 started to support a new system call ABI called system call vectored (using POWER9 instruction scv). glibc 2.33 (to be released) includes support for this instruction. However, there is an issue in upstream kernel that may cause userspace programs using this instruction to segfault. In order to reproduce the issue, one needs to call scv thousands of times. An easy way to reproduce this issue is to run glibc make check, i.e. on a POWER9: git clone git://sourceware.org/git/glibc.git mkdir build cd build ../glibc/configure --prefix=/usr --with-cpu=power9 make -j$(nproc) make -j$(nproc) check A couple of tests will segfault. The list changes between executions. I was able to reproduce this issue only on POWER9 revision 2.2 (pvr 004e 1202). I'm using kernel-default-5.9.14-1.1.ppc64le. A fix for this issue has been proposed upstream at https://patchwork.ozlabs.org/project/linuxppc-dev/patch/20210111062408.287092-1-npiggin@gmail.com/ Notice the problem disappears if entry_flush and rfi_flush are disabled, but I don't think that's recommended.