Kerbal Inventory System (KIS)

Kerbal Inventory System (KIS)

1M Downloads

double free or corruption on x64 Linux

StarkRG opened this issue ยท 22 comments

commented

Latest version is getting a "double free or corruption" error on x64 Linux. I tried it with the previous version and everything works fine...

commented

They will need logs, and context, and replication steps etc.

commented

Player.log: http://filebin.net/9rtlxm4zma/Player.log
KSP.log: http://filebin.net/9rtlxm4zma/KSP.log
(dunno what other logs to provide)

Context: launching after updating
Replication steps: every time I launch ksp with the latest version (1.1.5), it works fine if I revert back to 1.1.4 (but KAS complains that I'm not using the latest version, so I guess I'll have to revert that too)

commented

Your log is filled with : "MissingMethodException: Method not found: 'GameDatabase.TextureInfo..ctor'."
Also, an assembly can't be loaded : "Failed to load assembly /media/starkrg/Seagate Expansion Drive/Kerbal Space Program/GameData/KSEA/Sentinel/Native/getRSS_x86.dll"

Can you try KIS / KAS on a fresh install of KSP 1.0.2 ?

commented

I can reproduce this as well. KIS 1.1.5, KSP 1.0.2. Fedora 21, x86_64.

build id = 00842
2015-05-01_14-01-57
Branch: master

I had no issues with the prior version either. It crashes while KIS/Parts/guide/page02 is displayed on the loading screen.

With a fresh install containing only KIS and stock, here's the KSP.log and the stderr output I get on the console when it crashes: https://gist.github.com/ringerc/5582a9c8c8196e5ac277

Bizarrely, when testing to reproduce this it then launched successfully, but crashed on KSP exit instead. The crash from that one has output in this separate gist: https://gist.github.com/ringerc/c6f7f2f72956b877659b

KIS 1.1.4 seems to work fine.

commented

... and now, several launches later, it's working. So it's something to do with a fresh install, or it's intermittent (as might be expected with a double free issue).

commented

OK, it's intermittent. Crashes on load sometimes, not other times. Sometimes launches to the main screen then crashes on quit. Always seems to be while loading page02.

commented

screenshot from 2015-06-04 20 45 37

commented

I was going to diff 1.1.4 to 1.1.5 to see what might have changed that could be relevant, but you don't seem to have any git tags in this repository. Is it possible you forgot to git push your tags when you tag releases?

commented

The Gamedata folder now just has KIS, KAS, Squad, and ModuleManager (2.6.5, wasn't sure if this was necessary, but it shouldn't be an issue). Error remains.

Player.log: http://filebin.net/y7cizugkx6/Player.log
KSP.log: http://filebin.net/y7cizugkx6/KSP.log

commented

Can you try to remove the MiniAVC.dll from the KAS/KIS folders ?
This is one of the new things in 1.1.5

commented

I've been running into the same issue. Just did a clean install (1.0.4 squad zip) with KIS as the only mod added. Issues still showing up even after removing the MiniAVC.dll. 1.1.4 works fine.

KSP.log with MiniAVC.dll: http://filebin.ca/26i9pMPtU3iB/KSP.log_1

KSP.log without MiniAVC.dll: http://filebin.ca/26iAExjWGgzI/KSP.log_2

Player.log without MiniAVC.dll: http://filebin.ca/26iBpJLrTN7C/Player.log

commented

I can still reproduce this on 1.0.4 as well, with or without MiniAVC.dll.

commented

Any advice on how to work on debugging this? I'm an experienced C developer, but I haven't worked with Mono / C#, and I'm used to working on open source platforms where I can rebuild the application with debug symbols.

I've just found that this crash does not occur with KSP.x86, only with KSP.x86_64. So it's possibly a pointer-truncation issue.

I tried to run KSP under Valgrind, but since Mono does a lot of JIT compilation it just segfaults early on. It probably wouldn't do much good anyway as the KSP binaries are stripped of symbols. I'm at a bit of a dead end trying to track this down myself.

Can you push your git tags for the releases? If so, and if KIS can be built under Linux/Mono, I can try to git bisect to find the specific commit that triggers the crash. Without tags in the repository I can't really do since I don't know what git ref corresponds to the .4 and .5 releases.

commented

Ok thanks for your help :)
It seem that I forgot to reduce the resolution of this file (the file take more that 1Mo on disk)
I fixed this for the next version, that should fix the issue.

commented

Can you try to remove the guide part folder ? It seem to fix a crash on launch on linux:
http://forum.kerbalspaceprogram.com/threads/113111-1-0-2-Kerbal-Inventory-System-%28KIS%29-1-1-5?p=2062263&viewfull=1#post2062263
If it work, can you try to remove dds files only ?

commented

I can confirm that removing either the whole folder or just the .dds files resolves the problem (Linux Mint x64).

commented

Narrowing it down even further...removing only page03.dds also fixes it.

commented
commented

@KospY - why does reducing the resolution of the file fix this problem? I've had it filed against RasterPropMonitor, with a file that is 599 x 300 (not a huge file), and I would like to understand the problem before I start changing things.

commented

@MOARdV - Unfortunatly I don't know. Page03 was the only dds file different because I forgot to reduce the resolution on it, so I think it's the problem (source is a pdf file so it's pretty huge).

commented

I released 1.2.0 with the fix. I'm waiting your feedback to know if it work now.

commented

Closing the issue as it seem nobody complain about this linux issue anymore :)