Eventually it is an "Program terminated with signal SIGSYS, Bad system call"
So we need to find what is bad about it.
(gdb) info threads
Id Target Id Frame
* 1 Thread 0x7f2321fe6700 (LWP 17325) 0x00007f2325ae00bf in __pthread_setaffinity_new (th=<optimized out>, cpusetsize=cpusetsize@entry=128, cpuset=cpus
et@entry=0x7f2321fe5680) at ../sysdeps/unix/sysv/linux/pthread_setaffinity.c:34
2 Thread 0x7f2323ad3500 (LWP 17322) 0x00007f2326fe0fb7 in dri_bind_extensions (dri=dri@entry=0x55a59a7583e0, matches=matches@entry=0x7f2326fec34
0 <dri_core_extensions>, extensions=<optimized out>) at ../src/gbm/backends/dri/gbm_dri.c:286
3 Thread 0x7f2323acf700 (LWP 17323) syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
A discussion with the kernel team pointed to seccomp at first:
...
<apw> grep it appears that seccomp is the only thing which triggers that signal
The stack in the breaking cases uses this by default
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny
resourcecontrol is defined as:
"Disable process affinity and schedular priority"
Interestingly that is the global default, the qemu://system qemu also runs with the same.
I'd assume that:
libgl1-mesa-dri:amd64: /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
behaves differently depending if it is on a local UI session or not.
And it gets punished as soon as it tries to set-affinity which it might only do in that case.
Eventually it is an "Program terminated with signal SIGSYS, Bad system call"
So we need to find what is bad about it.
(gdb) info threads setaffinity_ new (th=<optimized out>, cpusetsize= cpusetsize@ entry=128, cpuset=cpus entry=0x7f2321f e5680) at ../sysdeps/ unix/sysv/ linux/pthread_ setaffinity. c:34 entry=0x55a59a7 583e0, matches= matches@ entry=0x7f2326f ec34 extensions> , extensions= <optimized out>) at ../src/ gbm/backends/ dri/gbm_ dri.c:286 unix/sysv/ linux/x86_ 64/syscall. S:38
Id Target Id Frame
* 1 Thread 0x7f2321fe6700 (LWP 17325) 0x00007f2325ae00bf in __pthread_
et@
2 Thread 0x7f2323ad3500 (LWP 17322) 0x00007f2326fe0fb7 in dri_bind_extensions (dri=dri@
0 <dri_core_
3 Thread 0x7f2323acf700 (LWP 17323) syscall () at ../sysdeps/
A discussion with the kernel team pointed to seccomp at first:
...
<apw> grep it appears that seccomp is the only thing which triggers that signal
The stack in the breaking cases uses this by default deny,elevatepri vileges= deny,spawn= deny,resourceco ntrol=deny
-sandbox on,obsolete=
resourcecontrol is defined as:
"Disable process affinity and schedular priority"
Interestingly that is the global default, the qemu://system qemu also runs with the same. mesa-dri: amd64: /usr/lib/ x86_64- linux-gnu/ dri/i965_ dri.so
I'd assume that:
libgl1-
behaves differently depending if it is on a local UI session or not.
And it gets punished as soon as it tries to set-affinity which it might only do in that case.
Implemented by /git.qemu. org/?p= qemu.git; a=commit; h=24f8cdc572247 6e12d8e39d71f66 311b4fa971c1 /git.qemu. org/?p= qemu.git; a=commit; h=056de1e894155 fbb99e7b43c1c43 82d4920cf437
- https:/
Similar issue being fixed last year
- https:/
Libvirt has no means to fin-control it (yet), only to switch the hole feature of sandboxing on/off.
That matches what we see - it fails on init when spawning threads - most likely there it will set the affinity.