doitsujin / dxvk

Vulkan-based implementation of D3D8, 9, 10 and 11 for Linux / Wine
zlib License
13.45k stars 868 forks source link

FFXIV launcher fails to start with DXVK on latest NVIDIA drivers #2350

Closed hilts-vaughan closed 3 years ago

hilts-vaughan commented 3 years ago
                  -`                    touma@setsuna 
                  .o+`                   ------------- 
                 `ooo/                   OS: Arch Linux x86_64 
                `+oooo:                  Model: B450 AORUS PRO WIFI 
               `+oooooo:                 Kernel: 5.14.15-arch1-1 
               -+oooooo+:                Uptime: 19 mins 
             `/:-:++oooo+:               Packages: 1688 (pacman) 
            `/++++/+++++++:              Shell: zsh 5.8 
           `/++++++++++++++:             Resolution: 2560x1440 
          `/+++ooooooooooooo/`           DE: GNOME 40.5 
         ./ooosssso++osssssso+`          WM: Mutter 
        .oossssso-````/ossssss+`         WM Theme: EvoPop-Azure 
       -osssssso.      :ssssssso.        Theme: Adwaita-dark [GTK2/3] 
      :osssssss/        osssso+++.       Icons: Numix [GTK2/3] 
     /ossssssss/        +ssssooo/-       Terminal: gnome-terminal 
   `/ossssso+/:-        -:/+osssso+-     CPU: AMD Ryzen 7 3800X (16) @ 3.900GHz 
  `+sso+:-`                 `.-/+oso:    GPU: NVIDIA GeForce GTX 1080 
 `++:.                           `-/+/   Memory: 3431MiB / 32049MiB 
 .`                                 `/

When running FFXIV from Lutris on nvidia 495.44-2, I appear to get one of two possibilities:

  1. I get some HTTPS Error

image

  1. Or more often the launcher just freezes and won't continue. When this happens, the window becomes unresponsive and my window manager (GNOME) prompts me to kill it: image

This is working with WINE's D3D implementation and does not cause the freeze (i.e: turning off DXVK), though the frame rate is awful. =) However, I can login. Re-enabling DXVK will cause the game to no longer boot again.

Reports with no log files will be ignored.

System information

Apitrace file(s)

N/A; will look into how to make one for the launcher

Log files

info:  Game: ffxivlauncher.exe
info:  DXVK: v1.9.2-21-g2e66f45a
info:  Built-in extension providers:
info:    Win32 WSI
info:    OpenVR
info:    OpenXR
info:  OpenVR: could not open registry key, status 2
info:  OpenVR: Failed to locate module
info:  Enabled instance extensions:
info:    VK_KHR_get_surface_capabilities2
info:    VK_KHR_surface
info:    VK_KHR_win32_surface
info:  D3D9: VK_FORMAT_D16_UNORM_S8_UINT -> VK_FORMAT_D24_UNORM_S8_UINT
info:  NVIDIA GeForce GTX 1080:
info:    Driver: 495.44.0
info:    Vulkan: 1.2.186
info:    Memory Heap[0]: 
info:      Size: 8192 MiB
info:      Flags: 0x1
info:      Memory Type[7]: Property Flags = 0x1
info:    Memory Heap[1]: 
info:      Size: 24036 MiB
info:      Flags: 0x0
info:      Memory Type[0]: Property Flags = 0x0
info:      Memory Type[1]: Property Flags = 0x0
info:      Memory Type[2]: Property Flags = 0x0
info:      Memory Type[3]: Property Flags = 0x0
info:      Memory Type[4]: Property Flags = 0x0
info:      Memory Type[5]: Property Flags = 0x0
info:      Memory Type[6]: Property Flags = 0x0
info:      Memory Type[8]: Property Flags = 0x6
info:      Memory Type[9]: Property Flags = 0xe
info:    Memory Heap[2]: 
info:      Size: 246 MiB
info:      Flags: 0x1
info:      Memory Type[10]: Property Flags = 0x7
info:  Process set as DPI aware
info:  Device properties:
info:    Device name:     : NVIDIA GeForce GTX 1080
info:    Driver version   : 495.44.0
info:  Enabled device extensions:
info:    VK_EXT_4444_formats
info:    VK_EXT_conservative_rasterization
info:    VK_EXT_custom_border_color
info:    VK_EXT_depth_clip_enable
info:    VK_EXT_extended_dynamic_state
info:    VK_EXT_host_query_reset
info:    VK_EXT_robustness2
info:    VK_EXT_shader_demote_to_helper_invocation
info:    VK_EXT_shader_viewport_index_layer
info:    VK_EXT_transform_feedback
info:    VK_EXT_vertex_attribute_divisor
info:    VK_KHR_create_renderpass2
info:    VK_KHR_depth_stencil_resolve
info:    VK_KHR_draw_indirect_count
info:    VK_KHR_driver_properties
info:    VK_KHR_image_format_list
info:    VK_KHR_sampler_mirror_clamp_to_edge
info:    VK_KHR_shader_float_controls
info:    VK_KHR_swapchain
info:  Device features:
info:    robustBufferAccess                     : 1
info:    fullDrawIndexUint32                    : 1
info:    imageCubeArray                         : 1
info:    independentBlend                       : 1
info:    geometryShader                         : 1
info:    tessellationShader                     : 0
info:    sampleRateShading                      : 1
info:    dualSrcBlend                           : 0
info:    logicOp                                : 0
info:    multiDrawIndirect                      : 0
info:    drawIndirectFirstInstance              : 0
info:    depthClamp                             : 1
info:    depthBiasClamp                         : 1
info:    fillModeNonSolid                       : 1
info:    depthBounds                            : 1
info:    multiViewport                          : 1
info:    samplerAnisotropy                      : 1
info:    textureCompressionBC                   : 1
info:    occlusionQueryPrecise                  : 1
info:    pipelineStatisticsQuery                : 1
info:    vertexPipelineStoresAndAtomics         : 1
info:    fragmentStoresAndAtomics               : 0
info:    shaderImageGatherExtended              : 0
info:    shaderStorageImageExtendedFormats      : 0
info:    shaderStorageImageReadWithoutFormat    : 0
info:    shaderStorageImageWriteWithoutFormat   : 1
info:    shaderClipDistance                     : 1
info:    shaderCullDistance                     : 1
info:    shaderFloat64                          : 0
info:    shaderInt64                            : 0
info:    variableMultisampleRate                : 0
info:  VK_EXT_4444_formats
info:    formatA4R4G4B4                         : 1
info:    formatA4B4G4R4                         : 1
info:  VK_EXT_custom_border_color
info:    customBorderColors                     : 1
info:    customBorderColorWithoutFormat         : 1
info:  VK_EXT_depth_clip_enable
info:    depthClipEnable                        : 1
info:  VK_EXT_extended_dynamic_state
info:    extendedDynamicState                   : 1
info:  VK_EXT_host_query_reset
info:    hostQueryReset                         : 1
info:  VK_EXT_memory_priority
info:    memoryPriority                         : 0
info:  VK_EXT_robustness2
info:    robustBufferAccess2                    : 1
info:    robustImageAccess2                     : 0
info:    nullDescriptor                         : 1
info:  VK_EXT_shader_demote_to_helper_invocation
info:    shaderDemoteToHelperInvocation         : 1
info:  VK_EXT_transform_feedback
info:    transformFeedback                      : 0
info:    geometryStreams                        : 0
info:  VK_EXT_vertex_attribute_divisor
info:    vertexAttributeInstanceRateDivisor     : 1
info:    vertexAttributeInstanceRateZeroDivisor : 1
info:  VK_KHR_buffer_device_address
info:    bufferDeviceAddress                    : 0
info:  Queue families:
info:    Graphics : 0
info:    Transfer : 1
info:  DXVK: Read 1 valid state cache entries
info:  DXVK: Using 10 compiler threads
info:  D3D9DeviceEx::ResetSwapChain:
info:    Requested Presentation Parameters
info:      - Width:              1024
info:      - Height:             604
info:      - Format:             D3D9Format::X8R8G8B8
info:      - Auto Depth Stencil: false
info:                  ^ Format: D3D9Format::Unknown
info:      - Windowed:           true
info:  Presenter: Actual swap chain properties:
info:    Format:       VK_FORMAT_B8G8R8A8_UNORM
info:    Present mode: VK_PRESENT_MODE_IMMEDIATE_KHR
info:    Buffer size:  1024x604
info:    Image count:  2
info:    Exclusive FS: 0
debug: Compiling graphics pipeline...
debug:   vs  : VS_8447be58e230e51f75214bf6f8ca5bb4af6d4975
debug:   fs  : FS_327b5b2e9b7e8cbb3b3724155527803e45c64daa
debug:   attr 0 : location 0, binding 0, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 1 : location 1, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 2 : location 2, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 3 : location 3, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 4 : location 4, binding 0, format VK_FORMAT_R32G32_SFLOAT, offset 16
debug:   attr 5 : location 5, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 6 : location 6, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 7 : location 7, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 8 : location 8, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 9 : location 9, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 10 : location 10, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 11 : location 11, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 12 : location 12, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 13 : location 13, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 14 : location 14, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 15 : location 15, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 16 : location 16, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 17 : location 17, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   binding 0 : binding 0, stride 24, rate 0, divisor 0
debug:   binding 1 : binding 16, stride 0, rate 0, divisor 0
debug: DxvkGraphicsPipeline: Finished in 4 ms
debug: Compiling graphics pipeline...
debug:   vs  : VS_387cebd84e2128723e7652e206c12e40c8349978
debug:   fs  : FS_e6b61302ceb7ca00863c9553de25e66bbe35b2cd
debug:   attr 0 : location 0, binding 0, format VK_FORMAT_R32G32B32_SFLOAT, offset 0
debug:   attr 1 : location 1, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 2 : location 2, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 3 : location 3, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 4 : location 4, binding 0, format VK_FORMAT_R32G32_SFLOAT, offset 16
debug:   attr 5 : location 5, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 6 : location 6, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 7 : location 7, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 8 : location 8, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 9 : location 9, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 10 : location 10, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 11 : location 11, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 12 : location 12, binding 0, format VK_FORMAT_B8G8R8A8_UNORM, offset 12
debug:   attr 13 : location 13, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 14 : location 14, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 15 : location 15, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 16 : location 16, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   attr 17 : location 17, binding 16, format VK_FORMAT_R32G32B32A32_SFLOAT, offset 0
debug:   binding 0 : binding 0, stride 24, rate 0, divisor 0
debug:   binding 1 : binding 16, stride 0, rate 0, divisor 0
info:  Presenter: Actual swap chain properties:
info:    Format:       VK_FORMAT_B8G8R8A8_UNORM
info:    Present mode: VK_PRESENT_MODE_FIFO_KHR
info:    Buffer size:  1024x604
info:    Image count:  3
info:    Exclusive FS: 0
debug: DxvkGraphicsPipeline: Finished in 59 ms
debug: Compiling graphics pipeline...
debug:   vs  : da39a3ee5e6b4b0d3255bfef95601890afd80709
debug:   fs  : da39a3ee5e6b4b0d3255bfef95601890afd80709
debug: DxvkGraphicsPipeline: Finished in 0 ms
err:   D3D9SwapChainEx: Failed to recreate swap chain
info:  Game: ffxivlauncher.exe
info:  DXVK: v1.9.2-21-g2e66f45a
info:  Built-in extension providers:
info:    Win32 WSI
info:    OpenVR
info:    OpenXR
info:  OpenVR: could not open registry key, status 2
info:  OpenVR: Failed to locate module
info:  Enabled instance extensions:
info:    VK_KHR_get_surface_capabilities2
info:    VK_KHR_surface
info:    VK_KHR_win32_surface
info:  NVIDIA GeForce GTX 1080:
info:    Driver: 495.44.0
info:    Vulkan: 1.2.186
info:    Memory Heap[0]: 
info:      Size: 8192 MiB
info:      Flags: 0x1
info:      Memory Type[7]: Property Flags = 0x1
info:    Memory Heap[1]: 
info:      Size: 24036 MiB
info:      Flags: 0x0
info:      Memory Type[0]: Property Flags = 0x0
info:      Memory Type[1]: Property Flags = 0x0
info:      Memory Type[2]: Property Flags = 0x0
info:      Memory Type[3]: Property Flags = 0x0
info:      Memory Type[4]: Property Flags = 0x0
info:      Memory Type[5]: Property Flags = 0x0
info:      Memory Type[6]: Property Flags = 0x0
info:      Memory Type[8]: Property Flags = 0x6
info:      Memory Type[9]: Property Flags = 0xe
info:    Memory Heap[2]: 
info:      Size: 246 MiB
info:      Flags: 0x1
info:      Memory Type[10]: Property Flags = 0x7
hilts-vaughan commented 3 years ago

Note: It works if I...

  1. Downgrade my driver
  2. ... or use a fresh prefix

So, I am inclined it's something to do with the driver + prefix; is this worth chasing down or should I just blow the buggy prefix away?

doitsujin commented 3 years ago

Works fine here, and HTTPS errors are not a DXVK problem.

hilts-vaughan commented 3 years ago

I see. Since it's seemingly something to do with the prefix / driver combination, I don't particularly need this fixed nor do I expect you to (especially since a fresh install works on the newest drivers). However, it takes a lot of disk space to keep a working install and the old prefix around.

Is there any information you want from the old prefix, not working under those drivers? If not, I will just submit a report to Nvidia and then blow the prefix away. I just didn't want to do that if there was valuable debugging information in it that you may want to look at.

doitsujin commented 3 years ago

There's nothing I can do here anyway, if the exact same DXVK code works fine on a different wine prefix then DXVK simply isn't the reason why it's not working.