ITADN

bug: vulkan segfaults (non-nixos-gpu)

#9581Openmikaeladev 创建于 2026-07-01
bugtriage
M
mikaeladevcommented
### Are you following the right branch? - [x] My Nixpkgs and Home Manager versions are in sync ### Is there an existing issue for this? - [x] I have searched the existing issues ### Issue description programs that depend on vulkan libs return a segfault when running under the `targets.genericLinux.gpu` drivers. i first encountered this with `programs.zed-editor`, and running `vulkaninfo --summary` from a nix-shell gave the same result: <details> <summary>$ coredumpctl info</summary> <pre> PID: 342209 (vulkaninfo) UID: 1000 (mainuser) GID: 1000 (mainuser) Signal: 11 (SEGV) Timestamp: Wed 2026-07-01 13:39:20 BST (4s ago) Command Line: vulkaninfo --summary Executable: /nix/store/0gic378xc25n8a0j88fniw77w5c7mjss-vulkan-tools-1.4.328.0/bin/vulkaninfo Control Group: /user.slice/user-1000.slice/user@1000.service/app.slice/kitty-337396-0.scope Unit: user@1000.service User Unit: kitty-337396-0.scope Slice: user-1000.slice Owner UID: 1000 (mainuser) Boot ID: d5ef03d3a1a94bf9b12d22ceab30097a Machine ID: 28ba87b2504b40a889e28bab1c3ceded Hostname: fedora Storage: /var/lib/systemd/coredump/core.vulkaninfo.1000.d5ef03d3a1a94bf9b12d22ceab30097a.342209.1782909560000000> Size on Disk: 1.9M Message: Process 342209 (vulkaninfo) of user 1000 dumped core. Module libxcb-glx.so.0 without build-id. Module libXext.so.6 without build-id. Module libexpat.so.1 without build-id. Module libdisplay-info.so.3 without build-id. Module libxcb-keysyms.so.1 without build-id. Module libxshmfence.so.1 without build-id. Module libxcb-shm.so.0 without build-id. Module libxcb-randr.so.0 without build-id. Module libxcb-sync.so.1 without build-id. Module libxcb-xfixes.so.0 without build-id. Module libxcb-present.so.0 without build-id. Module libxcb-dri3.so.0 without build-id. Module libX11-xcb.so.1 without build-id. Module libzstd.so.1 without build-id. Module libdrm.so.2 without build-id. Module libvulkan.so.1 without build-id. Module libffi.so.8 without build-id. Module libXdmcp.so.6 without build-id. Module libXau.so.6 without build-id. Module libgcc_s.so.1 without build-id. Module libstdc++.so.6 without build-id. Module libX11.so.6 without build-id. Module libxcb.so.1 without build-id. Module vulkaninfo without build-id. Stack trace of thread 342209: #0 0x00007fb5aa97eda1 __memcpy_avx_unaligned_erms (libc.so.6 + 0x17eda1) #1 0x00007fb5a1be9c64 n/a (libnvidia-glcore.so.595.71.05 + 0x9e9c64) #2 0x00007fb5a1ecb1b8 n/a (libnvidia-glcore.so.595.71.05 + 0xccb1b8) #3 0x00007fb5a1c43faa n/a (libnvidia-glcore.so.595.71.05 + 0xa43faa) #4 0x00007fb5a4759f4e n/a (libGLX_nvidia.so.0 + 0x84f4e) #5 0x00007fb5a4726a5b n/a (libGLX_nvidia.so.0 + 0x51a5b) #6 0x00007fb5a4782582 n/a (libGLX_nvidia.so.0 + 0xad582) #7 0x00007fb5a4726013 n/a (libGLX_nvidia.so.0 + 0x51013) #8 0x00007fb5ab05e82d _dl_init (ld-linux-x86-64.so.2 + 0x482d) #9 0x00007fb5ab05b5e2 _dl_catch_exception (ld-linux-x86-64.so.2 + 0x15e2) #10 0x00007fb5ab065a94 dl_open_worker (ld-linux-x86-64.so.2 + 0xba94) #11 0x00007fb5ab05b543 _dl_catch_exception (ld-linux-x86-64.so.2 + 0x1543) #12 0x00007fb5ab065e44 _dl_open (ld-linux-x86-64.so.2 + 0xbe44) #13 0x00007fb5aa896764 dlopen_doit (libc.so.6 + 0x96764) #14 0x00007fb5ab05b543 _dl_catch_exception (ld-linux-x86-64.so.2 + 0x1543) #15 0x00007fb5ab05b699 _dl_catch_error (ld-linux-x86-64.so.2 + 0x1699) #16 0x00007fb5aa8961e3 _dlerror_run (libc.so.6 + 0x961e3) #17 0x00007fb5aa89682f dlopen@GLIBC_2.2.5 (libc.so.6 + 0x9682f) #18 0x00007fb5aaaab775 loader_scanned_icd_add (libvulkan.so.1 + 0x33775) #19 0x00007fb5aaaafc69 loader_icd_scan.constprop.0 (libvulkan.so.1 + 0x37c69) #20 0x00007fb5aaab15c4 terminator_EnumerateInstanceExtensionProperties (libvulkan.so.1 + 0x395c4) #21 0x00007fb5aaabd4d0 vkEnumerateInstanceExtensionProperties (libvulkan.so.1 + 0x454d0) #22 0x00005591e1dcf4cc _Z13GetVectorInitI21VkExtensionPropertiesRPF8VkResultPKcPjPS0_EJRS3_EESt6vectorI> #23 0x00005591e1dd28b9 _ZN11AppInstanceC2Ev (vulkaninfo + 0xca8b9) #24 0x00005591e1d2829b main (vulkaninfo + 0x2029b) #25 0x00007fb5aa82a4d8 __libc_start_call_main (libc.so.6 + 0x2a4d8) #26 0x00007fb5aa82a59b __libc_start_main@@GLIBC_2.34 (libc.so.6 + 0x2a59b) #27 0x00005591e1d29125 _start (vulkaninfo + 0x21125) ELF object binary architecture: AMD x86-64 </pre> </details> here's the result from my system's vulkaninfo (rpm) for comparison: <details> <summary>$ vulkaninfo --summary</summary> <pre> WARNING: [Loader Message] Code 0 : terminator_CreateInstance: Received return code -9 from call to vkCreateInstance in ICD /usr/lib64/libvulkan_dzn.so. Skipping this driver. WARNING: [Loader Message] Code 0 : ICD for selected physical device does not export vkGetPhysicalDeviceDisplayPlanePropertiesKHR! WARNING: [Loader Message] Code 0 : ICD for selected physical device does not export vkGetPhysicalDeviceDisplayPropertiesKHR! ========== VULKANINFO ========== Vulkan Instance Version: 1.4.341 Instance Extensions: count = 27 ------------------------------- VK_EXT_acquire_drm_display : extension revision 1 VK_EXT_acquire_xlib_display : extension revision 1 VK_EXT_debug_report : extension revision 10 VK_EXT_debug_utils : extension revision 2 VK_EXT_direct_mode_display : extension revision 1 VK_EXT_display_surface_counter : extension revision 1 VK_EXT_headless_surface : extension revision 1 VK_EXT_layer_settings : extension revision 2 VK_EXT_surface_maintenance1 : extension revision 1 VK_EXT_swapchain_colorspace : extension revision 5 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 2 VK_KHR_get_surface_capabilities2 : extension revision 1 VK_KHR_portability_enumeration : extension revision 1 VK_KHR_surface : extension revision 25 VK_KHR_surface_maintenance1 : extension revision 1 VK_KHR_surface_protected_capabilities : extension revision 1 VK_KHR_wayland_surface : extension revision 6 VK_KHR_xcb_surface : extension revision 6 VK_KHR_xlib_surface : extension revision 6 VK_LUNARG_direct_driver_loading : extension revision 1 VK_NV_display_stereo : extension revision 1 Instance Layers: count = 9 -------------------------- VK_LAYER_FROG_gamescope_wsi_x86_64 Gamescope WSI (XWayland Bypass) Layer (x86_64) 1.3.221 version 1 VK_LAYER_MESA_device_select Linux device selection layer 1.4.303 version 1 VK_LAYER_NV_optimus NVIDIA Optimus layer 1.4.329 version 1 VK_LAYER_NV_present NVIDIA Presentation Layer 1.4.329 version 1 VK_LAYER_VALVE_steam_fossilize_32 Steam Pipeline Caching Layer 1.3.207 version 1 VK_LAYER_VALVE_steam_fossilize_64 Steam Pipeline Caching Layer 1.3.207 version 1 VK_LAYER_VALVE_steam_overlay_32 Steam Overlay Layer 1.3.207 version 1 VK_LAYER_VALVE_steam_overlay_64 Steam Overlay Layer 1.3.207 version 1 VK_LAYER_hdr_wsi WSI HDR Layer (x86_64) 1.3.221 version 1 Devices: ======== GPU0: apiVersion = 1.4.329 driverVersion = 595.71.5.0 vendorID = 0x10de deviceID = 0x2504 deviceType = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU deviceName = NVIDIA GeForce RTX 3060 driverID = DRIVER_ID_NVIDIA_PROPRIETARY driverName = NVIDIA driverInfo = 595.71.05 conformanceVersion = 1.4.3.3 deviceUUID = bd3be51a-efec-43a4-8f67-51dcff93313b driverUUID = eec1eba6-4484-5d12-ab32-1ef922507ba0 GPU1: apiVersion = 1.4.335 driverVersion = 26.0.8 vendorID = 0x10005 deviceID = 0x0000 deviceType = PHYSICAL_DEVICE_TYPE_CPU deviceName = llvmpipe (LLVM 22.1.5, 256 bits) driverID = DRIVER_ID_MESA_LLVMPIPE driverName = llvmpipe driverInfo = Mesa 26.0.8 (LLVM 22.1.5) conformanceVersion = 1.3.1.1 deviceUUID = 6d657361-3236-2e30-2e38-000000000000 driverUUID = 6c6c766d-7069-7065-5555-494400000000 </pre> </details> i didn't encounter this issue when using zed wrapped by nixGL, and openGL programs have been working fine since #9551 got merged, so i can probably maybe potentially fix this by setting `VK_LAYER_PATH` (or one of the others) as is done [here](https://github.com/nix-community/nixGL/blob/b6105297e6f0cd041670c3e8628394d4ee247ed5/nixGL.nix#L185). ### Maintainer CC @exzombie ### System information ```markdown - system: `"x86_64-linux"` - host os: `Linux 7.0.10-201.fc44.x86_64, Fedora Linux, 44 (KDE Plasma Desktop Edition), nobuild` - multi-user?: `yes` - sandbox: `yes` - version: `nix-env (Nix) 2.32.2` - channels(root): `"nixpkgs"` - nixpkgs: `/nix/store/dpyfd9m5acas0vl3sl2bbvq626lik1n3-nixpkgs/nixpkgs` ```
3 条评论