emilk / egui

egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native
https://www.egui.rs/
Apache License 2.0
22.54k stars 1.61k forks source link

SIGSEGV at exit of egui applications on hyprland + nvidia #3962

Open ncoder-1 opened 9 months ago

ncoder-1 commented 9 months ago

Describe the bug

All egui applications throw a SIGSEGV on application exit when running on hyprland + nvidia. No issue when running in gnome 45.3 (wayland) + nvidia (on the same system). No issue when on hyprland + amd or hyprland + intel. I thought it might have been related to #2952 but turns out it's a different issue.

To Reproduce Steps to reproduce the behavior:

  1. git clone https://github.com/emilk/egui.git /tmp/egui
  2. cd /tmp/egui
  3. RUST_LOG=debug cargo run -p hello_world
  4. close the application window
  5. Error:
Process 51742 launched: '/tmp/egui/target/debug/hello_world' (x86_64)
[2024-02-04T16:32:26Z DEBUG eframe] Using the glow renderer
[2024-02-04T16:32:26Z DEBUG sctk] Bound new global [49] wl_output v4
[2024-02-04T16:32:26Z DEBUG sctk] Bound new global [48] zxdg_output_manager_v1 v3
[2024-02-04T16:32:26Z DEBUG sctk] Bound new global [14] wl_seat v7
[2024-02-04T16:32:26Z DEBUG sctk] Bound new global [39] wp_cursor_shape_manager_v1 v1
[2024-02-04T16:32:26Z DEBUG sctk] supported wl_shm format Argb8888
[2024-02-04T16:32:26Z DEBUG sctk] supported wl_shm format Xrgb8888
[2024-02-04T16:32:26Z DEBUG sctk] supported wl_shm format Xbgr8888
[2024-02-04T16:32:26Z DEBUG sctk] supported wl_shm format Abgr8888
[2024-02-04T16:32:26Z DEBUG sctk] supported wl_shm format Bgr888
[2024-02-04T16:32:26Z DEBUG sctk] supported wl_shm format Rgbx4444
[2024-02-04T16:32:26Z DEBUG sctk] supported wl_shm format Rgba4444
[2024-02-04T16:32:26Z DEBUG sctk] supported wl_shm format Rgbx5551
[2024-02-04T16:32:26Z DEBUG sctk] supported wl_shm format Rgba5551
[2024-02-04T16:32:26Z DEBUG sctk] supported wl_shm format Rgb565
[2024-02-04T16:32:26Z DEBUG sctk] supported wl_shm format Xbgr16161616f
[2024-02-04T16:32:26Z DEBUG sctk] supported wl_shm format Abgr16161616f
[2024-02-04T16:32:26Z DEBUG sctk] supported wl_shm format Xbgr16161616
[2024-02-04T16:32:26Z DEBUG sctk] supported wl_shm format Abgr16161616
[2024-02-04T16:32:26Z DEBUG eframe::native::glow_integration] Event::Resumed
[2024-02-04T16:32:26Z DEBUG eframe::native::glow_integration] trying to create glutin Display with config: ConfigTemplateBuilder { template: ConfigTemplate { color_buffer_type: Rgb { r_size: 8, g_size: 8, b_size: 8 }, alpha_size: 8, depth_size: 0, stencil_size: 0, num_samples: None, min_swap_interval: None, max_swap_interval: None, config_surface_types: ConfigSurfaceTypes(WINDOW), api: None, transparency: false, single_buffering: false, stereoscopy: None, float_pixels: false, max_pbuffer_width: None, hardware_accelerated: None, max_pbuffer_height: None, native_window: None } }
[2024-02-04T16:32:26Z DEBUG eframe::native::glow_integration] using the first config from config picker closure. config: Egl(Config { inner: Config { raw: EglConfig(0xcaf32c), display: Khr(0x555555fd61b0) } })
[2024-02-04T16:32:26Z DEBUG egui_winit] Failed to set window size
[2024-02-04T16:32:26Z DEBUG eframe::native::glow_integration] successfully created GL Display with version: EGL 1.5 and supported features: DisplayFeatures(CONTEXT_ROBUSTNESS | CONTEXT_NO_ERROR | SWAP_CONTROL | CREATE_ES_CONTEXT | MULTISAMPLING_PIXEL_FORMATS | SRGB_FRAMEBUFFERS)
[2024-02-04T16:32:26Z DEBUG eframe::native::glow_integration] creating gl context using raw window handle: Some(Wayland(WaylandWindowHandle { surface: 0x555555fd8a20 }))
[2024-02-04T16:32:27Z DEBUG eframe::native::glow_integration] Initializing egui_winit for viewport "FFFF"
[2024-02-04T16:32:27Z DEBUG eframe::native::glow_integration] Creating a gl_surface for viewport "FFFF"
[2024-02-04T16:32:27Z DEBUG sctk] Bound new global [14] wl_seat v7
[2024-02-04T16:32:27Z DEBUG egui_glow::painter] 
    opengl version: 3.3.0 NVIDIA 545.29.06
    opengl renderer: NVIDIA GeForce RTX 3090/PCIe/SSE2
    opengl vendor: NVIDIA Corporation
[2024-02-04T16:32:27Z DEBUG egui_glow::shader_version] Shader version: Gl140 ("3.30 NVIDIA via Cg compiler").
[2024-02-04T16:32:27Z DEBUG egui_glow::painter] Shader header: "#version 140\n".
[2024-02-04T16:32:27Z DEBUG egui_glow::painter] SRGB texture Support: true
[2024-02-04T16:32:27Z DEBUG egui_glow::vao] GL version: "3.3.0 NVIDIA 545.29.06".
[2024-02-04T16:32:28Z DEBUG eframe::native::glow_integration] Received WindowEvent::CloseRequested for viewport Some("FFFF")
[2024-02-04T16:32:28Z DEBUG eframe::native::epi_integration] Closing root viewport (ViewportCommand::CancelClose was not sent)
[2024-02-04T16:32:28Z DEBUG eframe::native::run] Asking to exit event loop…
[2024-02-04T16:32:28Z DEBUG eframe::native::run] Received Event::LoopExiting - saving app state…
[2024-02-04T16:32:28Z DEBUG eframe::native::run] eframe window closed
Process 51742 stopped
* thread #1, name = 'hello_world', stop reason = signal SIGSEGV: invalid address (fault address: 0xe4)
    frame #0: 0x00007ffff7fb5415 libwayland-client.so.0`___lldb_unnamed_symbol150 + 69
libwayland-client.so.0`___lldb_unnamed_symbol150:
->  0x7ffff7fb5415 <+69>: movq   %rcx, (%rax,%rbx,8)
    0x7ffff7fb5419 <+73>: xorl   %eax, %eax
    0x7ffff7fb541b <+75>: addq   $0x10, %rsp
    0x7ffff7fb541f <+79>: popq   %rbx

Expected behavior No seg fault.

Screenshots N/A

Desktop (please complete the following information):

Additional context As mentionned above, no SEGFAULT on Gnome 45.3 running on wayland with kms-modifiers. Nvidia config in hyprland.conf:

env = LIBVA_DRIVER_NAME,nvidia
env = NVD_BACKEND,direct
env = GBM_BACKEND,nvidia-drm
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
env = __GL_GSYNC_ALLOWED,1
env = WLR_NO_HARDWARE_CURSORS,1
emilk commented 9 months ago

Does the wgpu backend work better?

ncoder-1 commented 9 months ago

I just tried and the good news is that it doesn't crash when it exits, but the bad news is nothing is actually clickable or usable within the egui::Window. Here's the RUST_LOG=DEBUG output for the wgpu sample app:

2024-02-05T20:40:02Z DEBUG sctk] Bound new global [49] wl_output v4
[2024-02-05T20:40:02Z DEBUG sctk] Bound new global [48] zxdg_output_manager_v1 v3
[2024-02-05T20:40:02Z DEBUG sctk] Bound new global [14] wl_seat v7
[2024-02-05T20:40:02Z DEBUG sctk] Bound new global [39] wp_cursor_shape_manager_v1 v1
[2024-02-05T20:40:02Z DEBUG sctk] supported wl_shm format Argb8888
[2024-02-05T20:40:02Z DEBUG sctk] supported wl_shm format Xrgb8888
[2024-02-05T20:40:02Z DEBUG sctk] supported wl_shm format Xbgr8888
[2024-02-05T20:40:02Z DEBUG sctk] supported wl_shm format Abgr8888
[2024-02-05T20:40:02Z DEBUG sctk] supported wl_shm format Bgr888
[2024-02-05T20:40:02Z DEBUG sctk] supported wl_shm format Rgbx4444
[2024-02-05T20:40:02Z DEBUG sctk] supported wl_shm format Rgba4444
[2024-02-05T20:40:02Z DEBUG sctk] supported wl_shm format Rgbx5551
[2024-02-05T20:40:02Z DEBUG sctk] supported wl_shm format Rgba5551
[2024-02-05T20:40:02Z DEBUG sctk] supported wl_shm format Rgb565
[2024-02-05T20:40:02Z DEBUG sctk] supported wl_shm format Xbgr16161616f
[2024-02-05T20:40:02Z DEBUG sctk] supported wl_shm format Abgr16161616f
[2024-02-05T20:40:02Z DEBUG sctk] supported wl_shm format Xbgr16161616
[2024-02-05T20:40:02Z DEBUG sctk] supported wl_shm format Abgr16161616
[2024-02-05T20:40:02Z INFO  wgpu_hal::vulkan::instance] Instance version: 0x403114
[2024-02-05T20:40:02Z INFO  wgpu_hal::vulkan::instance] Debug utils not enabled: debug_utils_user_data not passed to Instance::from_raw
[2024-02-05T20:40:02Z INFO  wgpu_hal::vulkan::instance] Enabling device properties2
[2024-02-05T20:40:02Z DEBUG wgpu_core::instance] Instance::new: created Vulkan backend
[2024-02-05T20:40:02Z DEBUG wgpu_hal::gles::egl] Client extensions: [
        "EGL_EXT_platform_base",
        "EGL_EXT_device_base",
        "EGL_EXT_device_enumeration",
        "EGL_EXT_device_query",
        "EGL_KHR_client_get_all_proc_addresses",
        "EGL_EXT_client_extensions",
        "EGL_KHR_debug",
        "EGL_KHR_platform_x11",
        "EGL_EXT_platform_x11",
        "EGL_EXT_platform_device",
        "EGL_MESA_platform_surfaceless",
        "EGL_EXT_explicit_device",
        "EGL_KHR_platform_wayland",
        "EGL_EXT_platform_wayland",
        "EGL_KHR_platform_gbm",
        "EGL_MESA_platform_gbm",
        "EGL_EXT_platform_xcb",
    ]
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl] Loading Wayland library to get the current display
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl] Loading X11 library to get the current display
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl] Using Wayland platform
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl] Display vendor "NVIDIA", version (1, 5)
[2024-02-05T20:40:02Z DEBUG wgpu_hal::gles::egl] Display extensions: [
        "EGL_ANDROID_native_fence_sync",
        "EGL_EXT_buffer_age",
        "EGL_EXT_client_sync",
        "EGL_EXT_create_context_robustness",
        "EGL_EXT_image_dma_buf_import",
        "EGL_EXT_image_dma_buf_import_modifiers",
        "EGL_MESA_image_dma_buf_export",
        "EGL_EXT_output_base",
        "EGL_EXT_output_drm",
        "EGL_EXT_protected_content",
        "EGL_EXT_stream_consumer_egloutput",
        "EGL_EXT_stream_acquire_mode",
        "EGL_EXT_sync_reuse",
        "EGL_IMG_context_priority",
        "EGL_KHR_config_attribs",
        "EGL_KHR_create_context_no_error",
        "EGL_KHR_context_flush_control",
        "EGL_KHR_create_context",
        "EGL_KHR_fence_sync",
        "EGL_KHR_get_all_proc_addresses",
        "EGL_KHR_partial_update",
        "EGL_KHR_swap_buffers_with_damage",
        "EGL_KHR_no_config_context",
        "EGL_KHR_gl_colorspace",
        "EGL_KHR_gl_renderbuffer_image",
        "EGL_KHR_gl_texture_2D_image",
        "EGL_KHR_gl_texture_3D_image",
        "EGL_KHR_gl_texture_cubemap_image",
        "EGL_KHR_image",
        "EGL_KHR_image_base",
        "EGL_KHR_reusable_sync",
        "EGL_KHR_stream",
        "EGL_KHR_stream_attrib",
        "EGL_KHR_stream_consumer_gltexture",
        "EGL_KHR_stream_cross_process_fd",
        "EGL_KHR_stream_fifo",
        "EGL_KHR_stream_producer_eglsurface",
        "EGL_KHR_surfaceless_context",
        "EGL_KHR_wait_sync",
        "EGL_NV_nvrm_fence_sync",
        "EGL_NV_quadruple_buffer",
        "EGL_NV_stream_consumer_eglimage",
        "EGL_NV_stream_cross_display",
        "EGL_NV_stream_cross_object",
        "EGL_NV_stream_cross_process",
        "EGL_NV_stream_cross_system",
        "EGL_NV_stream_dma",
        "EGL_NV_stream_flush",
        "EGL_NV_stream_metadata",
        "EGL_NV_stream_remote",
        "EGL_NV_stream_reset",
        "EGL_NV_stream_socket",
        "EGL_NV_stream_socket_inet",
        "EGL_NV_stream_socket_unix",
        "EGL_NV_stream_sync",
        "EGL_NV_stream_fifo_next",
        "EGL_NV_stream_fifo_synchronous",
        "EGL_NV_stream_consumer_gltexture_yuv",
        "EGL_NV_stream_attrib",
        "EGL_NV_stream_origin",
        "EGL_NV_system_time",
        "EGL_NV_output_drm_flip_event",
        "EGL_NV_triple_buffer",
        "EGL_NV_robustness_video_memory_purge",
        "EGL_EXT_present_opaque",
        "EGL_WL_bind_wayland_display",
        "EGL_WL_wayland_eglstream",
    ]
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl]    EGL surface: +srgb
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl]    Trying native-render
[2024-02-05T20:40:02Z WARN  wgpu_hal::gles::egl] No config found!
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl]    Trying presentation
[2024-02-05T20:40:02Z WARN  wgpu_hal::gles::egl] EGL says it can present to the window but not natively
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl]    EGL context: +robust access
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl]    EGL context: +surfaceless
[2024-02-05T20:40:02Z DEBUG wgpu_core::instance] Instance::new: created Gl backend
[2024-02-05T20:40:02Z WARN  wgpu_hal::gles::egl] Re-initializing Gles context due to Wayland window
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl] Display vendor "NVIDIA", version (1, 5)
[2024-02-05T20:40:02Z DEBUG wgpu_hal::gles::egl] Display extensions: [
        "EGL_ANDROID_native_fence_sync",
        "EGL_EXT_buffer_age",
        "EGL_EXT_client_sync",
        "EGL_EXT_create_context_robustness",
        "EGL_EXT_image_dma_buf_import",
        "EGL_EXT_image_dma_buf_import_modifiers",
        "EGL_MESA_image_dma_buf_export",
        "EGL_EXT_output_base",
        "EGL_EXT_output_drm",
        "EGL_EXT_protected_content",
        "EGL_EXT_stream_consumer_egloutput",
        "EGL_EXT_stream_acquire_mode",
        "EGL_EXT_sync_reuse",
        "EGL_IMG_context_priority",
        "EGL_KHR_config_attribs",
        "EGL_KHR_create_context_no_error",
        "EGL_KHR_context_flush_control",
        "EGL_KHR_create_context",
        "EGL_KHR_fence_sync",
        "EGL_KHR_get_all_proc_addresses",
        "EGL_KHR_partial_update",
        "EGL_KHR_swap_buffers_with_damage",
        "EGL_KHR_no_config_context",
        "EGL_KHR_gl_colorspace",
        "EGL_KHR_gl_renderbuffer_image",
        "EGL_KHR_gl_texture_2D_image",
        "EGL_KHR_gl_texture_3D_image",
        "EGL_KHR_gl_texture_cubemap_image",
        "EGL_KHR_image",
        "EGL_KHR_image_base",
        "EGL_KHR_reusable_sync",
        "EGL_KHR_stream",
        "EGL_KHR_stream_attrib",
        "EGL_KHR_stream_consumer_gltexture",
        "EGL_KHR_stream_cross_process_fd",
        "EGL_KHR_stream_fifo",
        "EGL_KHR_stream_producer_eglsurface",
        "EGL_KHR_surfaceless_context",
        "EGL_KHR_wait_sync",
        "EGL_NV_nvrm_fence_sync",
        "EGL_NV_quadruple_buffer",
        "EGL_NV_stream_consumer_eglimage",
        "EGL_NV_stream_cross_display",
        "EGL_NV_stream_cross_object",
        "EGL_NV_stream_cross_process",
        "EGL_NV_stream_cross_system",
        "EGL_NV_stream_dma",
        "EGL_NV_stream_flush",
        "EGL_NV_stream_metadata",
        "EGL_NV_stream_remote",
        "EGL_NV_stream_reset",
        "EGL_NV_stream_socket",
        "EGL_NV_stream_socket_inet",
        "EGL_NV_stream_socket_unix",
        "EGL_NV_stream_sync",
        "EGL_NV_stream_fifo_next",
        "EGL_NV_stream_fifo_synchronous",
        "EGL_NV_stream_consumer_gltexture_yuv",
        "EGL_NV_stream_attrib",
        "EGL_NV_stream_origin",
        "EGL_NV_system_time",
        "EGL_NV_output_drm_flip_event",
        "EGL_NV_triple_buffer",
        "EGL_NV_robustness_video_memory_purge",
        "EGL_EXT_present_opaque",
        "EGL_WL_bind_wayland_display",
        "EGL_WL_wayland_eglstream",
    ]
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl]    EGL surface: +srgb
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl]    Trying native-render
[2024-02-05T20:40:02Z WARN  wgpu_hal::gles::egl] No config found!
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl]    Trying presentation
[2024-02-05T20:40:02Z WARN  wgpu_hal::gles::egl] EGL says it can present to the window but not natively
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl]    EGL context: +robust access
[2024-02-05T20:40:02Z INFO  wgpu_hal::gles::egl]    EGL context: +surfaceless
[2024-02-05T20:40:02Z INFO  wgpu_core::instance] Adapter Vulkan AdapterInfo { name: "NVIDIA GeForce RTX 3090", vendor: 4318, device: 8708, device_type: DiscreteGpu, driver: "NVIDIA", driver_info: "545.29.06", backend: Vulkan }
[2024-02-05T20:40:02Z DEBUG wgpu_hal::vulkan::adapter] Supported extensions: ["VK_KHR_swapchain", "VK_KHR_swapchain_mutable_format", "VK_EXT_robustness2"]
[2024-02-05T20:40:02Z INFO  wgpu_core::device::global] configuring surface with SurfaceConfiguration { usage: TextureUsages(RENDER_ATTACHMENT), format: Rgba8UnormSrgb, width: 800, height: 600, present_mode: Mailbox, alpha_mode: Opaque, view_formats: [] }
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [1] = FunctionArgument(0) : Handle([2])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [2] = LocalVariable([1]) : Value(Pointer { base: [4], space: Function })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [3] = AccessIndex { base: [2], index: 1 } : Value(Pointer { base: [1], space: Function })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [4] = AccessIndex { base: [1], index: 1 } : Handle([1])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [5] = AccessIndex { base: [2], index: 0 } : Value(Pointer { base: [3], space: Function })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [6] = AccessIndex { base: [1], index: 0 } : Handle([1])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [7] = Literal(F32(1.0)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [1] = FunctionArgument(0) : Handle([4])
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [2] = AccessIndex { base: [1], index: 1 } : Handle([1])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [3] = Literal(F32(1.0)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::valid::function] var LocalVariable { name: Some("out"), ty: [4], init: None }
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::global] Buffer Id { index: 0, epoch: 1, backend: Vulkan } map state -> Idle
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::global] Buffer Id { index: 1, epoch: 1, backend: Vulkan } map state -> Idle
[2024-02-05T20:40:02Z DEBUG egui_winit::clipboard] Initializing arboard clipboard…
[2024-02-05T20:40:02Z DEBUG egui_winit::clipboard] Initializing smithay clipboard…
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [1] = FunctionArgument(0) : Handle([6])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [2] = Literal(F32(0.04045)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [3] = Splat { size: Tri, value: [2] } : Value(Vector { size: Tri, kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [4] = Binary { op: Less, left: [1], right: [3] } : Value(Vector { size: Tri, kind: Bool, width: 1 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [5] = Literal(F32(12.92)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG sctk] Bound new global [14] wl_seat v7
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [6] = Splat { size: Tri, value: [5] } : Value(Vector { size: Tri, kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [7] = Binary { op: Divide, left: [1], right: [6] } : Handle([6])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [8] = Literal(F32(0.055)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [9] = Splat { size: Tri, value: [8] } : Value(Vector { size: Tri, kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [10] = Binary { op: Add, left: [1], right: [9] } : Handle([6])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [11] = Literal(F32(1.055)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [12] = Splat { size: Tri, value: [11] } : Value(Vector { size: Tri, kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [13] = Binary { op: Divide, left: [10], right: [12] } : Handle([6])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [14] = Literal(F32(2.4)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [1] = FunctionArgument(0) : Handle([6])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [2] = Literal(F32(0.0031308)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [3] = Splat { size: Tri, value: [2] } : Value(Vector { size: Tri, kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [4] = Binary { op: Less, left: [1], right: [3] } : Value(Vector { size: Tri, kind: Bool, width: 1 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [5] = Literal(F32(12.92)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [6] = Splat { size: Tri, value: [5] } : Value(Vector { size: Tri, kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [7] = Binary { op: Multiply, left: [1], right: [6] } : Handle([6])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [8] = Literal(F32(1.055)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [9] = Splat { size: Tri, value: [8] } : Value(Vector { size: Tri, kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [10] = Literal(F32(1.0)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [11] = Literal(F32(2.4)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [12] = Literal(F32(0.41666666)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [13] = Splat { size: Tri, value: [12] } : Value(Vector { size: Tri, kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [14] = Math { fun: Pow, arg: [1], arg1: Some([13]), arg2: None, arg3: None } : Handle([6])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [15] = Binary { op: Multiply, left: [9], right: [14] } : Value(Vector { size: Tri, kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [16] = Literal(F32(0.055)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [17] = Splat { size: Tri, value: [16] } : Value(Vector { size: Tri, kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [1] = FunctionArgument(0) : Handle([2])
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [2] = Swizzle { size: Tri, vector: [1], pattern: [X, Y, Z, X] } : Value(Vector { size: Tri, kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [3] = CallResult([2]) : Handle([6])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [4] = AccessIndex { base: [1], index: 3 } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [1] = FunctionArgument(0) : Handle([7])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [2] = Literal(U32(255)) : Value(Scalar { kind: Uint, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [3] = Binary { op: And, left: [1], right: [2] } : Handle([7])
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [4] = As { expr: [3], kind: Float, convert: Some(4) } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [5] = Literal(U32(8)) : Value(Scalar { kind: Uint, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [6] = Binary { op: ShiftRight, left: [1], right: [5] } : Handle([7])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [7] = Literal(U32(255)) : Value(Scalar { kind: Uint, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [8] = Binary { op: And, left: [6], right: [7] } : Handle([7])
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [9] = As { expr: [8], kind: Float, convert: Some(4) } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [10] = Literal(U32(16)) : Value(Scalar { kind: Uint, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [11] = Binary { op: ShiftRight, left: [1], right: [10] } : Handle([7])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [12] = Literal(U32(255)) : Value(Scalar { kind: Uint, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [13] = Binary { op: And, left: [11], right: [12] } : Handle([7])
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [14] = As { expr: [13], kind: Float, convert: Some(4) } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [15] = Literal(U32(24)) : Value(Scalar { kind: Uint, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [16] = Binary { op: ShiftRight, left: [1], right: [15] } : Handle([7])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [17] = Literal(U32(255)) : Value(Scalar { kind: Uint, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [18] = Binary { op: And, left: [16], right: [17] } : Handle([7])
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [19] = As { expr: [18], kind: Float, convert: Some(4) } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [20] = Compose { ty: [2], components: [[4], [9], [14], [19]] } : Handle([2])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [21] = Literal(F32(255.0)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [1] = FunctionArgument(0) : Handle([1])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [2] = Literal(F32(2.0)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [3] = AccessIndex { base: [1], index: 0 } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [4] = Binary { op: Multiply, left: [2], right: [3] } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [5] = GlobalVariable([1]) : Value(Pointer { base: [5], space: Uniform })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [6] = AccessIndex { base: [5], index: 0 } : Value(Pointer { base: [1], space: Uniform })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [7] = AccessIndex { base: [6], index: 0 } : Value(ValuePointer { size: None, kind: Float, width: 4, space: Uniform })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [8] = Load { pointer: [7] } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [9] = Binary { op: Divide, left: [4], right: [8] } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [10] = Literal(F32(1.0)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [11] = Binary { op: Subtract, left: [9], right: [10] } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [12] = Literal(F32(1.0)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [13] = Literal(F32(2.0)) : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [14] = AccessIndex { base: [1], index: 1 } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [15] = Binary { op: Multiply, left: [13], right: [14] } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [16] = GlobalVariable([1]) : Value(Pointer { base: [5], space: Uniform })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [17] = AccessIndex { base: [16], index: 0 } : Value(Pointer { base: [1], space: Uniform })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [18] = AccessIndex { base: [17], index: 1 } : Value(ValuePointer { size: None, kind: Float, width: 4, space: Uniform })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [19] = Load { pointer: [18] } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [20] = Binary { op: Divide, left: [15], right: [19] } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [1] = FunctionArgument(0) : Handle([1])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [2] = FunctionArgument(1) : Handle([1])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [3] = FunctionArgument(2) : Handle([7])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [4] = LocalVariable([1]) : Value(Pointer { base: [3], space: Function })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [1] = FunctionArgument(0) : Handle([3])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [2] = GlobalVariable([2]) : Handle([9])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [3] = GlobalVariable([3]) : Handle([10])
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [4] = AccessIndex { base: [1], index: 0 } : Handle([1])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [5] = ImageSample { image: [2], sampler: [3], gather: None, coordinate: [4], array_index: None, offset: None, level: Auto, depth_ref: None } : Value(Vector { size: Quad, kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [6] = CallResult([3]) : Handle([2])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [7] = AccessIndex { base: [1], index: 1 } : Handle([2])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [8] = Binary { op: Multiply, left: [7], right: [6] } : Handle([2])
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [9] = Swizzle { size: Tri, vector: [8], pattern: [X, Y, Z, X] } : Value(Vector { size: Tri, kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [10] = CallResult([1]) : Handle([6])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [11] = AccessIndex { base: [8], index: 3 } : Value(Scalar { kind: Float, width: 4 })
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [1] = FunctionArgument(0) : Handle([3])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [2] = GlobalVariable([2]) : Handle([9])
[2024-02-05T20:40:02Z DEBUG naga::front] Resolving [3] = GlobalVariable([3]) : Handle([10])
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::proc::constant_evaluator] check: SubexpressionsAreNotConstant
[2024-02-05T20:40:02Z DEBUG naga::valid::interface] var GlobalVariable { name: Some("r_locals"), space: Uniform, binding: Some(ResourceBinding { group: 0, binding: 0 }), ty: [5], init: None }
[2024-02-05T20:40:02Z DEBUG naga::valid::interface] var GlobalVariable { name: Some("r_tex_color"), space: Handle, binding: Some(ResourceBinding { group: 1, binding: 0 }), ty: [9], init: None }
[2024-02-05T20:40:02Z DEBUG naga::valid::interface] var GlobalVariable { name: Some("r_tex_sampler"), space: Handle, binding: Some(ResourceBinding { group: 1, binding: 1 }), ty: [10], init: None }
[2024-02-05T20:40:02Z DEBUG naga::valid::function] var LocalVariable { name: Some("out"), ty: [3], init: None }
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::global] Buffer Id { index: 2, epoch: 1, backend: Vulkan } map state -> Idle
[2024-02-05T20:40:02Z WARN  egui_wgpu::renderer] Detected a linear (sRGBA aware) framebuffer Rgba8UnormSrgb. egui prefers Rgba8Unorm or Bgra8Unorm
[2024-02-05T20:40:02Z INFO  naga::back::spv::writer] Skip function Some("position_from_screen")
[2024-02-05T20:40:02Z INFO  wgpu_core::device::global] configuring surface with SurfaceConfiguration { usage: TextureUsages(RENDER_ATTACHMENT), format: Rgba8UnormSrgb, width: 800, height: 600, present_mode: Mailbox, alpha_mode: Opaque, view_formats: [] }
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 1, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG egui::context] Creating new Fonts for pixels_per_point=1
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 1, epoch: 1, backend: Vulkan } filters usages to TextureUses(RESOURCE)
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 1, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 2, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 1, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 2, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 3, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 1, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 3, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 4, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 2, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 4, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z INFO  wgpu_core::device::global] configuring surface with SurfaceConfiguration { usage: TextureUsages(RENDER_ATTACHMENT), format: Rgba8UnormSrgb, width: 470, height: 766, present_mode: Mailbox, alpha_mode: Opaque, view_formats: [] }
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 2, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 5, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 5, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 6, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 3, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 6, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 7, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 3, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 7, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 8, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 4, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 8, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 9, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 4, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 9, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 10, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 5, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 10, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 11, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 5, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 11, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 12, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 6, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 12, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 13, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 6, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 13, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 14, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 7, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 14, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 15, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 7, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 15, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 16, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 8, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 16, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 17, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 8, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 17, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 18, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 9, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 18, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 19, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 9, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 19, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 20, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 10, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 20, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 21, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 10, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 21, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 22, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 11, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 22, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 23, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 11, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 23, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 24, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 12, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 24, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 25, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 12, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 25, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 26, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 13, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 26, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 27, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 13, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 27, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 28, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 14, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 28, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 29, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 14, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 29, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 30, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 15, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 30, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 31, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 15, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 31, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 32, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 2, epoch: 16, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 32, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::resource] Create view for texture Id { index: 0, epoch: 33, backend: Vulkan } filters usages to TextureUses(COLOR_TARGET)
[2024-02-05T20:40:02Z DEBUG wgpu_core::device::life] Texture view Valid(Id { index: 0, epoch: 16, backend: Vulkan }) will be destroyed
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Removing swapchain texture Valid(Id { index: 0, epoch: 33, backend: Vulkan }) from the device tracker
[2024-02-05T20:40:02Z DEBUG wgpu_core::present] Presented. End of Frame
ncoder-1 commented 9 months ago

Just to add, on another system with a similar configuration, same issue with glow (SIGSEGV on exit) and wgpu (no crash but not clickable). In fact I have to kill the process as I can't even CTRL-Q the window.

   Finished dev [unoptimized + debuginfo] target(s) in 0.11s
     Running `/tmp/egui/target/debug/egui_demo_app`
[2024-02-06T13:10:13Z INFO  eframe] Both the glow and wgpu renderers are available. Using wgpu.
[2024-02-06T13:10:13Z DEBUG eframe] Using the wgpu renderer
[2024-02-06T13:10:13Z DEBUG sctk] Bound new global [49] wl_output v4
[2024-02-06T13:10:13Z DEBUG sctk] Bound new global [50] wl_output v4
[2024-02-06T13:10:13Z DEBUG sctk] Bound new global [48] zxdg_output_manager_v1 v3
[2024-02-06T13:10:13Z DEBUG sctk] Bound new global [14] wl_seat v7
[2024-02-06T13:10:13Z DEBUG sctk] Bound new global [39] wp_cursor_shape_manager_v1 v1
[2024-02-06T13:10:13Z DEBUG sctk] supported wl_shm format Argb8888
[2024-02-06T13:10:13Z DEBUG sctk] supported wl_shm format Xrgb8888
[2024-02-06T13:10:13Z DEBUG sctk] supported wl_shm format Xbgr8888
[2024-02-06T13:10:13Z DEBUG sctk] supported wl_shm format Abgr8888
[2024-02-06T13:10:13Z DEBUG sctk] supported wl_shm format Bgr888
[2024-02-06T13:10:13Z DEBUG sctk] supported wl_shm format Rgbx4444
[2024-02-06T13:10:13Z DEBUG sctk] supported wl_shm format Rgba4444
[2024-02-06T13:10:13Z DEBUG sctk] supported wl_shm format Rgbx5551
[2024-02-06T13:10:13Z DEBUG sctk] supported wl_shm format Rgba5551
[2024-02-06T13:10:13Z DEBUG sctk] supported wl_shm format Rgb565
[2024-02-06T13:10:13Z DEBUG sctk] supported wl_shm format Xbgr16161616f
[2024-02-06T13:10:13Z DEBUG sctk] supported wl_shm format Abgr16161616f
[2024-02-06T13:10:13Z DEBUG sctk] supported wl_shm format Xbgr16161616
[2024-02-06T13:10:13Z DEBUG sctk] supported wl_shm format Abgr16161616
[2024-02-06T13:10:13Z DEBUG eframe::native::wgpu_integration] Event::Resumed
[2024-02-06T13:10:13Z DEBUG eframe::native::file_storage] Loading app state from "/home/passive/.local/share/eguidemoapp/app.ron"…
[2024-02-06T13:10:13Z DEBUG egui_winit] Failed to set window size
[2024-02-06T13:10:13Z WARN  wgpu_hal::gles::egl] No config found!
[2024-02-06T13:10:13Z WARN  wgpu_hal::gles::egl] EGL says it can present to the window but not natively
[2024-02-06T13:10:13Z INFO  egui_wgpu] There were 2 available wgpu adapters: {backend: Vulkan, device_type: DiscreteGpu, name: "NVIDIA GeForce RTX 3090", driver: "NVIDIA", driver_info: "545.29.06", vendor: 0x10DE, device: 0x2204}, {backend: Gl, device_type: Other, name: "NVIDIA GeForce RTX 3090/PCIe/SSE2", vendor: 0x10DE}
[2024-02-06T13:10:13Z DEBUG egui_wgpu] Picked wgpu adapter: backend: Vulkan, device_type: DiscreteGpu, name: "NVIDIA GeForce RTX 3090", driver: "NVIDIA", driver_info: "545.29.06", vendor: 0x10DE, device: 0x2204
[2024-02-06T13:10:13Z DEBUG sctk] Bound new global [14] wl_seat v7
zsh: terminated  RUST_LOG=DEBUG cargo r --features wgpu
alexlnkp commented 5 months ago

Can confirm, happens to me too. Created an issue on another project that uses egui, I assumed it was the one at fault at the time.

The original issue I opened:

Specs:

OS: Arch Linux x86_64
Kernel: Linux 6.9.6-arch1-1
Display (GM27-FFS): 1920x1080 @ 165Hz
WM: Hyprland (Wayland)
CPU: 12th Gen Intel(R) Core(TM) i5-12400F (12) @ 4.40 GHz
GPU: NVIDIA GeForce RTX 3060 Lite Hash Rate [Discrete]

Backtrace:

Thread 1 "ntsc-rs-standal" received signal SIGSEGV, Segmentation fault.
0x00007ffff7fb682c in wl_map_insert_at (map=map@entry=0x5555589c11d0, flags=flags@entry=1, i=28, data=<optimized out>)
    at ../wayland-1.23.0/src/wayland-util.c:290
Downloading source file /usr/src/debug/wayland/build/../wayland-1.23.0/src/wayland-util.c
290     start[i].next |= (flags & 0x1) << 1;                                                                                                          
(gdb) bt 50
#0  0x00007ffff7fb682c in wl_map_insert_at (map=map@entry=0x5555589c11d0, flags=flags@entry=1, i=28, data=<optimized out>)
    at ../wayland-1.23.0/src/wayland-util.c:290
#1  0x00007ffff7fb6985 in proxy_destroy (proxy=proxy@entry=0x555558a8fd00) at ../wayland-1.23.0/src/wayland-client.c:574
#2  0x00007ffff7fb8717 in wl_proxy_destroy_caller_locks (proxy=0x555558a8fd00) at ../wayland-1.23.0/src/wayland-client.c:598
#3  wl_proxy_marshal_array_flags (proxy=proxy@entry=0x555558a8fd00, opcode=opcode@entry=0, interface=interface@entry=0x0, version=version@entry=4, 
    flags=flags@entry=1, args=args@entry=0x7fffffffe0a0) at ../wayland-1.23.0/src/wayland-client.c:939
#4  0x00007ffff7fb92fb in wl_proxy_marshal_flags (proxy=proxy@entry=0x555558a8fd00, opcode=opcode@entry=0, interface=interface@entry=0x0, version=4, 
    flags=flags@entry=1) at ../wayland-1.23.0/src/wayland-client.c:857
#5  0x00007ffff6fe17d4 in zwp_linux_dmabuf_feedback_v1_destroy (zwp_linux_dmabuf_feedback_v1=0x555558a8fd00)
    at src/libnvidia-egl-wayland.so.1.1.13.p/linux-dmabuf-unstable-v1-client-protocol.h:1076
#6  wlEglDestroyFeedback (feedback=0x555558a72f20) at ../egl-wayland/src/wayland-egldisplay.c:156
#7  terminateDisplay (display=display@entry=0x555558a72e40, globalTeardown=globalTeardown@entry=1) at ../egl-wayland/src/wayland-egldisplay.c:624
#8  0x00007ffff6fe482b in wlEglDestroyAllDisplays (data=0x5555589dfc10) at ../egl-wayland/src/wayland-egldisplay.c:1396
#9  wlEglUnloadPlatformExport (data=0x5555589dfc10) at ../egl-wayland/src/wayland-external-exports.c:88
#10 0x00007ffff6aadaf0 in ?? () from /usr/lib/libEGL_nvidia.so.0
#11 0x00007ffff6aa38b0 in ?? () from /usr/lib/libEGL_nvidia.so.0
#12 0x00007ffff76adfa1 in __run_exit_handlers (status=0, listp=0x7ffff7851680 <__exit_funcs>, run_list_atexit=run_list_atexit@entry=true, 
    run_dtors=run_dtors@entry=true) at exit.c:108
#13 0x00007ffff76ae06e in __GI_exit (status=<optimized out>) at exit.c:138
#14 0x00007ffff7694c8f in __libc_start_call_main (main=main@entry=0x55555577a450 <main>, argc=argc@entry=1, argv=argv@entry=0x7fffffffe508)
    at ../sysdeps/nptl/libc_start_call_main.h:74
#15 0x00007ffff7694d4c in __libc_start_main_impl (main=0x55555577a450 <main>, argc=1, argv=0x7fffffffe508, init=<optimized out>, fini=<optimized out>, 
    rtld_fini=<optimized out>, stack_end=0x7fffffffe4f8) at ../csu/libc-start.c:360
#16 0x0000555555779f05 in _start ()

Now, as far as I'm aware, Hyprland is using some sort of fork of wlroots, perhaps it's broken somehow? Not sure what to make of this though.

Let me know if I can clarify things.

KeeTraxx commented 2 weeks ago

It also happens with KDE with recent nvidia drivers:

Operating System: Arch Linux KDE Plasma Version: 6.2.3 KDE Frameworks Version: 6.8.0 Qt Version: 6.8.0 Kernel Version: 6.11.6-arch1-1 (64-bit) Graphics Platform: Wayland Processors: 24 × AMD Ryzen 9 7900X 12-Core Processor Memory: 61.9 GiB of RAM Graphics Processor: NVIDIA GeForce RTX 4080 SUPER/PCIe/SSE2 nvidia: 565.57.01

egui Version: 0.29.1

ncoder-1 commented 1 week ago

Latest specs:

OS: Arch Linux
Linux: 6.11.6
Hyprland: 0.45.0
Nvidia driver: 565.57.01
egui Version: 0.29.1 and MASTER

Just an update, the wgpu backend now works properly, including inputs and safely quitting the demo app.

[2024-11-12T20:19:14Z INFO  eframe] Both the glow and wgpu renderers are available. Using wgpu.
[2024-11-12T20:19:14Z DEBUG eframe] Using the wgpu renderer
[2024-11-12T20:19:14Z DEBUG sctk] Bound new global [51] wl_output v4
[2024-11-12T20:19:14Z DEBUG sctk] Bound new global [9] zxdg_output_manager_v1 v3
[2024-11-12T20:19:14Z DEBUG sctk] Bound new global [1] wl_seat v7
[2024-11-12T20:19:14Z DEBUG sctk] Bound new global [10] wp_cursor_shape_manager_v1 v1
[2024-11-12T20:19:14Z DEBUG sctk] supported wl_shm format Argb8888
[2024-11-12T20:19:14Z DEBUG sctk] supported wl_shm format Xrgb8888
[2024-11-12T20:19:14Z DEBUG sctk] supported wl_shm format Xbgr8888
[2024-11-12T20:19:14Z DEBUG sctk] supported wl_shm format Abgr8888
[2024-11-12T20:19:14Z DEBUG sctk] supported wl_shm format Xrgb2101010
[2024-11-12T20:19:14Z DEBUG sctk] supported wl_shm format Argb2101010
[2024-11-12T20:19:14Z DEBUG sctk] supported wl_shm format Xbgr2101010
[2024-11-12T20:19:14Z DEBUG sctk] supported wl_shm format Abgr2101010
[2024-11-12T20:19:14Z DEBUG eframe::native::wgpu_integration] Event::Resumed
[2024-11-12T20:19:14Z DEBUG eframe::native::file_storage] Loading app state from "/home/user1/.local/share/eguidemoapp/app.ron"…
[2024-11-12T20:19:14Z DEBUG eframe::epi] Failed to decode RON: 1:4889: Expected option
[2024-11-12T20:19:14Z DEBUG egui_winit] Failed to set window size
[2024-11-12T20:19:14Z ERROR wgpu_hal::gles::egl] EGL 'eglCreateSyncKHR' code 0x3004: EGL_BAD_ATTRIBUTE error: In eglCreateSyncKHR: EGL_SYNC_NATIVE_FENCE_FD_ANDROID specified valid fd butEGL_SYNC_STATUS is also being set

[2024-11-12T20:19:14Z WARN  wgpu_hal::gles::egl] No config found!
[2024-11-12T20:19:14Z WARN  wgpu_hal::gles::egl] EGL says it can present to the window but not natively
[2024-11-12T20:19:14Z WARN  wgpu_hal::gles::egl] Re-initializing Gles context due to Wayland window
[2024-11-12T20:19:14Z ERROR wgpu_hal::gles::egl] EGL 'eglCreateSyncKHR' code 0x3004: EGL_BAD_ATTRIBUTE error: In eglCreateSyncKHR: EGL_SYNC_NATIVE_FENCE_FD_ANDROID specified valid fd butEGL_SYNC_STATUS is also being set

[2024-11-12T20:19:14Z WARN  wgpu_hal::gles::egl] No config found!
[2024-11-12T20:19:14Z WARN  wgpu_hal::gles::egl] EGL says it can present to the window but not natively
[2024-11-12T20:19:15Z WARN  wgpu_hal::gles::adapter] Max vertex attribute stride unknown. Assuming it is 2048
[2024-11-12T20:19:15Z WARN  wgpu_hal::gles::adapter] Max vertex attribute stride unknown. Assuming it is 2048
[2024-11-12T20:19:15Z INFO  egui_wgpu] There were 2 available wgpu adapters: {backend: Vulkan, device_type: DiscreteGpu, name: "NVIDIA GeForce RTX 3090", driver: "NVIDIA", driver_info: "565.57.01", vendor: 0x10DE, device: 0x2204}, {backend: Gl, device_type: Other, name: "NVIDIA GeForce RTX 3090/PCIe/SSE2", driver_info: "3.3.0 NVIDIA 565.57.01", vendor: 0x10DE}
[2024-11-12T20:19:15Z DEBUG egui_wgpu] Picked wgpu adapter: backend: Vulkan, device_type: DiscreteGpu, name: "NVIDIA GeForce RTX 3090", driver: "NVIDIA", driver_info: "565.57.01", vendor: 0x10DE, device: 0x2204
[2024-11-12T20:19:15Z DEBUG sctk] Bound new global [1] wl_seat v7
[2024-11-12T20:19:21Z DEBUG eframe::native::wgpu_integration] Received WindowEvent::CloseRequested for viewport Some("FFFF")
[2024-11-12T20:19:21Z DEBUG eframe::native::epi_integration] Closing root viewport (ViewportCommand::CancelClose was not sent)
[2024-11-12T20:19:21Z DEBUG eframe::native::run] Asking to exit event loop…
[2024-11-12T20:19:21Z DEBUG eframe::native::run] Received Event::LoopExiting - saving app state…
warning: queue 0x5ecff1dee170 destroyed while proxies still attached:
  wl_registry#66 still attached
  wl_registry#62 still attached
[2024-11-12T20:19:21Z DEBUG eframe::native::run] eframe window closed

It does still SIGSEGV with glow.