Closed Aaron1011 closed 1 year ago
I'm able to reproduce with just the capture (fortunately, as from experience rust can be a pain to set up). It looks like this is an issue with a multisampled stencil-only texture attachment, which isn't something I've encountered before so looks like a couple of bits of code aren't handling stencil-only as opposed to normal depth-stencil.
I believe that commit should fix it. I had to hack around a driver bug to get the capture to load but it seemed to load and work fine afterwards. If that doesn't work for you and you can share a capture from your nvidia GPU I can look into it further.
Thank you for the quick fix!
Description
I'm attempting to use Renderdoc to debug the Ruffle flash emulator (https://github.com/ruffle-rs/ruffle). I'm able to press F12 to capture a frame - however, after closing the application (Ruffle) and seeing the 'Loading capture' progress bar complete, Renderdoc segfaults about 5 seconds later.
I can reproduce this segfault both under my native Nvidia linux driver, and under mesa lavapipe. Using debug builds of both Renderdoc and Mesa, I captured the following backtrace from gdb:
The relevant line from Mesa is: https://gitlab.freedesktop.org/mesa/mesa/-/blob/23.0/src/vulkan/runtime/vk_render_pass.c#L2195
Steps to reproduce
The capture file can be found at: https://drive.google.com/file/d/1ym48yNSEZx2Ge-GraQXlAIq-t0OCUFCC/view?usp=share_link
Unfortunately, reproducing this is a somewhat involved process:
fpa-remix
(commitece1ceceb667702b908de6aaba807b2f2f181760
)ruffle
, runcargo build --release -p ruffle_desktop
fpa-world-1-remix_temp.swf
from https://drive.google.com/file/d/1qcfscEPAZV49fBj1drsH-ZX-fBcdzYtw/view?usp=share_linkVK_ICD_FILENAMES=/usr/share/vulkan/icd.d/lvp_icd.x86_64.json
, or the equivalent path to the LavaPipe ICD. This is not strictly necessary (I was able to observe a crash with my native Nvidia driver), but it should let you reproduce my exact crash with debuginfo. Start a capture with the following settings:/path-to-ruffle-clone/target/release/ruffle_desktop
Environment
bc789ba53506c8c8e33d28b6c1af6c2ac0ef04c9
Linux ArchLaptop 6.2.2-arch2-1 #1 SMP PREEMPT_DYNAMIC Wed, 08 Mar 2023 04:07:29 +0000 x86_64 GNU/Linux
llvmpipe (LLVM 15.0.7, 256 bits), type: Cpu
Please let me know if you have any questions - I'm happy to make modifications to Ruffle as needed to help debug this.