ValveSoftware / portal2

Issues for the Linux port of Portal 2
140 stars 11 forks source link

Portal 2 not launching on Ubuntu 20.04.1 (was working; not sure what changed) #398

Closed ks5diox closed 1 year ago

ks5diox commented 1 year ago

Using Ubuntu 20.04, when I launch portal2 from Steam, it briefly switches to running, then immediately back to 'play'. This did work before an update that apparently was installed yesterday, March 14.

I found the following in the syslog that occurs every time I try to launch Portal 2: (using force compatibility with Steam Linux Runtime) Mar 15 08:21:14 dad-old kernel: [ 384.762843] traps: portal2_linux[6129] general protection fault ip:f7efbec0 sp:ffb1a31c error:0 in libmimalloc.so[f7ef0000+1d000] When I try to run from terminal:

oem@dad-old:~/.steam/steam/steamapps/common/Portal 2$ ./portal2_linux 
./portal2_linux: error while loading shared libraries: libmimalloc.so: cannot open shared object file: No such file or directory

Also tried running from terminal:

oem@dad-old:~$ /usr/games/steam steam://rungameid/620
same general protection fault is logged.

My machine is:

oem@dad-old:~/.steam/steam/steamapps/common/Portal 2$ uname -a
Linux dad-old 5.15.0-67-generic #74~20.04.1-Ubuntu SMP Wed Feb 22 14:52:34 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

I tried using proton 3.16 compatibility, and get the intro screen with the slowly turning head with the valve on it, and very briefly see what looks like the portal 2 game menu, then it disappears and give an error, "Steam is not running. You must start Steam in order to play this game." I do verify that Steam is running. (screenshot attached; shows steam library window in background of the error.)

I verified my game files with the Steam app, and it says they are OK.

Portal (original version) runs fine.

The problem is with Portal 2: App ID: 620 Build ID: 10722505 Installed content updated: Mar 14, 2023 at 1:41pm

ks5diox commented 1 year ago

steam_is_not_running Screenshot showing result of running with Proton 3.16. Ironically, the steam window is just behind the warning...

ks5diox commented 1 year ago

attach_system_info.txt System Info from Steam

ks5diox commented 1 year ago

The library triggering the General Protection Fault (libmimalloc.so) appears to be related to allocating memory, and since this laptop is on the older side, I ran Memtest86+, but there were no memory problems found. (attached summary report)

Also, some of the IP, SP values change, but the fault is always: error: 0, which I think is a divide by zero error? The problem is very reliably reproducible on my system. I have not yet tried to do a fresh install on Ubuntu to test with.

From the syslog: ( tried running portal 2 a number of times with different settings/flags)

Mar 14 20:07:35 dad-old kernel: [528334.440328] traps: portal2_linux[125286] general protection fault ip:f7ec2ec0 sp:ffb5cf1c error:0 in libmimalloc.so[f7eb7000+1d000]
Mar 14 20:08:10 dad-old kernel: [528369.588135] traps: portal2_linux[125397] general protection fault ip:f7f0eec0 sp:ff931abc error:0 in libmimalloc.so[f7f03000+1d000]
Mar 14 20:09:26 dad-old kernel: [   43.616024] traps: portal2_linux[2950] general protection fault ip:f7e56ec0 sp:ffe5d0ac error:0 in libmimalloc.so[f7e4b000+1d000]
Mar 14 20:09:57 dad-old kernel: [   74.628765] traps: portal2_linux[3017] general protection fault ip:f7e5aec0 sp:ffa0424c error:0 in libmimalloc.so[f7e4f000+1d000]
Mar 14 20:10:03 dad-old kernel: [   79.771244] traps: portal2_linux[3076] general protection fault ip:f7eb7ec0 sp:ffd47b0c error:0 in libmimalloc.so[f7eac000+1d000]
Mar 14 20:10:14 dad-old kernel: [   90.984399] traps: portal2_linux[3085] general protection fault ip:f7ef4ec0 sp:ffb4a0cc error:0 in libmimalloc.so[f7ee9000+1d000]
Mar 14 20:10:29 dad-old kernel: [  106.637763] traps: portal2_linux[3483] general protection fault ip:f7e89ec0 sp:ffd7b3ec error:0 in libmimalloc.so[f7e7e000+1d000]
Mar 14 20:10:59 dad-old kernel: [  136.622944] traps: portal2_linux[4899] general protection fault ip:f7f3eec0 sp:ff89638c error:0 in libmimalloc.so[f7f33000+1d000]
Mar 14 20:11:07 dad-old kernel: [  143.778171] traps: portal2_linux[4906] general protection fault ip:f7ee8ec0 sp:ff9fbccc error:0 in libmimalloc.so[f7edd000+1d000]
Mar 14 20:11:38 dad-old kernel: [  175.449626] traps: portal2_linux[5065] general protection fault ip:f7f38ec0 sp:ffafc84c error:0 in libmimalloc.so[f7f2d000+1d000]
Mar 14 20:19:46 dad-old kernel: [  663.178216] traps: portal2_linux[5288] general protection fault ip:f7eb0ec0 sp:fff1636c error:0 in libmimalloc.so[f7ea5000+1d000]
Mar 14 20:20:05 dad-old kernel: [  682.114042] traps: portal2_linux[5485] general protection fault ip:f7e73ec0 sp:fff3544c error:0 in libmimalloc.so[f7e68000+1d000]
Mar 14 20:20:44 dad-old kernel: [  720.926781] traps: portal2_linux[5494] general protection fault ip:f7ecbec0 sp:ffad9d0c error:0 in libmimalloc.so[f7ec0000+1d000]
Mar 14 20:20:46 dad-old kernel: [  722.686813] traps: portal2_linux[5504] general protection fault ip:f7e9dec0 sp:ffc3d1ec error:0 in libmimalloc.so[f7e92000+1d000]
Mar 14 20:20:47 dad-old kernel: [  724.169806] traps: portal2_linux[5511] general protection fault ip:f7e4dec0 sp:ffdcafac error:0 in libmimalloc.so[f7e42000+1d000]
Mar 14 20:21:29 dad-old kernel: [  766.204631] traps: portal2_linux[5581] general protection fault ip:f7e9aec0 sp:ffdb0b7c error:0 in libmimalloc.so[f7e8f000+1d000]
Mar 14 20:22:45 dad-old kernel: [  842.501898] traps: portal2_linux[5663] general protection fault ip:f7f37ec0 sp:ffba1e7c error:0 in libmimalloc.so[f7f2c000+1d000]
Mar 14 20:22:47 dad-old kernel: [  844.265970] traps: portal2_linux[5674] general protection fault ip:f7eafec0 sp:ffdf35bc error:0 in libmimalloc.so[f7ea4000+1d000]
Mar 14 20:22:48 dad-old kernel: [  845.509915] traps: portal2_linux[5681] general protection fault ip:f7f3eec0 sp:ffe1104c error:0 in libmimalloc.so[f7f33000+1d000]
Mar 14 20:22:50 dad-old kernel: [  847.417231] traps: portal2_linux[5688] general protection fault ip:f7e7bec0 sp:ffb00a1c error:0 in libmimalloc.so[f7e70000+1d000]
Mar 14 20:37:39 dad-old kernel: [ 1736.332065] traps: portal2_linux[5843] general protection fault ip:f7effec0 sp:fff1558c error:0 in libmimalloc.so[f7ef4000+1d000]
Mar 14 20:37:44 dad-old kernel: [ 1741.511871] traps: portal2_linux[5851] general protection fault ip:f7f0eec0 sp:ffcf2ccc error:0 in libmimalloc.so[f7f03000+1d000]
Mar 14 20:37:47 dad-old kernel: [ 1744.176863] traps: portal2_linux[5864] general protection fault ip:f7e69ec0 sp:ffe79e2c error:0 in libmimalloc.so[f7e5e000+1d000]
Mar 14 20:38:23 dad-old kernel: [ 1780.011103] traps: portal2_linux[5875] general protection fault ip:f7e5aec0 sp:ffb2d2fc error:0 in libmimalloc.so[f7e4f000+1d000]
Mar 14 20:39:46 dad-old kernel: [ 1862.706477] traps: portal2_linux[6328] general protection fault ip:f7eb5ec0 sp:ffdc0adc error:0 in libmimalloc.so[f7eaa000+1d000]
Mar 14 20:40:08 dad-old kernel: [ 1885.419377] traps: portal2_linux[6527] general protection fault ip:f7e91ec0 sp:ffc42cec error:0 in libmimalloc.so[f7e86000+1d000]
Mar 14 20:41:32 dad-old kernel: [ 1968.738975] traps: portal2_linux[6622] general protection fault ip:f7efcec0 sp:ffcb563c error:0 in libmimalloc.so[f7ef1000+1d000]
Mar 14 20:42:13 dad-old kernel: [ 2010.015073] traps: portal2_linux[6646] general protection fault ip:f7e54ec0 sp:fff574bc error:0 in libmimalloc.so[f7e49000+1d000]
Mar 14 20:45:46 dad-old kernel: [ 2223.506058] traps: portal2_linux[6744] general protection fault ip:f7ef7ec0 sp:ff977a5c error:0 in libmimalloc.so[f7eec000+1d000]
Mar 14 20:52:39 dad-old kernel: [ 2636.220650] traps: portal2_linux[7359] general protection fault ip:f7ebcec0 sp:ffc423ac error:0 in libmimalloc.so[f7eb1000+1d000]
Mar 14 20:53:51 dad-old kernel: [   38.747846] traps: portal2_linux[2875] general protection fault ip:f7ed5ec0 sp:ffd9864c error:0 in libmimalloc.so[f7eca000+1d000]
Mar 14 20:54:11 dad-old kernel: [   58.829328] traps: portal2_linux[2913] general protection fault ip:f7ec4ec0 sp:ffe2404c error:0 in libmimalloc.so[f7eb9000+1d000]
Mar 14 20:54:21 dad-old kernel: [   68.628614] traps: portal2_linux[2920] general protection fault ip:f7e5aec0 sp:ff93f7ec error:0 in libmimalloc.so[f7e4f000+1d000]
Mar 14 20:55:02 dad-old kernel: [  109.775403] traps: portal2_linux[3288] general protection fault ip:f7eb8ec0 sp:ffb51c2c error:0 in libmimalloc.so[f7ead000+1d000]
Mar 14 20:55:11 dad-old kernel: [  119.212531] traps: portal2_linux[3452] general protection fault ip:f7eaaec0 sp:ff8bd33c error:0 in libmimalloc.so[f7e9f000+1d000]
Mar 14 20:56:40 dad-old kernel: [  207.555639] traps: portal2_linux[4159] general protection fault ip:f7eaaec0 sp:ff8792ac error:0 in libmimalloc.so[f7e9f000+1d000]
oem@dad-old:/var/log$ 

Finally, if I try changing the 'Betas' setting in Steam to "previous_release - one build behind default branch", I get a segfault:

Mar 17 13:56:41 dad-old kernel: [ 283.336416] portal2_linux[5452]: segfault at 0 ip 0000000000000000 sp 00000000ffe1716c error 14 in portal2_linux[8048000+1000]

That previous version appears in Steam as: one behind appears to be: App ID: 620 Build ID:6318595 Installed content updated Mar 17, 2023

ks5diox commented 1 year ago

.html is not supported... attaching .pdf MemTest86-Report-20230316-214239.html.pdf

ks5diox commented 1 year ago

poking around in logs, I found ~/.steam/steam/logs/content_log.txt,
It seems to show the command that launches the game when I click 'Play' in the Steam app:

content_log.txt:[2023-03-17 23:28:00] AppID 620 adding PID 4047 as a tracked process "/home/oem/.steam/debian-installation/ubuntu12_32/reaper SteamLaunch AppId=620 -- /home/oem/.steam/debian-installation/ubuntu12_32/steam-launch-wrapper -- '/home/oem/.steam/debian-installation/steamapps/common/SteamLinuxRuntime_soldier'/_v2-entry-point --verb=waitforexitandrun -- '/home/oem/.steam/debian-installation/steamapps/common/SteamLinuxRuntime'/scout-on-soldier-entry-point-v2 -- '/home/oem/.steam/debian-installation/steamapps/common/Portal 2/portal2.sh' -game portal2 -steam -novid -debug "

I discovered that if I just run this from terminal as my user, the game launches successfully: $ /home/oem/.steam/debian-installation/ubuntu12_32/reaper SteamLaunch AppId=620 -- /home/oem/.steam/debian-installation/ubuntu12_32/steam-launch-wrapper -- '/home/oem/.steam/debian-installation/steamapps/common/SteamLinuxRuntime_soldier'/_v2-entry-point --verb=waitforexitandrun -- '/home/oem/.steam/debian-installation/steamapps/common/SteamLinuxRuntime'/scout-on-soldier-entry-point-v2 -- '/home/oem/.steam/debian-installation/steamapps/common/Portal 2/portal2.sh' -game portal2 -steam -novid -debug

So it seems the 'General Protection Fault' is a permission issue somewhere in my system. I'm still not sure of the root cause, but I can play the game now... :-)