Skip to content

Draft: zink: fix Zink cleanup if init fails early

Matti Hämäläinen requested to merge ccrtnsp/mesa:zink-init-fix into main

Current code in zink_internal_create_screen() does not clean up after itself properly if init fails and can lead to use after free and other badness due to thread created for flush queue.

In attempt to fix this, split most of zink_destroy_screen() into zink_internal_destroy_screen() so we can use the code to clean up things properly. Also add some checks for NULL unset Vulkan dispatch table function pointers.

Signed-off-by: Matti Hamalainen ccr@tnsp.org

Merge request reports