libretro / LRPS2

GNU General Public License v2.0
159 stars 47 forks source link

RetroArch crash on PCSX2 core load on Linux #142

Closed zertyuiop closed 1 year ago

zertyuiop commented 2 years ago

A silent RetroArch crash occurs when trying to start pcsx2 core (or load any ps2 game). The log is almost empty. Any video driver. retroarch2021_08_2903_08_11.log

PC specifications: Linux Mint 20.2 x64 Intel Core i5-3570 8GB GTX670 RetroArch 1.9.8

bslenul commented 2 years ago

Have you tried deleting SCPH-10000.bin from your bios folder so the core uses another one instead? This BIOS isn't recommended to use for compatibility reasons, idk if it can cause a crash however, but worth trying ;)

zertyuiop commented 2 years ago

Nothing changed

bslenul commented 2 years ago

OK, and any additional info if you're launching RetroArch from terminal? On my VM it crashes too and I get this in terminal:

$ retroarch 
OpenGL information. GPU: SVGA3D; build: RELEASE;  LLVM;. Vendor: VMware, Inc.. Driver: (Core Profile) Mesa 21.0.3
ERROR: GL_ARB_buffer_storage is NOT SUPPORTED
terminate called after throwing an instance of 'GSDXRecoverableError'
Aborted (core dumped)

which doesn't appear in the log file (however in my case it's probably normal, I guess the GL version of my VM isn't high enough for this core).

zertyuiop commented 2 years ago

Illegal instruction (core dumped)

GDB backtrace:

Thread 1 "retroarch" received signal SIGILL, Illegal instruction.
0x00007f673efd3925 in ?? ()
   from /home/retro/.config/retroarch/cores/pcsx2_libretro.so
(gdb) bt
#0  0x00007f673efd3925 in  ()
    at /home/retro/.config/retroarch/cores/pcsx2_libretro.so
#1  0x00007f673ee53ccd in  ()
    at /home/retro/.config/retroarch/cores/pcsx2_libretro.so
#2  0x00007f673ecf3e9e in retro_init ()
    at /home/retro/.config/retroarch/cores/pcsx2_libretro.so
#3  0x000055b3a6799e65 in  ()
#4  0x000055b3a679d3a6 in  ()
#5  0x000055b3a67cbe3e in  ()
#6  0x000055b3a67ecd08 in  ()
#7  0x000055b3a67edfc4 in  ()
#8  0x000055b3a6aa6a4f in  ()
#9  0x000055b3a6783ddc in  ()
#10 0x000055b3a6a331f0 in  ()
#11 0x000055b3a6784c60 in  ()
#12 0x000055b3a6aa9ea8 in  ()
#13 0x000055b3a6783fd3 in  ()
#14 0x000055b3a6a331f0 in  ()
#15 0x000055b3a6a3ae07 in  ()
#16 0x000055b3a6789f4d in  ()
#17 0x000055b3a67b2c4e in  ()
#18 0x000055b3a67b30fa in  ()
#19 0x000055b3a6782d8a in  ()
#20 0x000055b3a67882d6 in  ()
#21 0x000055b3a67d0ab3 in  ()
#22 0x000055b3a67d29ee in  ()
#23 0x000055b3a679fbbd in  ()
#24 0x000055b3a69845bf in main ()
gouchi commented 2 years ago

I reproduced the issue using latest core from buildbot with this retroarch debug log :

#0  0x00007fffd87ed296 in  () at /home/gouchi/.config/retroarch/cores/pcsx2_libretro.so
#1  0x00007fffd87c5180 in  () at /home/gouchi/.config/retroarch/cores/pcsx2_libretro.so
#2  0x00007ffff7fdce2e in call_init () at /lib64/ld-linux-x86-64.so.2
#3  0x00007ffff7fdcf1c in _dl_init () at /lib64/ld-linux-x86-64.so.2
#4  0x00007ffff567ad45 in _dl_catch_exception () at /usr/lib/libc.so.6
#5  0x00007ffff7fe120a in dl_open_worker () at /lib64/ld-linux-x86-64.so.2
#6  0x00007ffff567ace8 in _dl_catch_exception () at /usr/lib/libc.so.6
#7  0x00007ffff7fe09bb in _dl_open () at /lib64/ld-linux-x86-64.so.2
#8  0x00007ffff587136c in  () at /usr/lib/libdl.so.2
#9  0x00007ffff567ace8 in _dl_catch_exception () at /usr/lib/libc.so.6
#10 0x00007ffff567adb3 in _dl_catch_error () at /usr/lib/libc.so.6
#11 0x00007ffff5871b99 in  () at /usr/lib/libdl.so.2
#12 0x00007ffff58713f8 in dlopen () at /usr/lib/libdl.so.2
#13 0x000055555568eb48 in dylib_load (path=0x555556475fbc <rarch_st+374076> "/home/gouchi/.config/retroarch/cores/pcsx2_libretro.so") at libretro-common/dynamic/dylib.c:122
#14 0x00005555555fd30b in load_dynamic_core
    (p_rarch=0x55555641aa80 <rarch_st>, path=0x555556475fbc <rarch_st+374076> "/home/gouchi/.config/retroarch/cores/pcsx2_libretro.so", buf=0x555556475fbc <rarch_st+374076> "/home/gouchi/.config/retroarch/cores/pcsx2_libretro.so", size=4096) at retroarch.c:18154
#15 0x00005555555fd6e2 in init_libretro_symbols_custom (p_rarch=0x55555641aa80 <rarch_st>, type=CORE_TYPE_PLAIN, current_core=0x555556438510 <rarch_st+121488>, lib_path=0x0, _lib_handle_p=0x0)
    at retroarch.c:18328
#16 0x00005555555feb08 in init_libretro_symbols (p_rarch=0x55555641aa80 <rarch_st>, type=CORE_TYPE_PLAIN, current_core=0x555556438510 <rarch_st+121488>) at retroarch.c:18417
#17 0x00005555555f2990 in command_event_init_core (settings=0x5555565861f0, p_rarch=0x55555641aa80 <rarch_st>, type=CORE_TYPE_PLAIN) at retroarch.c:12708
#18 0x00005555555f602d in command_event (cmd=CMD_EVENT_CORE_INIT, data=0x55555646967c <rarch_st+322556>) at retroarch.c:14421
#19 0x0000555555624c00 in retroarch_main_init (argc=4, argv=0x7fffffffe0c8) at retroarch.c:35428
#20 0x0000555555645c0c in content_load (info=0x7fffffffdf80, p_content=0x55555643b0e8 <rarch_st+132712>) at tasks/task_content.c:1475
#21 0x0000555555647719 in task_load_content_internal (content_info=0x7fffffffdf80, loading_from_menu=true, loading_from_cli=true, loading_from_companion_ui=false) at tasks/task_content.c:2342
#22 0x00005555556479fe in task_push_load_content_from_cli (core_path=0x0, fullpath=0x0, content_info=0x7fffffffdf80, type=CORE_TYPE_PLAIN, cb=0x0, user_data=0x0) at tasks/task_content.c:2436
#23 0x00005555555f881f in rarch_main (argc=4, argv=0x7fffffffe0c8, data=0x0) at retroarch.c:15735
#24 0x00005555555f88b2 in main (argc=4, argv=0x7fffffffe0c8) at retroarch.c:15834

But I can't reproduce the issue with self compiled version.

Sanaki commented 2 years ago

Strangely I can't reproduce this at all on my setup, either buildbot or self-compiled versions. I checked both via GUI and via CLI. I couldn't tell you -why- though.

zertyuiop commented 2 years ago

I can't reproduce issue on my self-compiled version. (Also, it is quite bigger: 8.7 (7.7 after strip) vs 7.8 MB). Only small issue (Can't load game if non-English symbols in path) So it could be build issues. I used the instruction from https://docs.libretro.com/development/cores/core-specific/pcsx2/ with dependencies from here: https://github.com/PCSX2/pcsx2/wiki/Installing-on-Linux#how-to-compile-pcsx2-in-2021-ubuntu-2004-64bit (and libjack-jackd2-dev). What operating system does buildbot use?

ThisNekoGuy commented 2 years ago

I also have this issue, having compiled from source using the AUR in Arch Linux I can load the core but loading any PS2 game fails and, shortly after, RetroArch just crashes

rsvensson commented 2 years ago

I'm also running into this, also with compiling the git source from AUR on Arch Linux. Both RetroArch and the pcsx2 core are the git packages from AUR. I've also tried the Arch Linux community packages with the same result. Could this be an issue with GCC 11.1 (current version on Arch)?

Edit: Actually it seems that Mint 20 (which zertyuiop is using) is on GCC 9 so probably not.

Sanaki commented 2 years ago

I compile with GCC 11.1 on Mint 19.3 with no issue, so definitely not.

darkicekeel commented 2 years ago

same issue here. retroarch from flatpak on a gentoo box. system/pcsx2/bios cheats cheats_ws inis logs memcards portable.ini snaps sstates, are present. still lacking proper ini files, i was looking for them right now searching online.

sidebuster commented 2 years ago

Same issue with appimage on pop 21.10 (and previous version). The apt version of PCSX2 works fine, all configs set up properly, etc.

darkicekeel commented 2 years ago

Retried with retroarch latest pcsx2 available on content manager, tried with a populated bios folder, same result, instacrash on iso load

qaron84 commented 2 years ago

use settings->drivers->video=glcore. for some reason when using vulkan crashes...

“gl” and “glcore” are 2 video drivers available on desktop computer : “gl” is an OpenGL 2.0+ driver, when used with a version above 3.0 it’s called OpenGL Compatibility and can support up to OpenGL 4.6, but some GPU drivers don’t have that OpenGL Compatibility mode. “glcore” is an OpenGL 3.1+ driver, it’s also called OpenGL Core, it supports up to OpenGL 4.6.

ENjoyBlue2021 commented 2 years ago

use settings->drivers->video=glcore. for some reason when using vulkan crashes...

“gl” and “glcore” are 2 video drivers available on desktop computer : “gl” is an OpenGL 2.0+ driver, when used with a version above 3.0 it’s called OpenGL Compatibility and can support up to OpenGL 4.6, but some GPU drivers don’t have that OpenGL Compatibility mode. “glcore” is an OpenGL 3.1+ driver, it’s also called OpenGL Core, it supports up to OpenGL 4.6.

This worked for me actually, thanks for the info. Also be sure to set logging on and start with the terminal. I had various other issues: 1.Needed to install this: sudo apt-get install libaio1 libaio-dev 2.Bios folder needs the correct files at the correct place. I had various bios files but one had .bin file with missing Rom1/Rom2 files for example. No issue with the standalone but retroarch didn't like that at all. 3.Be sure once a rom has loaded to go to Options - System - And select the correct Bios there. NTSC for US games for example. Otherwise it wont boot.

coreybruce commented 1 year ago

Also getting segmentation fault (core dumped) on libretro-pcsx2 on Linux

I am using Manjaro

-EDIT-

Problem was solved after putting the bios files in the correct place inside the pcsx folder you have to make inside of the system folder.