Unreal Engine Crashes on Ubuntu with Vulkan

Hi. I setup a fresh desktop with Ubuntu, with all graphics driver needed. The editor does not start, and even if it starts somewhy, when I hit play, it crashes. I tried it with the latest Ubuntu and CentOS 7.

  • If I use windows, it works of course.
  • If I run the editor with -opengl4, it works

So it looks like, something vulkan related.

Here is the crash report:


libUE4Editor-RenderCore.so!GameThreadWaitForTask(TRefCountPtr<FGraphEvent> const&, ENamedThreads::Type, bool) [/home/mudlee/UnrealEngine/Engine/Source/Runtime/RenderCore/Private/RenderingThread.cpp:1091]
libUE4Editor-RenderCore.so!FlushRenderingCommands(bool) [/home/mudlee/UnrealEngine/Engine/Source/Runtime/RenderCore/Private/RenderingThread.cpp:1225]
libUE4Editor-UnrealEd.so!FEditorViewportClient::Draw(FViewport*, FCanvas*) [/home/mudlee/UnrealEngine/Engine/Source/Editor/UnrealEd/Private/EditorViewportClient.cpp:3857]
libUE4Editor-Engine.so!FViewport::Draw(bool) [/home/mudlee/UnrealEngine/Engine/Source/Runtime/Engine/Private/UnrealClient.cpp:1513]
libUE4Editor-UnrealEd.so!UEditorEngine::UpdateSingleViewportClient(FEditorViewportClient*, bool, bool) [/home/mudlee/UnrealEngine/Engine/Source/Editor/UnrealEd/Private/EditorEngine.cpp:2039]
libUE4Editor-UnrealEd.so!UEditorEngine::Tick(float, bool) [/home/mudlee/UnrealEngine/Engine/Source/Editor/UnrealEd/Private/EditorEngine.cpp:1750]
libUE4Editor-UnrealEd.so!UUnrealEdEngine::Tick(float, bool) [/home/mudlee/UnrealEngine/Engine/Source/Editor/UnrealEd/Private/UnrealEdEngine.cpp:400]
UE4Editor!FEngineLoop::Tick() [/home/mudlee/UnrealEngine/Engine/Source/Runtime/Launch/Private/LaunchEngineLoop.cpp:3961]
UE4Editor!GuardedMain(char16_t const*) [/home/mudlee/UnrealEngine/Engine/Source/Runtime/Launch/Private/Launch.cpp:170]
libUE4Editor-UnixCommonStartup.so!CommonUnixMain(int, char**, int (*)(char16_t const*)) [/home/mudlee/UnrealEngine/Engine/Source/Runtime/Unix/UnixCommonStartup/Private/UnixCommonStartup.cpp:243]
libc.so.6!__libc_start_main(+0xea)
UE4Editor!_start()

Here is the log, if I start it from the command line:


[2019.04.24-09.55.44:538]  0]LogVulkanRHI: Error: VulkanRHI::vkCreateSwapchainKHR(Device.GetInstanceHandle(), &SwapChainInfo, VULKAN_CPU_ALLOCATOR, &SwapChain) failed, VkResult=-3
 at /home/mudlee/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanSwapChain.cpp:432
 with error VK_ERROR_INITIALIZATION_FAILED
Fatal error: [File:/home/mudlee/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanUtil.cpp] [Line: 678]
VulkanRHI::vkCreateSwapchainKHR(Device.GetInstanceHandle(), &SwapChainInfo, VULKAN_CPU_ALLOCATOR, &SwapChain) failed, VkResult=-3
 at /home/mudlee/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanSwapChain.cpp:432
 with error VK_ERROR_INITIALIZATION_FAILED
Signal 11 caught.
Malloc Size=65538 LargeMemoryPoolOffset=65554
CommonUnixCrashHandler: Signal=11
Malloc Size=65535 LargeMemoryPoolOffset=131119
Malloc Size=723632 LargeMemoryPoolOffset=854768
[2019.04.24-09.55.44:546]  0]LogCore: Error: appError called: Assertion failed:  [File:/home/mudlee/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanUtil.cpp] [Line: 678]
VulkanRHI::vkCreateSwapchainKHR(Device.GetInstanceHandle(), &SwapChainInfo, VULKAN_CPU_ALLOCATOR, &SwapChain) failed, VkResult=-3
 at /home/mudlee/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanSwapChain.cpp:432
 with error VK_ERROR_INITIALIZATION_FAILED

[2019.04.24-09.55.44:549]  0]LogCore: === Critical error: ===
Unhandled Exception: SIGSEGV: invalid attempt to read memory at address 0x000000000000775d

[2019.04.24-09.55.44:549]  0]LogCore: Assertion failed:  [File:/home/mudlee/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanUtil.cpp] [Line: 678]
VulkanRHI::vkCreateSwapchainKHR(Device.GetInstanceHandle(), &SwapChainInfo, VULKAN_CPU_ALLOCATOR, &SwapChain) failed, VkResult=-3
 at /home/mudlee/UnrealEngine/Engine/Source/Runtime/VulkanRHI/Private/VulkanSwapChain.cpp:432
 with error VK_ERROR_INITIALIZATION_FAILED


And here is my vulkaninfo:


Vulkan Instance Version: 1.1.97



Instance Extensions:
====================
Instance Extensions    count = 17
    VK_EXT_acquire_xlib_display         : extension revision  1
    VK_EXT_debug_report                 : extension revision  8
    VK_EXT_debug_utils                  : extension revision  1
    VK_EXT_direct_mode_display          : extension revision  1
    VK_EXT_display_surface_counter      : extension revision  1
    VK_KHR_device_group_creation        : extension revision  1
    VK_KHR_display                      : extension revision 23
    VK_KHR_external_fence_capabilities  : extension revision  1
    VK_KHR_external_memory_capabilities : extension revision  1
    VK_KHR_external_semaphore_capabilities: extension revision  1
    VK_KHR_get_display_properties2      : extension revision  1
    VK_KHR_get_physical_device_properties2: extension revision  1
    VK_KHR_get_surface_capabilities2    : extension revision  1
    VK_KHR_surface                      : extension revision 25
    VK_KHR_wayland_surface              : extension revision  6
    VK_KHR_xcb_surface                  : extension revision  6
    VK_KHR_xlib_surface                 : extension revision  6
Layers: count = 0
=======
Presentable Surfaces:
=====================
GPU id       : 0 (GeForce GTX 1050)
Surface type : VK_KHR_xcb_surface
Formats:        count = 2
    B8G8R8A8_UNORM
    B8G8R8A8_SRGB
Present Modes:        count = 3
    FIFO_KHR
    FIFO_RELAXED_KHR
    IMMEDIATE_KHR
VkSurfaceCapabilitiesKHR:
    minImageCount       = 2
    maxImageCount       = 8
    currentExtent:
        width       = 256
        height      = 256
    minImageExtent:
        width       = 256
        height      = 256
    maxImageExtent:
        width       = 256
        height      = 256
    maxImageArrayLayers = 1
    supportedTransform:
        VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR
    currentTransform:
        VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR
    supportedCompositeAlpha:
        VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR
    supportedUsageFlags:
        VK_IMAGE_USAGE_TRANSFER_SRC_BIT
        VK_IMAGE_USAGE_TRANSFER_DST_BIT
        VK_IMAGE_USAGE_SAMPLED_BIT
        VK_IMAGE_USAGE_STORAGE_BIT
        VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT
        VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT
VkSurfaceCapabilities2EXT:
    supportedSurfaceCounters:
        None

GPU id       : 0 (GeForce GTX 1050)
Surface type : VK_KHR_xlib_surface
Formats:        count = 2
    B8G8R8A8_UNORM
    B8G8R8A8_SRGB
Present Modes:        count = 3
    FIFO_KHR
    FIFO_RELAXED_KHR
    IMMEDIATE_KHR
VkSurfaceCapabilitiesKHR:
    minImageCount       = 2
    maxImageCount       = 8
    currentExtent:
        width       = 256
        height      = 256
    minImageExtent:
        width       = 256
        height      = 256
    maxImageExtent:
        width       = 256
        height      = 256
    maxImageArrayLayers = 1
    supportedTransform:
        VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR
    currentTransform:
        VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR
    supportedCompositeAlpha:
        VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR
    supportedUsageFlags:
        VK_IMAGE_USAGE_TRANSFER_SRC_BIT
        VK_IMAGE_USAGE_TRANSFER_DST_BIT
        VK_IMAGE_USAGE_SAMPLED_BIT
        VK_IMAGE_USAGE_STORAGE_BIT
        VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT
        VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT
VkSurfaceCapabilities2EXT:
    supportedSurfaceCounters:
        None


Groups :
========
    Device Group Properties (Group 0) :
        physicalDeviceCount = 1

            GeForce GTX 1050 (ID: 0)

        subsetAllocation = 0

    Device Group Present Capabilities (Group 0) :

        GeForce GTX 1050 (ID: 0)
        Can present images from the following devices:
            GeForce GTX 1050 (ID: 0)

        Present modes:
            VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR



1 Like

I meet the similar error. When I run the packaged project, I find that the memory grows slowly, but there is no problem in Windows.
My UE version is 4.26.2.