Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

core: app crashes when resizing the window on linux/nvidia #1221

Open
terraquad opened this issue Jun 26, 2024 · 3 comments
Open

core: app crashes when resizing the window on linux/nvidia #1221

terraquad opened this issue Jun 26, 2024 · 3 comments
Labels
bug Something isn't working needs-triage Issues that need triaging

Comments

@terraquad
Copy link

terraquad commented Jun 26, 2024

I set up a basic project just as described, but when launching and resizing the window, the app crashes:

$ zig build run
DRM kernel driver 'nvidia-drm' in use. NVK requires nouveau.
Error: ../src/nouveau/vulkan/nvk_physical_device.c:1109: VK_ERROR_INCOMPATIBLE_DRIVER
info(mach): found Vulkan backend on Discrete GPU adapter: NVIDIA GeForce RTX 3060 Laptop GPU, NVIDIA: 550.90.07 550.90.7.0

info(mach): gamemode: activated
error(mach): mach: device lost: Wasn't able to recuperate the surface after a VK_ERROR_OUT_OF_DATE_KHR
 - While handling unexpected error type Internal when allowed errors are (Validation|DeviceLost).
    at GetCurrentTextureInternal (/home/runner/work/mach-gpu-dawn/mach-gpu-dawn/libs/dawn/src/dawn/native/vulkan/SwapChainVk.cpp:669)
    at GetCurrentTexture (/home/runner/work/mach-gpu-dawn/mach-gpu-dawn/libs/dawn/src/dawn/native/SwapChain.cpp:196)
    at GetCurrentTextureView (/home/runner/work/mach-gpu-dawn/mach-gpu-dawn/libs/dawn/src/dawn/native/SwapChain.cpp:213)

thread 40035 panic: mach: device lost
/home/tq/.cache/zig/p/122015e1dac4afaf275f7f2adde3814e6a27f5799cbef96bb487ee305f7e33f4dca3/src/core/platform/glfw/Core.zig:129:5: 0x1933aab in deviceLostCallback (lodecraft)
    @panic("mach: device lost");
    ^
???:?:?: 0x12ec72e in ??? (???)
???:?:?: 0x13019a9 in ??? (???)
???:?:?: 0x13091aa in ??? (???)
Unwind error at address `:0x13091aa` (error.UnimplementedUserOpcode), trace may be incomplete

/home/tq/.cache/zig/p/122015e1dac4afaf275f7f2adde3814e6a27f5799cbef96bb487ee305f7e33f4dca3/src/core/platform/glfw/Core.zig:779:51: 0x194212d in update__anon_36378 (lodecraft)
    if (!use_app) return !self.appUpdateThreadTick(app);
                                                  ^
/home/tq/.cache/zig/p/122015e1dac4afaf275f7f2adde3814e6a27f5799cbef96bb487ee305f7e33f4dca3/src/core/main.zig:172:31: 0x194329b in mainThreadTick (lodecraft)
    return try internal.update(app_ptr);
                              ^
/home/tq/.cache/zig/p/122015e1dac4afaf275f7f2adde3814e6a27f5799cbef96bb487ee305f7e33f4dca3/src/module/module.zig:421:32: 0x1947b2e in dispatchInternal__anon_5718 (lodecraft)
                .ErrorUnion => try @call(.auto, handler, args),
                               ^
/home/tq/.cache/zig/p/122015e1dac4afaf275f7f2adde3814e6a27f5799cbef96bb487ee305f7e33f4dca3/src/module/module.zig:337:38: 0x194881d in dispatch (lodecraft)
            return m.dispatchInternal(stack_space, options, injectable);
                                     ^
/home/tq/.cache/zig/p/122015e1dac4afaf275f7f2adde3814e6a27f5799cbef96bb487ee305f7e33f4dca3/src/core/main.zig:29:22: 0x1948912 in tick (lodecraft)
    try mods.dispatch(&stack_space, .{ .until = .{
                     ^
/home/tq/devel/projects/lodecraft/src/main.zig:14:30: 0x1948b05 in main (lodecraft)
    while (try mach.core.tick()) {}
                             ^
/home/tq/zig/0.13.0-dev.351+64ef45eb0/files/lib/std/start.zig:524:37: 0x1948eee in main (lodecraft)
            const result = root.main() catch |err| {
                                    ^
???:?:?: 0x7f889824f087 in ??? (libc.so.6)
???:?:?: 0x7f889824f14a in ??? (libc.so.6)
???:?:?: 0x12ae614 in ??? (???)
run
└─ run lodecraft failure
error: the following command terminated unexpectedly:
/home/tq/devel/projects/lodecraft/zig-out/bin/lodecraft 
Build Summary: 38/40 steps succeeded; 1 failed (disable with --summary none)
run transitive failure
└─ run lodecraft failure
error: the following build command failed with exit code 1:
/home/tq/devel/projects/lodecraft/.zig-cache/o/9849f3df8fc884b0036c91cccbbaefc3/build /home/tq/zig/0.13.0-dev.351+64ef45eb0/files/zig /home/tq/devel/projects/lodecraft /home/tq/devel/projects/lodecraft/.zig-cache /home/tq/.cache/zig --seed 0xe2d2be7a -Z83804df7d7b4623f run
2024-06-26.21-31-28.mp4
@terraquad terraquad added bug Something isn't working needs-triage Issues that need triaging labels Jun 26, 2024
@OliveThePuffin
Copy link

OliveThePuffin commented Oct 14, 2024

I have the same bug too.
Here are my specs:
OS: Void Linux (glibc)
GPU: Nvidia 3080
WM: bspwm

In the video I show how a vulkan app should react vs what mach does. I also show that very quick resize events tend not to error whereas taking longer to resize the window does error. Also another thing to note is that simply moving the window takes much longer on mach than the other application

bug-info-2024-10-14_13.49.47.mp4

@slimsag
Copy link
Member

slimsag commented Nov 3, 2024

Which commit / branch of mach is this?

@OliveThePuffin
Copy link

v0.4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working needs-triage Issues that need triaging
Projects
None yet
Development

No branches or pull requests

3 participants