gamescope
gamescope copied to clipboard
Gamescope WSI broken w/ VK_EXT_swapchain_maintenance1 for some drivers
From my testing w/ running versions of gamescope since commit 927c56535d288eb035b1657446a54d88fd5fe310 on my intel igpu, seems like lack of support for the VK_EXT_swapchain_maintenance1 device extension causes vkCreateDevice() to fail.
test command: VK_LOADER_DEBUG=error,driver gamescope -- vkcube --gpu_number 0
output:
No CAP_SYS_NICE, falling back to regular-priority compute and threads.
Performance will be affected.
DRIVER: Searching for driver manifest files
DRIVER: In following locations:
DRIVER: ${HOME}/.config/vulkan/icd.d
DRIVER: /etc/xdg/vulkan/icd.d
DRIVER: /etc/vulkan/icd.d
DRIVER: ${HOME}/.local/share/vulkan/icd.d
DRIVER: ${HOME}/.local/share/flatpak/exports/share/vulkan/icd.d
DRIVER: /var/lib/flatpak/exports/share/vulkan/icd.d
DRIVER: /usr/local/share/vulkan/icd.d
DRIVER: /usr/share/vulkan/icd.d
DRIVER: Found the following files:
DRIVER: /usr/share/vulkan/icd.d/intel_icd.x86_64.json
DRIVER: /usr/share/vulkan/icd.d/intel_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/nvidia_icd.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel.so
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel_hasvk.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel_hasvk.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/nvidia_icd.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named libGLX_nvidia.so.0
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel_hasvk.so
DRIVER: Searching for driver manifest files
DRIVER: In following locations:
DRIVER: ${HOME}/.config/vulkan/icd.d
DRIVER: /etc/xdg/vulkan/icd.d
DRIVER: /etc/vulkan/icd.d
DRIVER: ${HOME}/.local/share/vulkan/icd.d
DRIVER: ${HOME}/.local/share/flatpak/exports/share/vulkan/icd.d
DRIVER: /var/lib/flatpak/exports/share/vulkan/icd.d
DRIVER: /usr/local/share/vulkan/icd.d
DRIVER: /usr/share/vulkan/icd.d
DRIVER: Found the following files:
DRIVER: /usr/share/vulkan/icd.d/intel_icd.x86_64.json
DRIVER: /usr/share/vulkan/icd.d/intel_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/nvidia_icd.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel.so
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel_hasvk.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel_hasvk.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/nvidia_icd.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named libGLX_nvidia.so.0
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel_hasvk.so
DRIVER: Searching for driver manifest files
DRIVER: In following locations:
DRIVER: ${HOME}/.config/vulkan/icd.d
DRIVER: /etc/xdg/vulkan/icd.d
DRIVER: /etc/vulkan/icd.d
DRIVER: ${HOME}/.local/share/vulkan/icd.d
DRIVER: ${HOME}/.local/share/flatpak/exports/share/vulkan/icd.d
DRIVER: /var/lib/flatpak/exports/share/vulkan/icd.d
DRIVER: /usr/local/share/vulkan/icd.d
DRIVER: /usr/share/vulkan/icd.d
DRIVER: Found the following files:
DRIVER: /usr/share/vulkan/icd.d/intel_icd.x86_64.json
DRIVER: /usr/share/vulkan/icd.d/intel_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/nvidia_icd.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel.so
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel_hasvk.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel_hasvk.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/nvidia_icd.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named libGLX_nvidia.so.0
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel_hasvk.so
DRIVER: Searching for driver manifest files
DRIVER: In following locations:
DRIVER: ${HOME}/.config/vulkan/icd.d
DRIVER: /etc/xdg/vulkan/icd.d
DRIVER: /etc/vulkan/icd.d
DRIVER: ${HOME}/.local/share/vulkan/icd.d
DRIVER: ${HOME}/.local/share/flatpak/exports/share/vulkan/icd.d
DRIVER: /var/lib/flatpak/exports/share/vulkan/icd.d
DRIVER: /usr/local/share/vulkan/icd.d
DRIVER: /usr/share/vulkan/icd.d
DRIVER: Found the following files:
DRIVER: /usr/share/vulkan/icd.d/intel_icd.x86_64.json
DRIVER: /usr/share/vulkan/icd.d/intel_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/nvidia_icd.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel.so
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel_hasvk.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel_hasvk.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/nvidia_icd.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named libGLX_nvidia.so.0
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel_hasvk.so
INFO | DRIVER: linux_read_sorted_physical_devices:
INFO | DRIVER: Original order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
INFO | DRIVER: Sorted order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
INFO | DRIVER: linux_read_sorted_physical_devices:
INFO | DRIVER: Original order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
INFO | DRIVER: Sorted order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
DEBUG | DRIVER: Copying old device 0 into new device 0
DEBUG | DRIVER: Copying old device 1 into new device 1
INFO | DRIVER: linux_read_sorted_physical_devices:
INFO | DRIVER: Original order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
INFO | DRIVER: Sorted order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
DEBUG | DRIVER: Copying old device 0 into new device 0
DEBUG | DRIVER: Copying old device 1 into new device 1
INFO | DRIVER: linux_read_sorted_physical_devices:
INFO | DRIVER: Original order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
INFO | DRIVER: Sorted order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
DEBUG | DRIVER: Copying old device 0 into new device 0
DEBUG | DRIVER: Copying old device 1 into new device 1
vulkan: selecting physical device 'Intel(R) Graphics (ADL GT2)': queue family 0 (general queue family 0)
vulkan: physical device supports DRM format modifiers
DRIVER | LAYER: vkCreateDevice layer callstack setup to:
DRIVER | LAYER: <Application>
DRIVER | LAYER: ||
DRIVER | LAYER: <Loader>
DRIVER | LAYER: ||
DRIVER | LAYER: <Device>
DRIVER | LAYER: Using "Intel(R) Graphics (ADL GT2)" with driver: "/usr/lib/libvulkan_intel.so"
wlserver: [backend/headless/backend.c:67] Creating headless backend
vulkan: supported DRM formats for sampling usage:
vulkan: AR24 (0x34325241)
vulkan: XR24 (0x34325258)
vulkan: AB24 (0x34324241)
vulkan: XB24 (0x34324258)
vulkan: RG16 (0x36314752)
vulkan: NV12 (0x3231564E)
vulkan: AB4H (0x48344241)
vulkan: XB4H (0x48344258)
vulkan: AB48 (0x38344241)
vulkan: XB48 (0x38344258)
vulkan: AB30 (0x30334241)
vulkan: XB30 (0x30334258)
vulkan: AR30 (0x30335241)
vulkan: XR30 (0x30335258)
vulkan: Creating Gamescope nested swapchain with format 44 and colorspace 0
wlserver: Running compositor on wayland display 'gamescope-0'
wlserver: [backend/headless/backend.c:17] Starting headless backend
wlserver: [xwayland/server.c:108] Starting Xwayland on :1
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning: Could not resolve keysym XF86CameraAccessEnable
> Warning: Could not resolve keysym XF86CameraAccessDisable
> Warning: Could not resolve keysym XF86CameraAccessToggle
> Warning: Could not resolve keysym XF86NextElement
> Warning: Could not resolve keysym XF86PreviousElement
> Warning: Could not resolve keysym XF86AutopilotEngageToggle
> Warning: Could not resolve keysym XF86MarkWaypoint
> Warning: Could not resolve keysym XF86Sos
> Warning: Could not resolve keysym XF86NavChart
> Warning: Could not resolve keysym XF86FishingChart
> Warning: Could not resolve keysym XF86SingleRangeRadar
> Warning: Could not resolve keysym XF86DualRangeRadar
> Warning: Could not resolve keysym XF86RadarOverlay
> Warning: Could not resolve keysym XF86TraditionalSonar
> Warning: Could not resolve keysym XF86ClearvuSonar
> Warning: Could not resolve keysym XF86SidevuSonar
> Warning: Could not resolve keysym XF86NavInfo
Errors from xkbcomp are not fatal to the X server
wlserver: [types/wlr_compositor.c:692] New wlr_surface 0x5eaec426ee40 (res 0x5eaec4264e20)
wlserver: [xwayland/server.c:273] Xserver is ready
pipewire: stream state changed: connecting
pipewire: stream state changed: paused
pipewire: stream available on node ID: 84
vblank: Using timerfd.
vulkan: Creating Gamescope nested swapchain with format 44 and colorspace 0
DRIVER: Searching for driver manifest files
DRIVER: In following locations:
DRIVER: ${HOME}/.config/vulkan/icd.d
DRIVER: /etc/xdg/vulkan/icd.d
DRIVER: /etc/vulkan/icd.d
DRIVER: ${HOME}/.local/share/vulkan/icd.d
DRIVER: ${HOME}/.local/share/flatpak/exports/share/vulkan/icd.d
DRIVER: /var/lib/flatpak/exports/share/vulkan/icd.d
DRIVER: /usr/local/share/vulkan/icd.d
DRIVER: /usr/share/vulkan/icd.d
DRIVER: Found the following files:
DRIVER: /usr/share/vulkan/icd.d/intel_icd.x86_64.json
DRIVER: /usr/share/vulkan/icd.d/intel_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/nvidia_icd.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel.so
pipewire: renegotiating stream params (size: 1280x720)
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel_hasvk.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel_hasvk.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/nvidia_icd.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named libGLX_nvidia.so.0
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel_hasvk.so
DRIVER: Searching for driver manifest files
DRIVER: In following locations:
DRIVER: ${HOME}/.config/vulkan/icd.d
DRIVER: /etc/xdg/vulkan/icd.d
DRIVER: /etc/vulkan/icd.d
DRIVER: ${HOME}/.local/share/vulkan/icd.d
DRIVER: ${HOME}/.local/share/flatpak/exports/share/vulkan/icd.d
DRIVER: /var/lib/flatpak/exports/share/vulkan/icd.d
DRIVER: /usr/local/share/vulkan/icd.d
DRIVER: /usr/share/vulkan/icd.d
DRIVER: Found the following files:
DRIVER: /usr/share/vulkan/icd.d/intel_icd.x86_64.json
DRIVER: /usr/share/vulkan/icd.d/intel_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/nvidia_icd.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel.so
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel_hasvk.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel_hasvk.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/nvidia_icd.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named libGLX_nvidia.so.0
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel_hasvk.so
DRIVER: Searching for driver manifest files
DRIVER: In following locations:
DRIVER: ${HOME}/.config/vulkan/icd.d
DRIVER: /etc/xdg/vulkan/icd.d
DRIVER: /etc/vulkan/icd.d
DRIVER: ${HOME}/.local/share/vulkan/icd.d
DRIVER: ${HOME}/.local/share/flatpak/exports/share/vulkan/icd.d
DRIVER: /var/lib/flatpak/exports/share/vulkan/icd.d
DRIVER: /usr/local/share/vulkan/icd.d
DRIVER: /usr/share/vulkan/icd.d
DRIVER: Found the following files:
DRIVER: /usr/share/vulkan/icd.d/intel_icd.x86_64.json
DRIVER: /usr/share/vulkan/icd.d/intel_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/nvidia_icd.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel.so
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel_hasvk.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel_hasvk.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/nvidia_icd.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named libGLX_nvidia.so.0
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel_hasvk.so
DRIVER: Searching for driver manifest files
DRIVER: In following locations:
DRIVER: ${HOME}/.config/vulkan/icd.d
DRIVER: /etc/xdg/vulkan/icd.d
DRIVER: /etc/vulkan/icd.d
DRIVER: ${HOME}/.local/share/vulkan/icd.d
DRIVER: ${HOME}/.local/share/flatpak/exports/share/vulkan/icd.d
DRIVER: /var/lib/flatpak/exports/share/vulkan/icd.d
DRIVER: /usr/local/share/vulkan/icd.d
DRIVER: /usr/share/vulkan/icd.d
DRIVER: Found the following files:
DRIVER: /usr/share/vulkan/icd.d/intel_icd.x86_64.json
DRIVER: /usr/share/vulkan/icd.d/intel_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json
DRIVER: /usr/share/vulkan/icd.d/nvidia_icd.json
DRIVER: /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel.so
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib32/libvulkan_intel_hasvk.so
DRIVER: Requested ICD /usr/lib32/libvulkan_intel_hasvk.so was wrong bit-type. Ignoring this JSON
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/nvidia_icd.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named libGLX_nvidia.so.0
DRIVER: Found ICD manifest file /usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json, version 1.0.0
DEBUG | DRIVER: Searching for ICD drivers named /usr/lib/libvulkan_intel_hasvk.so
ATTENTION: default value of option vk_khr_present_wait overridden by environment.
INFO | DRIVER: linux_read_sorted_physical_devices:
INFO | DRIVER: Original order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
INFO | DRIVER: Sorted order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
INFO | DRIVER: linux_read_sorted_physical_devices:
INFO | DRIVER: Original order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
INFO | DRIVER: Sorted order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
DEBUG | DRIVER: Copying old device 0 into new device 0
DEBUG | DRIVER: Copying old device 1 into new device 1
INFO | DRIVER: linux_read_sorted_physical_devices:
INFO | DRIVER: Original order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
INFO | DRIVER: Sorted order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
DEBUG | DRIVER: Copying old device 0 into new device 0
DEBUG | DRIVER: Copying old device 1 into new device 1
INFO | DRIVER: linux_read_sorted_physical_devices:
INFO | DRIVER: Original order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
INFO | DRIVER: Sorted order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
DEBUG | DRIVER: Copying old device 0 into new device 0
DEBUG | DRIVER: Copying old device 1 into new device 1
INFO | DRIVER: linux_read_sorted_physical_devices:
INFO | DRIVER: Original order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
INFO | DRIVER: Sorted order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
DEBUG | DRIVER: Copying old device 0 into new device 0
DEBUG | DRIVER: Copying old device 1 into new device 1
INFO | DRIVER: linux_read_sorted_physical_devices:
INFO | DRIVER: Original order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
INFO | DRIVER: Sorted order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
DEBUG | DRIVER: Copying old device 0 into new device 0
DEBUG | DRIVER: Copying old device 1 into new device 1
INFO | DRIVER: linux_read_sorted_physical_devices:
INFO | DRIVER: Original order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
INFO | DRIVER: Sorted order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
DEBUG | DRIVER: Copying old device 0 into new device 0
DEBUG | DRIVER: Copying old device 1 into new device 1
INFO | DRIVER: linux_read_sorted_physical_devices:
INFO | DRIVER: Original order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
INFO | DRIVER: Sorted order:
INFO | DRIVER: [0] NVIDIA GeForce RTX 3050 Ti Laptop GPU
INFO | DRIVER: [1] Intel(R) Graphics (ADL GT2)
DEBUG | DRIVER: Copying old device 0 into new device 0
DEBUG | DRIVER: Copying old device 1 into new device 1
Selected GPU 0: Intel(R) Graphics (ADL GT2), type: IntegratedGpu
[Gamescope WSI] Creating Gamescope surface: xid: 0x400000
[Gamescope WSI] Atom of T was wrong type. Expected XCB_ATOM_CARDINAL.
wlserver: [types/wlr_compositor.c:692] New wlr_surface 0x5eaec4238100 (res 0x5eaec4266a20)
wlserver: [types/wlr_compositor.c:692] New wlr_surface 0x5eaec4239900 (res 0x5eaec4266f00)
[Gamescope WSI] Made gamescope surface for xid: 0x400000
[Gamescope WSI] Surface state:
steam app id: 0
window xid: 0x400000
wayland surface res id: 5
layer client flags: 0x0
server hdr output enabled: false
hdr formats exposed to client: false
DRIVER | LAYER: vkCreateDevice layer callstack setup to:
DRIVER | LAYER: <Application>
DRIVER | LAYER: ||
DRIVER | LAYER: <Loader>
DRIVER | LAYER: ||
DRIVER | LAYER: <Device>
[Gamescope WSI] Forcing on VK_EXT_swapchain_maintenance1.
DEBUG | DRIVER: vkCreateDevice extension VK_EXT_swapchain_maintenance1 not available for devices associated with ICD /usr/lib/libvulkan_intel.so
DRIVER | LAYER: Using "Intel(R) Graphics (ADL GT2)" with driver: "/usr/lib/libvulkan_intel.so"
ERROR | DRIVER: terminator_CreateDevice: Failed in ICD /usr/lib/libvulkan_intel.so vkCreateDevice call
ERROR: vkCreateDevice: Failed to create device chain.
vkGetDeviceProcAddr failed to find vkCreateSwapchainKHR
xwm: got the same buffer committed twice, ignoring.
gamescope: children shut down!
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning: Unsupported maximum keycode 708, clipping.
> X11 cannot support keycodes above 255.
> Warning: Could not resolve keysym XF86CameraAccessEnable
> Warning: Could not resolve keysym XF86CameraAccessDisable
> Warning: Could not resolve keysym XF86CameraAccessToggle
> Warning: Could not resolve keysym XF86NextElement
> Warning: Could not resolve keysym XF86PreviousElement
> Warning: Could not resolve keysym XF86AutopilotEngageToggle
> Warning: Could not resolve keysym XF86MarkWaypoint
> Warning: Could not resolve keysym XF86Sos
> Warning: Could not resolve keysym XF86NavChart
> Warning: Could not resolve keysym XF86FishingChart
> Warning: Could not resolve keysym XF86SingleRangeRadar
> Warning: Could not resolve keysym XF86DualRangeRadar
> Warning: Could not resolve keysym XF86RadarOverlay
> Warning: Could not resolve keysym XF86TraditionalSonar
> Warning: Could not resolve keysym XF86ClearvuSonar
> Warning: Could not resolve keysym XF86SidevuSonar
> Warning: Could not resolve keysym XF86NavInfo
Errors from xkbcomp are not fatal to the X server
(EE) failed to read Wayland events: Broken pipe
Something else of note: searching the mesa git repo for EXT_swapchain_maintenance1
seems to indicate that radv is the only mesa driver that advertises support for VK_EXT_swapchain_maintenance1 :/
EDIT: looking at this comment: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20235#note_1800667 looks like everyone just collectively forgot to advertise support for the extension on the other drivers lol
EDIT: looking at this comment: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20235#note_1800667 looks like everyone just collectively forgot to advertise support for the extension on the other drivers lol
Bruh
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28164/
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28164/
mesa upstream has now enabled it for anv, lvp, v3dv: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28275 hooray!!!
@Joshua-Ashton issue should be fixed on my intel anv igpu once the aforementioned merge gets into the next stable release, but I guess there's still one driver that your original MR covered that the merged one doesn't cover: tu Not sure if I should close this issue at this point
Edit: I just saw from https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28310 That there are some regressions that have been caused by enablement of the swapchain maintainance ext on drivers such as ANV
I saw some devs brought up the possibility of hiding the ext behind an env var I like that idea, but maybe they should make it so that if you set the env var to a VkInstance handle, the ext will only be exposed to the device handle created w/ said VkInstance handle. That way, a vulkan layer like gamescope Wsi doesn’t expose the ext to whatever app is running on top of it.
Edit: I just also realized that said regressions are only test failures and not necessarily regressions that would effect actual users
GOOD NEWS!!! As of the new mesa 24.1 release, swapchain maintanence is now enabled for these drivers:
- anv (aka intel gpus)
- v3dv (aka rasberry pi gpus)
- lavapipe (cpu/software rasterizer)
- tu (aka adreno gpus)
@Joshua-Ashton
Going to close this issue, but you might want to just add some code to gamescope WSI that tells users to make sure they've updated to mesa 24.1 if CreateDevice()
fails