-
Notifications
You must be signed in to change notification settings - Fork 900
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
vulkan validation error: VUID-vkDestroyFramebuffer-framebuffer-00892 #785
Comments
Would you have a repro case? |
I can try to record a trace. Does that help? |
Yes, an API trace would be wonderful, plus your adapter info for the reference (we should include it in the trace). |
I attached the vulkaninfo output and the trace with current master (had to compress it twice, because github doesn't like lspci says: |
@FlorianUekermann thank you! What wgpu-rs (or wgpu) revision was that from? |
wgpu-rs master at time of posting. I updated right before recording. I can't check right now. |
I'm having trouble replaying this API trace due to API mismatches. Could you specify the exact revision (of either wgpu-rs or wgpu) this was taken from? |
After a bit more wrangling, I'm able to replay this API trace. It's panicking on |
I'll play around with some traces on the weekend. Is it possible that a race during recording has a different outcome when being replayed? |
I don't currently see how this would be possible with regards to the buffer IDs. We record |
This still happens on latest wgpu-rs master. I fixed my panic on shutdown and tried again on wgpu-rs master, which uses wgpu b352093 right now. Unfortunately I can't play back the traces with that revision:
Am I using the player wrong? Its not really a problem right now, so I can try again in a few weeks. Btw, when shutting down I can also produce the occasional segfault and a few other validation errors. Maybe it is worth mentioning that I am rendering in a separate task, not the winit event loop. Edit: Another observation - The validation error happens a lot more frequently when I am not recording a trace. |
The trace can't be replayed because it wasn't finished gracefully, since the app has panicked. All you need to finish it is to edit the file by appending "]" to it. |
I wonder if this is just gfx-rs/gfx#3184 |
Ah thanks, now it works. I've tried with a few traces now and I don't get the validation error when playing the trace, even though I get multiple on the original run... I've been playing around a little more and noticed that I get very noticeable stalls (~1s) right before the validation error prints. introducing a sleep before acquiring a new frame gets rid of the validation error as well as the stalls.
I hadn't seen that. Seems likely. |
Filed #861 to make this less painful |
I modified the hello-triangle example to have trivial reproducer for this. If you think a stress test example is generally useful I can send a pull request: Btw, it took me longer than I care to admit to figure out how to run the example with logs. Maybe that should be documented in a very obvious place (README?). |
Sorry about that! I agree, we should definitely put it into README. @cwfitzgerald could you make a small PR with this to wgpu-rs, please? |
I'm running into this validation error as well. I see the validation error go away after applying one of the following changes:
I also tried calling |
785: Update to latest web-sys bindings r=kvark a=grovesNL We can wait for rustwasm/wasm-bindgen#2482 first Co-authored-by: Joshua Groves <josh@joshgroves.com>
I can reproduce this by running the mipmap example. wgpu on master (e5142b3) Pop_OS 20.04; Kernel 5.12.12; Navi10 - Radeon RX 5600XT; Vulkan SDK 1.2.182.0; MESA 21 edit: It may be related to the Vulkan driver in MESA. On my notebook I do never get those validation errors. It has a Vulkan Instance Version of 1.2.162 I will try to check it with different Vulkan versions to check my assumption. |
I'm on VVL 1.2.176.0, and not seeing this validation error. |
Closing as out of date |
Occasionally (every few hundred frames on average) I get
VUID-vkDestroyFramebuffer-framebuffer-00892
validation errors. The timing seems irregular, so I guess something is racing under the hood.My render loop is quite straighforward (removed error handling):
I played around a little and adding:
at the end prevents the validation errors.
The text was updated successfully, but these errors were encountered: