-
Notifications
You must be signed in to change notification settings - Fork 286
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
Crash because of unload_drivers_without_physical_devices() #1410
Comments
I know the exact problem as we are seeing it internally as well. |
Went ahead and reverted it - should have done so last week when the issue was identified internally, as it was clear this is a major bug. The fix is not trivial do’s didn’t see a quick fix applied. |
Thanks! We saw this last week too but we were hesitant about filing; we wanted to find a more crisp reproducer. |
Its a nasty case of "invalidated invariants are invariably infuriating". Edit: forgot to mention but I'm removing the |
Is there still some bug lingering here, or possibly some other bad commit? I was running into app-level crashes, and as a debugging step I tried doing a simple "vulkaninfo" against the libvulkan provided by the ANGLE tree (which is currently pointing to commit 40633a6). It seems to be doing very strange things indeed:
How on earth did the pointer for That's not the only pointer that's clearly wrong, either:
|
Actually, nevermind. It seems something was loading /usr/lib/libvulkan.so (ignoring LD_LIBRARY_PATH) and so it ended up having two different vulkan loader libraries in the process with different dispatch tables. |
Describe the bug
Chrome tests crash with 28f76ed
Environment (please complete the following information):
To Reproduce
Steps to reproduce the behavior:
dcheck_always_on = true
devtools_skip_typecheck = false
enable_backup_ref_ptr_feature_flag = true
enable_dangling_raw_ptr_checks = true
enable_dangling_raw_ptr_feature_flag = true
ffmpeg_branding = "Chrome"
is_component_build = false
is_debug = false
proprietary_codecs = true
symbol_level = 0
VK_LOADER_DEBUG output
log.txt
Additional context
I was able to get a better stack in gdb, though it's pretty complicated to get it to attach to the right process.
The missing parts are:
So, I think that the actual crash is in Mesa's libvulkan_lvp.so, but the change in #1374 now triggers it.
Also, commenting out code, the trigger is DestroyInstance() call in 28f76ed#diff-2777bd8d9c8897ff9c11c52c69dfab1851581f674a5122c6ff3d70a3a3f15e1bR6393.
@shrekshao maybe has a simpler repro with dawn_end2end_tests.
@charles-lunarg, could you PTAL?
This has high priority for us, since it blocks updating Vulkan dependencies in Chrome and Dawn, and we can't just skip the breaking commit, since it's near update to 1.3.273 headers.
The text was updated successfully, but these errors were encountered: