ValveSoftware / Proton

Compatibility tool for Steam Play based on Wine and additional components
Other
24.18k stars 1.06k forks source link

Can't start Path of Exile anymore after switching from nVidia to AMD #6358

Closed x0r13 closed 1 year ago

x0r13 commented 1 year ago

Proton Version: 7.04

[System]
OS:              Ubuntu 20.04 focal
Arch:            x86_64
Kernel:          5.4.0-132-lowlatency
Desktop:         Budgie:GNOME
Display Server:  x11

[CPU]
Vendor:          AuthenticAMD
Model:           AMD Ryzen 7 1700 Eight-Core Processor
Physical cores:  8
Logical cores:   16

[Memory]
RAM:             15.6 GB
Swap:            3.8 GB

[Graphics]
Vendor:          AMD
OpenGL Renderer: AMD Radeon RX 6600 (dimgrey_cavefish, LLVM 14.0.1, DRM 3.46, 5.4.0-132-lowlatency)
OpenGL Version:  4.6 (Compatibility Profile) Mesa 22.1.0-devel
OpenGL Core:     4.6 (Core Profile) Mesa 22.1.0-devel
OpenGL ES:       OpenGL ES 3.2 Mesa 22.1.0-devel
Vulkan:          Supported

I recently switched from a nVidia 1060 6GB to a rx6600 AMD GPU. I uninstalled the nVidia drivers via the installer (./installer --uninstall) and then installed the amdgpu package. I can play CS:GO fine via steam, also Diablo II Resurrected via a manual wine installation.

However when trying to start my installation of Path of Exile via Steam using proton 7.0.4 (over 500h with the nVidia card) nothing happens. It just says "Running" for a moment, then the button changes back to "Play".

I tried running it manually via: STEAM_COMPAT_CLIENT_INSTALL_PATH=~/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=~/.steam/steam/steamapps/compatdata/238960 '~/.steam/steam/steamapps/common/Proton 7.0/proton' run '~/.steam/steam/steamapps/common/Path of Exile/PathOfExileSteam.exe'

but it instantly crashes:

*** stack smashing detected ***: terminated
Aborted (core dumped)

Checking the crash dump shows:

Program terminated with signal SIGABRT, Aborted.
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
50  ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) br
Breakpoint 1 at 0x7fdfacbfc00b: file ../sysdeps/unix/sysv/linux/raise.c, line 50.
(gdb) bt
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x00007fdfacbdb859 in __GI_abort () at abort.c:79
#2  0x00007fdfacc4626e in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7fdfacd7008f "*** %s ***: terminated\n") at ../sysdeps/posix/libc_fatal.c:155
#3  0x00007fdfacce8aba in __GI___fortify_fail (msg=msg@entry=0x7fdfacd70077 "stack smashing detected") at fortify_fail.c:26
#4  0x00007fdfacce8a86 in __stack_chk_fail () at stack_chk_fail.c:24
#5  0x00007fdfacd199b4 in __GI__dl_catch_exception (exception=exception@entry=0x0, operate=operate@entry=0x7fdfacdf22d0 <call_dl_init>, args=args@entry=0x7ffef202c990) at dl-error-skeleton.c:219
#6  0x00007fdfacdf30cf in dl_open_worker (a=a@entry=0x7ffef202cb40) at dl-open.c:758
#7  0x00007fdfacd19928 in __GI__dl_catch_exception (exception=exception@entry=0x7ffef202cb20, operate=operate@entry=0x7fdfacdf2c20 <dl_open_worker>, args=args@entry=0x7ffef202cb40) at dl-error-skeleton.c:208
#8  0x00007fdfacdf260a in _dl_open (file=0x7fdfabefd050 "libGLX_nvidia.so.0", mode=-2147483646, caller_dlopen=<optimized out>, nsid=-2, argc=4, argv=0x7ffef202db88, env=0x7ffef202dbb0) at dl-open.c:837
#9  0x00007fdfacb9134c in dlopen_doit (a=a@entry=0x7ffef202cd60) at dlopen.c:66
#10 0x00007fdfacd19928 in __GI__dl_catch_exception (exception=exception@entry=0x7ffef202cd00, operate=operate@entry=0x7fdfacb912f0 <dlopen_doit>, args=args@entry=0x7ffef202cd60) at dl-error-skeleton.c:208
#11 0x00007fdfacd199f3 in __GI__dl_catch_error (objname=objname@entry=0x2666c30, errstring=errstring@entry=0x2666c38, mallocedp=mallocedp@entry=0x2666c28, operate=operate@entry=0x7fdfacb912f0 <dlopen_doit>, 
    args=args@entry=0x7ffef202cd60) at dl-error-skeleton.c:227
#12 0x00007fdfacb91b59 in _dlerror_run (operate=operate@entry=0x7fdfacb912f0 <dlopen_doit>, args=args@entry=0x7ffef202cd60) at dlerror.c:170
#13 0x00007fdfacb913da in __dlopen (file=<optimized out>, mode=<optimized out>) at dlopen.c:87
#14 0x00007fdfacdc8ad1 in ?? () from /usr/lib/python3.8/lib-dynload/_ctypes.cpython-38-x86_64-linux-gnu.so
#15 0x00000000005f69ca in PyCFunction_Call ()
#16 0x00000000005f74f6 in _PyObject_MakeTpCall ()
#17 0x0000000000570d55 in _PyEval_EvalFrameDefault ()

So, it looks like it somehow tries to load libGLX_nvidia.so.0 even though the nVidia driver has been removed, and other games run well using the rx6600. Any idea what the problem is and how to solve it?

kisak-valve commented 1 year ago

Hello @x0r13, we're using one issue report per unofficially supported game title, so I've gone ahead and transferred this issue report to https://github.com/ValveSoftware/Proton/issues/58#issuecomment-1334686777.