Jump to content

CKAN killed KSP, possibly mono (Edit: probably a graphics issue)


Recommended Posts

I had a fairly brutal bug happen when I tried to use CKAN to add the Kerbal Alarm Clock mod.  KSP crashed on loading once (at the SQUAD screen) and since then refuses to start.  The crash actually made Cinnamon (my Linux-based OS) crash as well.

I am using Linux Mint 18 Cinnamon 64-bit and running KSP through Steam.

I tried deleting/reinstalling CKAN, deleting/reinstalling KSP, apt-get install --reinstall commands for both steam and mono-complete, so far I can't even get a vanilla install back.  I also turned off the Steam overlay in case that was causing problems.  Ran a full update of all the packages associated with ubuntu/linux mint.  No dice.

My player.log output reads as follows (my user name is put in for my Linux user name in the folder paths):

Stacktrace:


Native stacktrace:

    /home/cersad/.local/share/Steam/steamapps/common/Kerbal Space Program/KSP_Data/Mono/x86_64/libmono.so(+0x91a46) [0x7f5583620a46]
    /home/cersad/.local/share/Steam/steamapps/common/Kerbal Space Program/KSP_Data/Mono/x86_64/libmono.so(+0x348e4) [0x7f55835c38e4]
    /lib/x86_64-linux-gnu/libpthread.so.0(+0x11390) [0x7f558a0fb390]
    /usr/lib/x86_64-linux-gnu/libLLVM-3.8.so.1(_ZNSt8_Rb_treeIjSt4pairIKjjESt10_Select1stIS2_ESt4lessIjESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E+0x10) [0x7f5579d4e290]
    /lib/x86_64-linux-gnu/libc.so.6(+0x39ff8) [0x7f55888f1ff8]
    /lib/x86_64-linux-gnu/libc.so.6(+0x3a045) [0x7f55888f2045]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf7) [0x7f55888d8837]
    /home/cersad/.local/share/Steam/steamapps/common/Kerbal Space Program/KSP.x86_64() [0x46f695]

Debug info from gdb:

ERROR: ld.so: object '/home/cersad/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
Could not attach to process.  If your uid matches the uid of the target
process, check the setting of /proc/sys/kernel/yama/ptrace_scope, or try
again as the root user.  For more details, see /etc/sysctl.d/10-ptrace.conf
ptrace: Operation not permitted.
No threads.

=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================

Any advice would be greatly appreciated!  I'm not sure how to fix this error.

 

___________________________________________________________________________________________________________________________________________________________

EDIT:  I have figured out how to replicate the crash.  This appears to be an issue with graphics or gameplay stability, the association with CKAN appears to be coincidental.

Copied from a following post:

 

Since last time (since my Mint distro is fairly new), I just backed up my saves and reformatted my Linux partition.

This restored my ability to open steam by using the command "LD_PRELOAD='/usr/$LIB/libstdc++.so.6 /usr/$LIB/libgcc_s.so.1 /usr/$LIB/libxcb.so.1 /usr/$LIB/libgpg-error.so' /usr/bin/steam" (This was my previous status quo because AMD drivers don't play nice with Steam).  KSP installed and ran fine.  I then tried CKAN (installed fine) and put on KER and Alarm Clock.  Ran fine.

However, I figured out what I believe to be the root cause of the crash, and it seems to be related to the graphics: I have two monitors, and I often drag KSP to my second monitor to play. Cinnamon (that's part of the Linux Mint GUI, I believe) crashes consistently when I try to move monitors.  So now my problem has changed from "I may have modded my game into oblivion" to "My computer can't handle the graphics!"

It's still an issue I am trying to fix.  After a couple of attempts to move the window, I'm back to the tragic position of being unable to open the game and getting the same error message.

Edited by cersad
Better information on technical issue after replicating bug more times
Link to comment
Share on other sites

I don't speak linux very well, but have you read the Notes about Linux stuff mentioned on the github page?

 

Linux users, please oh please apt-get install libcurl4-openssl-dev (Debian/Ubuntu/Mint) or yum install libcurl-devel (RedHat/Fedora) if you have not already done so.

Mac/Linux/Mono users: please use the new cert-sync tool, to update mono's certificate store.

This release of the CKAN has not been tested on Mono 3.2.8. We highly recommend upgrading to the latest stable release of Mono from mono-project.com.

Link to comment
Share on other sites

Thanks for your input.  I did install libcurl4-openssl-dev before installing mono, and I got the new cert-sync tool.  My version of mono is 4.2.1, so I'm above that requirement.

 

Since my last message, I even tried using my Linux Mint installation disc to repair the entire OS install, install steam again, and then at long last re-install KSP.  Still getting the same libraries in the error message.  Short of formatting my entire hard disk, I'm not sure how to fix this problem--or if reformatting would even fix it.

 

I turned on more advanced debugging, so the most recent error message follows:

Stacktrace:


Native stacktrace:

    /home/cersad/.steam/steamapps/common/Kerbal Space Program/KSP_Data/Mono/x86/libmono.so(+0x89917) [0xf42f0917]
    /home/cersad/.steam/steamapps/common/Kerbal Space Program/KSP_Data/Mono/x86/libmono.so(+0x21a63) [0xf4288a63]
    [0xf7746bd0]
    /usr/lib/i386-linux-gnu/libLLVM-3.8.so.1(_ZNSt8_Rb_treeIjSt4pairIKjjESt10_Select1stIS2_ESt4lessIjESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E+0x23) [0xefb762d3]
    /usr/lib/i386-linux-gnu/libLLVM-3.8.so.1(+0x15c532c) [0xf0bac32c]
    /lib/i386-linux-gnu/libc.so.6(+0x2e993) [0xf719b993]
    /lib/i386-linux-gnu/libc.so.6(+0x2e9ef) [0xf719b9ef]
    /lib/i386-linux-gnu/libc.so.6(__libc_start_main+0x103) [0xf7185643]
    /home/cersad/.steam/steamapps/common/Kerbal Space Program/KSP.x86() [0x80955c9]

Debug info from gdb:

ERROR: ld.so: object '/home/cersad/.steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
[New LWP 16335]
[New LWP 16336]
[New LWP 16337]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0xf7746be9 in __kernel_vsyscall ()
  Id   Target Id         Frame
* 1    Thread 0xf7073700 (LWP 16334) "KSP.x86" 0xf7746be9 in __kernel_vsyscall ()
  2    Thread 0xf3c48b40 (LWP 16335) "KSP.x86" 0xf7746be9 in __kernel_vsyscall ()
  3    Thread 0xf3c17b40 (LWP 16336) "KSP.x86" 0xf7746be9 in __kernel_vsyscall ()
  4    Thread 0xf39ffb40 (LWP 16337) "KSP.x86" 0xf7746be9 in __kernel_vsyscall ()

Thread 4 (Thread 0xf39ffb40 (LWP 16337)):
#0  0xf7746be9 in __kernel_vsyscall ()
#1  0xf76f6026 in do_futex_wait.constprop () from /lib/i386-linux-gnu/libpthread.so.0
#2  0xf76f6117 in __new_sem_wait_slow.constprop.1 () from /lib/i386-linux-gnu/libpthread.so.0
#3  0x0857aedc in ?? ()
#4  0x0857b82f in ?? ()
#5  0x0852b667 in ?? ()
#6  0xf76ee295 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#7  0xf7253eee in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 3 (Thread 0xf3c17b40 (LWP 16336)):
#0  0xf7746be9 in __kernel_vsyscall ()
#1  0xf76f6026 in do_futex_wait.constprop () from /lib/i386-linux-gnu/libpthread.so.0
#2  0xf76f6117 in __new_sem_wait_slow.constprop.1 () from /lib/i386-linux-gnu/libpthread.so.0
#3  0xf43ec87d in mono_sem_wait () from /home/cersad/.steam/steamapps/common/Kerbal Space Program/KSP_Data/Mono/x86/libmono.so
#4  0xf434c1b4 in ?? () from /home/cersad/.steam/steamapps/common/Kerbal Space Program/KSP_Data/Mono/x86/libmono.so
#5  0xf43bae39 in ?? () from /home/cersad/.steam/steamapps/common/Kerbal Space Program/KSP_Data/Mono/x86/libmono.so
#6  0xf43e4457 in ?? () from /home/cersad/.steam/steamapps/common/Kerbal Space Program/KSP_Data/Mono/x86/libmono.so
#7  0xf4405c07 in ?? () from /home/cersad/.steam/steamapps/common/Kerbal Space Program/KSP_Data/Mono/x86/libmono.so
#8  0xf76ee295 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#9  0xf7253eee in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 2 (Thread 0xf3c48b40 (LWP 16335)):
#0  0xf7746be9 in __kernel_vsyscall ()
#1  0xf76f3e36 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0xf43cebb1 in ?? () from /home/cersad/.steam/steamapps/common/Kerbal Space Program/KSP_Data/Mono/x86/libmono.so
#3  0xf76ee295 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#4  0xf7253eee in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 1 (Thread 0xf7073700 (LWP 16334)):
#0  0xf7746be9 in __kernel_vsyscall ()
#1  0xf724c04f in readv () from /lib/i386-linux-gnu/libc.so.6
#2  0xf772ca46 in read () from /home/cersad/.steam/ubuntu12_32/gameoverlayrenderer.so
#3  0xf42f0a95 in ?? () from /home/cersad/.steam/steamapps/common/Kerbal Space Program/KSP_Data/Mono/x86/libmono.so
#4  0xf4288a63 in ?? () from /home/cersad/.steam/steamapps/common/Kerbal Space Program/KSP_Data/Mono/x86/libmono.so
#5  <signal handler called>
#6  0xefb762d3 in std::_Rb_tree<unsigned int, std::pair<unsigned int const, unsigned int>, std::_Select1st<std::pair<unsigned int const, unsigned int> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, unsigned int> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned int const, unsigned int> >*) () from /usr/lib/i386-linux-gnu/libLLVM-3.8.so.1
#7  0xf0bac32c in ?? () from /usr/lib/i386-linux-gnu/libLLVM-3.8.so.1
#8  0xf719b993 in ?? () from /lib/i386-linux-gnu/libc.so.6
#9  0xf719b9ef in exit () from /lib/i386-linux-gnu/libc.so.6
#10 0xf7185643 in __libc_start_main () from /lib/i386-linux-gnu/libc.so.6
#11 0x080955c9 in ?? ()

Link to comment
Share on other sites

On 22/01/2017 at 7:36 AM, cersad said:

kernel_vsyscall

What kernel version are you running, and has it been upgraded to >=4.8 recently? As of 4.8 several distros have deprecated the vsyscall interface on amd64, you might try adding 'vsyscall=emulate' to your kernel boot parameters.

Edited by steve_v
Link to comment
Share on other sites

Well, this has been an interesting couple of days in my computer troubleshooting world.

Since last time (since my Mint distro is fairly new), I just backed up my saves and reformatted my Linux partition.

This restored my ability to open steam by using the command "LD_PRELOAD='/usr/$LIB/libstdc++.so.6 /usr/$LIB/libgcc_s.so.1 /usr/$LIB/libxcb.so.1 /usr/$LIB/libgpg-error.so' /usr/bin/steam" (This was my previous status quo because AMD drivers don't play nice with Steam).  KSP installed and ran fine.  I then tried CKAN (installed fine) and put on KER and Alarm Clock.  Ran fine.

However, I figured out what I believe to be the root cause of the crash, and it seems to be related to the graphics: I have two monitors, and I often drag KSP to my second monitor to play. Cinnamon (that's part of the Linux Mint GUI, I believe) crashes consistently when I try to move monitors.  So now my problem has changed from "I may have modded my game into oblivion" to "My computer can't handle the graphics!"

It's still an issue I am trying to fix.  After a couple of attempts to move the window, I'm back to the tragic position of being unable to open the game and getting the same error message.

 

Answering the questions so far:

On 1/22/2017 at 6:24 PM, Tynrael said:

Can you launch 64-bit Kerbal directly, without going through Steam?

No.  It invariably gives me the same crash report in Player.log.

 

1 hour ago, steve_v said:

What kernel version are you running, and has it been upgraded to >=4.8 recently? As of 4.8 several distros have deprecated the vsyscall interface on amd64, you might try adding 'vsyscall=emulate' to your kernel boot parameters.

my kernel appears to be 4.4.0-21-generic, according to the uname -r command. 

Link to comment
Share on other sites

On 1/23/2017 at 8:42 PM, steve_v said:

Related to bug http://bugs.kerbalspaceprogram.com/issues/11382?
Fullscreen in settings.cfg? Fix unity prefs file and set it read-only?

Well I... damn...

I spent a while reading that thread and trying to make sense of it--I'm pretty new to Linux, and I'm running Mint exactly because I want a slow easing-in to the more in-depth issues.  Then I re-read your comment about the unity prefs file and the solution was ridiculously obvious:

<unity_prefs version_major="1" version_minor="1">
	<pref name="Screenmanager Is Fullscreen mode" type="int">0</pref>
	<pref name="Screenmanager Resolution Height" type="int">900</pref>
	<pref name="Screenmanager Resolution Width" type="int">1</pref>
	<pref name="UnityGraphicsQuality" type="int">5</pref>
	<pref name="UnitySelectMonitor" type="int">-1</pref>
</unity_prefs>

Something about the disaster-crash set the resolution width to 1.  I wish I were making that up.  I changed fullscreen to 1 and width to 1600 and lo and behold, the game launches!

Thank you so much for mentioning the prefs file.  (If anyone else comes across this, it's in ~/.config/unity3d/Squad/Kerbal Space Program)  After reading through the massive bugs, I'm blown away that the fix could be this simple.  In fact, I'm still half-afraid that it was another coincidence, but I'll report in again if this bug resurfaces in a way that fixing the prefs file can't fix.

Link to comment
Share on other sites

On 28/01/2017 at 2:37 PM, cersad said:

Something about the disaster-crash set the resolution width to 1.  I wish I were making that up.

Frustratingly, this is not at all unusual. Unitys "screenmanager" is horribly broken on GNU/Linux.
 

On 28/01/2017 at 2:37 PM, cersad said:

I'm blown away that the fix could be this simple.

I think "fix" is a bit of a strong word here, this is just a workaround. The real solution is for Unity to just stop passing garbage values to the window manager... i.e. RTF freedesktop M.
In the mean time, best set that file read-only or immutable to prevent Unity from lousing it up again, sooner or later it's bound to try.

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...