Linux Issues: mmap, mouse buttons, Fade blink.

ViVnetViVnet Join Date: 2004-05-27 Member: 28947Members, Reinforced - Shadow
edited September 2013 in Technical Support
I wanted to post this to be sure we're aware of some of the problems with the Linux client.

The first issue is that additional mouse buttons do not work. That is, buttons one, two, and three are fine, but buttons four and five are non-functional (these are the forward and back buttons in your browser). This is not a critical issue, but since we generally use and most mice include these buttons, it would be nice to use them in the game.

The second issue is probably an OpenGL problem. Infrequently while blinking as Fade, the screen will become almost completely black until the blink animation has ended. This happens probably one in every ten blinks and is quite troublesome when you've just blinked into a mob of marines.

The final issue is absolutely critical. This issue is the likely cause of those frequent, almost predictable crashes people are getting on Linux (and maybe other systems). It has to do with the game's attempt to manage memory. The actual crash is a segmentation fault in libc, but the cause appears to be attempts to map (mmap) memory where no memory is available. Eventually while playing, memory becomes scarce and this crash occurs upon the next map change. This happens to me about every three hours and its frequency is directly tied to graphics quality settings in game. If I set everything to maximum the game crashes immediately with the same error. This is either a memory leak or a failure to free memory before allocating it. Attached are log files specific to this issue.

My system specs for both systems that exhibit the same issues:

Ubuntu 13.04
i5-2500K
GTX 560 Ti w/ 325.15
8 GB RAM

Ubuntu 13.04
i7-720qm
GTX 460m w/ 325.15
4 GB RAM

Comments

  • DicerollDiceroll Join Date: 2013-09-06 Member: 187868Members
    edited September 2013
    ViVnet seems to perfectly summarize the issues with the linux client.
    And i can confirm that i experienced exactly the same problems :

    The game crash after one hour or two of gameplay. Every time it did i have those lines in my terminal :
    mmap() failed: Cannot allocate memory
    mmap() failed: Cannot allocate memory
    mmap() failed: Cannot allocate memory
    ...
    mmap() failed: Cannot allocate memory
    third_party/tcmalloc/chromium/src/system-alloc.cc:423] MmapSysAllocator failed.
    [0905/215557:FATAL:process_util_linux.cc(632)] Out of memory.
    

    I don't know if it's really relevant but i have (sometimes) this errors when i shutdown the application :
    Error: Attempted to load remote options from a file that does not exist.
    Error: 3 memory leaks in 'OpenGLDevice' (244 bytes)
    Error: 3 memory leaks in 'Client' (244 bytes)
    Error: 3 memory leaks in 'Engine' (244 bytes)
    

    Plus, non-US player have to start the game with modified locales (LANG=en_US) or the maps doesn't launch at all. It will be great to fix it too.

    Anyway this game is great and you did an excellent job especially on the gameplay, but it lack a bit of stability.

    Regards.

    System info :
    Linux Mint 13 64 (Ubuntu 12.04)
    Intel i5
    Nvidia Geforce GTX660 (drivers 304.88)
    RAM 8Go
  • tuxatortuxator Join Date: 2010-01-07 Member: 69958Members, Reinforced - Gold
    edited September 2013

    Plus, non-US player have to start the game with modified locales (LANG=en_US) or the maps doesn't launch at all.

    that seems to be fixed in build 255, at least according to their changelog -> "Fixed script errors when the system locale used commas instead of periods as the decimal separator" @Diceroll

    About the crashes: I never saw that mmap entry in any of my logs, but most of the crashes I experienced happened after I played on one map and a mapchange occured (either by changing the server or because the server's map was changed), so it matches with ViVnet's description.
  • DicerollDiceroll Join Date: 2013-09-06 Member: 187868Members
    edited September 2013
    tuxator wrote: »
    that seems to be fixed in build 255, at least according to their changelog -> "Fixed script errors when the system locale used commas instead of periods as the decimal separator" @Diceroll

    I've just applied the update but it's a no go... I still have the exact same problem launching the game without modified locales : Blackscreen after map beeing loaded and "files doesn't match" error when i try to join an online game.

    The game crashes don't seems to be resolved neither, i've just experienced one with the same mmap error.

    cya around.
  • tuxatortuxator Join Date: 2010-01-07 Member: 69958Members, Reinforced - Gold
    ah, thanks. Guess I'll be back in a month.
  • LeeuwLeeuw Join Date: 2013-09-06 Member: 187898Members
    I got the same.. running with gdb debugger delivered:
    "
    Error: Couldn't load texture 'ui/unitstatus_marine.dds' (Couldn't lock file)
    Error: Couldn't load texture 'ui/marine_HUD_frame.dds' (Couldn't lock file)
    third_party/tcmalloc/chromium/src/system-alloc.cc:423] MmapSysAllocator failed.
    [0907/000337:FATAL:process_util_linux.cc(632)] Out of memory.

    Program received signal SIGABRT, Aborted.
    [Switching to Thread 0xe04d8b40 (LWP 4847)]
    0xf7fdb430 in __kernel_vsyscall ()
    (gdb) where
    #0 0xf7fdb430 in __kernel_vsyscall ()
    #1 0xf400a1df in raise () from /lib/i386-linux-gnu/libc.so.6
    #2 0xf400d825 in abort () from /lib/i386-linux-gnu/libc.so.6
    #3 0xf4bbbd0d in base::debug::BreakDebugger() ()
    from /home/stephan/.local/share/Steam/SteamApps/common/Natural Selection 2/libawesomium-1-7.so.0
    #4 0xf4bd66ff in logging::LogMessage::~LogMessage() ()
    from /home/stephan/.local/share/Steam/SteamApps/common/Natural Selection 2/libawesomium-1-7.so.0
    #5 0xf4beb2af in T.471 ()
    from /home/stephan/.local/share/Steam/SteamApps/common/Natural Selection 2/libawesomium-1-7.so.0
    #6 0xf62f55da in tc_malloc ()
    from /home/stephan/.local/share/Steam/SteamApps/common/Natural Selection 2/libawesomium-1-7.so.0
    #7 0xf2721738 in ?? () from /usr/lib32/nvidia-current/libGL.so.1
    Backtrace stopped: previous frame inner to this frame (corrupt stack?)
    "

    I guess the memory allocation bug is in a third party library libawesomium
  • ConfusedConfused Wait. What? Join Date: 2003-01-28 Member: 12904Members, Constellation, NS2 Playtester, Squad Five Blue, Subnautica Playtester
    guys, if you are having the crash after game play issue try reducing the texture quality and enabling texture streaming.

    If you are having the consistency check failed/cannot join servers issue it would be super good to post the contents of your log,~..config/Natural Secltion 2/ log.txt, your sysinfo.

    I have not been able to repro that one, but it might be something I am missing outside of the localization of my commas





  • ViVnetViVnet Join Date: 2004-05-27 Member: 28947Members, Reinforced - Shadow
    This memory related crash happens regardless of video quality. Since it deals with memory consumption, it happens more frequently on higher quality graphics: instantaneously on maximum, about three hours on minimum. Keep in mind, this will take more or less time depending on the available memory in your system, background processes, etc.

    I've also been hearing from players that the Windows version is experiencing the same issue, though I cannot personally confirm it as I choose not to employ such software.

    It's clearly a memory leak or failure to free/allocate correctly. Now that the client is available for Linux, it may be a good idea to run the game through the extremely powerful open development tools. Specifically valgrind, which can be very effective in situations like this.

    Thanks to Leeuw for pointing out awesomium. It seems to have been quite problematic in some of the implementations of it that I can recall (GMod, Planetside 2, others).
  • LeeuwLeeuw Join Date: 2013-09-06 Member: 187898Members
    edited September 2013
    I can confirm it has nothing to do with texture quality.. I already run with middle quality and even tried low quality. Crash still happens. There might be different crashes though.
    And the log.txt seems not present in my (linux) version of the game.

    Edit: just noticed logfile is "~/.config/Natural\ Selection\ 2/log.txt", but capturing stdout is probably the same ;)
  • DicerollDiceroll Join Date: 2013-09-06 Member: 187868Members
    edited September 2013
    Confused wrote: »
    guys, if you are having the crash after game play issue try reducing the texture quality and enabling texture streaming.

    If you are having the consistency check failed/cannot join servers issue it would be super good to post the contents of your log,~..config/Natural Secltion 2/ log.txt, your sysinfo.

    I have not been able to repro that one, but it might be something I am missing outside of the localization of my commas

    Regarding the localization problem, here are the log files after trying to join a server (an UWE official) without modified locales (currently using LANG=fr_FR).

    Concerning the crash problem, i tried to lower Texture Quality and enable Texture Streaming but crashes still occur. ViVnet seems to have pointed to the right direction again (at least this is a track to investigate).

    Regards.

  • ViVnetViVnet Join Date: 2004-05-27 Member: 28947Members, Reinforced - Shadow
    edited September 2013
  • rkfgrkfg Russia Join Date: 2013-09-03 Member: 187744Members, Reinforced - Supporter, Reinforced - Silver, Reinforced - Gold, Reinforced - Diamond, Reinforced - Shadow
    edited September 2013
  • rkfgrkfg Russia Join Date: 2013-09-03 Member: 187744Members, Reinforced - Supporter, Reinforced - Silver, Reinforced - Gold, Reinforced - Diamond, Reinforced - Shadow
    Do you use amd64 or i386 version of the OS? It's probably not related but just to compare to my own Debian amd64.
  • LeeuwLeeuw Join Date: 2013-09-06 Member: 187898Members
    I have the amd64 (64bit) Linux Mint Ubuntu 14.
  • ViVnetViVnet Join Date: 2004-05-27 Member: 28947Members, Reinforced - Shadow
    All of my systems are 64-bit multilib environments.
  • nronksrnronksr Join Date: 2013-09-19 Member: 188347Members
    I attempt to even load ns2 and I receive a crash upon even playing the tutorial. It is related to memory and the libc.

    Log file doesn't report error message, but attached anyway. I can consistently cause the system to crash by just launching the tutorial. Game is unplayable due to crashes.

    Ubuntu 12.04.2 LTS
    3.2.0-38-generic-pae #61-Ubuntu SMP Tue Feb 19 12:39:51 UTC 2013 i686 i686 i386 GNU/Linux
    display: :0.0 screen: 0
    OpenGL vendor string: Advanced Micro Devices, Inc.
    OpenGL renderer string: ATI Radeon HD 4800 Series
    OpenGL version string: 3.3.11672 Compatibility Profile Context
    Driver: 8.97.100.7-121116a-151984C-ATI

    01:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI RV770 [Radeon HD 4850]
    01:00.1 Audio device: Advanced Micro Devices [AMD] nee ATI RV770 HDMI Audio [Radeon HD 4850/4870]
    [ 0.062465] CPU0: Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz stepping 0a
    [ 0.000000] reg 0, base: 0GB, range: 4GB, type WB (ram)

    If you need anything else let me know. :D
    log.txt 35.1K
  • spongeboburuspongeboburu Join Date: 2013-09-30 Member: 188540Members
    I experience both the game crashing and blink problem, haven't experimented with mouse buttons.

    Add to this the problem with the mod consistency check fail (can't join servers with certain mods because of "server mod is out of date", reinstalling the mods do not work) and basically, the game is broken to the point where I can't play it properly.

    I appreciate the effort, but it's understandable that the number of Linux users on Steam have dropped since the first release, half the games in my library are crash prone or having missing / broken features and the only two AAA titles I have were ported four years after their Windows release.
    How does Gabe expect us to go beyond 1% when less than 1% of all AAA are ported and the few indie games we get aren't getting enough Linux love from devs.

    Sorry, off-topic, venting a bit, haven't had my NS2 fix in a while, bugs aside it's brilliant.

    The plus side of porting is finding errors like these and the Linux users give nice feedback, RARELY will devs get a bug report like ViVnet's, what a champ. The question is if UWE can fix it. Valve's Linux porters still can't make the microphone work in L4D2 six months after release, so. :P
Sign In or Register to comment.