SIGSEGV on pressing Stop

Hello,
I’ve been trying to test Unreal Engine on Linux and it seems ok besides one fact - after pressing Stop when game is played with Dedicated server turned on, the engine crashes. I’m not that good at reading terminal log, but it looks like something causes “Segmentation fault”. Here’s the terminal output after pressing Play button and then Stop:

I’m using Arch Linux with proprietary Nvidia driver, Geforce 840M, UE4 Release branch.

EDIT: I’d just like to mention that the output is from project I copied from Windows, but same thing happens on Linux created one

I’ve been attempting UObject replication and have run into a similar problems.

  • UE 4.13 (git tag: 4.13.1-release)
  • Clang 3.8.1 on Arch Linux.
  • NVIDIA GTX 670 (NVIDIA drivers 370.28)
  • Compiled with and without Debugging (both Editor and game).

Tested first in the editor (PIE), with dedicated server turned off I can start/stop play at any time. Turning on dedicated server mode, with any amount of players, will work until I press escape or click the stop button in the Editor. Doing so will display a stack trace of varying size, with varying results. Most times, it contains Slate functions; sometimes jemalloc, sometimes unknowns (marked ?? in GDB).

It never seems to occur around my code… and I confirmed this later by testing the same project on Windows 10 (VS2015, pre-compiled Editor [via the Launcher]). Worked perfectly without issue.

I just like to add that upgrading to 4.14 (git tag: 4.14.0-preview-1) it hasn’t change anything; even after ridding myself of my test object–no dice…

Hey Romen & hdak1945-

Thank you for submitting a bug report. I have reproduced this issue and logged a report for it here Unreal Engine Issues and Bug Tracker (UE-37771) . You can track the report’s status as the issue is reviewed by our development staff.

Cheers

After digging through other Answerhub issues I found a possible workaround: add “-ansimalloc” or “-binnedmalloc” to the command line arguments, e.g.

UE4Editor (project filename) (editor arguments) -ansimalloc

Now about that argument:

LinuxPlatformMemory.cpp does something special, it modifies which memory allocator is used.

This command line option is only lightly mentioned at the beginning of the logs when running on Linux only and doesn’t seem to be documented elsewhere.

All I can tell about this after grokking through LinuxPlatformMemory.cpp, jemalloc apparently makes the engine use 20% less memory; however I don’t know enough about jemalloc (or the others) to compare to each other and why jemalloc was chosen as the default.

Tested “-ansimalloc” with 4.13.1 and 4.14 (git tags 4.13.1-release, 4.14.0-preview-1 respectively) and it seems to be working, as in, exiting out PIE’s dedicated server mode no longer crashes the Editor. I can only speculate what modifying the low level memory allocator would do for everything else.

Confirmed, using -ansimalloc prevents editor from crashing. The editor feels more responsive as well, but it could be only an impression