loki-47-6F-64 / sunshine

Host for Moonlight Streaming Client
GNU General Public License v3.0
1.76k stars 155 forks source link

Segfault on Arch Linux / AMDGPU #259

Open valters-tomsons opened 2 years ago

valters-tomsons commented 2 years ago

Version: e4c9c292e57d39136df2d46d1e9b66eba53f3bd3

OS: Arch Linux (5.14.14) GPU: Radeon RX 590 Mesa: 21.2.4

Tried running with sudo and using setcap with no results.

VAAPI

Log: here Backtrace: here

When VAAPI drivers are installed, it crashes right after starting sunshine.

Software (x264)

Using software encoder, it crashes while trying to create a session.

Log: here Backtrace:

* thread #16, name = 'sunshine', stop reason = signal SIGSEGV: invalid address (fault address: 0xb8)
  * frame #0: 0x0000561b909456b4 sunshine`enet_peer_disconnect_now + 34
    frame #1: 0x0000561b90837458 sunshine`stream::controlBroadcastThread(stream::control_server_t*) + 1928
    frame #2: 0x00007f95013733c4 libstdc++.so.6`execute_native_thread_routine at thread.cc:82:18
    frame #3: 0x00007f950541e259 libpthread.so.0`start_thread + 233
    frame #4: 0x00007f95010715e3 libc.so.6`__clone + 67

Additionally, lldb seems to print:

error: libstdc++.so.6 {0x001e0fe5}: DIE has DW_AT_ranges(0x14762) attribute, but range extraction failed (missing or invalid range list table), please file a bug and attach the file at the start of this error message
error: libstdc++.so.6 {0x001e15fa}: DIE has DW_AT_ranges(0x14531) attribute, but range extraction failed (missing or invalid range list table), please file a bug and attach the file at the start of this error message
error: libstdc++.so.6 {0x001e1c3d}: DIE has DW_AT_ranges(0x145bc) attribute, but range extraction failed (missing or invalid range list table), please file a bug and attach the file at the start of this error message
error: libstdc++.so.6 {0x001e2186}: DIE has DW_AT_ranges(0x142c9) attribute, but range extraction failed (missing or invalid range list table), please file a bug and attach the file at the start of this error message
error: libstdc++.so.6 {0x00181389}: DIE has DW_AT_ranges(0x119c8) attribute, but range extraction failed (missing or invalid range list table), please file a bug and attach the file at the start of this error message
Melechtna commented 2 years ago

I actually didn't start getting this issue until AFTER I configured the KMS portion, which I initially skipped, but nothing could connect, so I went back and did the KMS step, and then it gives me the segfault

Melechtna commented 2 years ago

Interesting news, I DON'T get the issue, when I use the git version from the AUR. MIGHT be because you need to compile against newer kernels.

Melechtna commented 2 years ago

Further findings. If you perform the setcap, it just breaks entirely even with the git. But other than an audio issue, it functions correctly in Arch Linux as of now.