If either wsi_wl_init_wsi() or wsi_x11_init_wsi() fail during anv_EnumeratePhysicalDevices(), then anv_EnumeratePhysicalDevices() fails, even if the user did no ask for either winsys at vkCreateInstance. In particular, if the user asked for no winsys at all, then anv_EnumeratePhysicalDevices() still fails if winsys initialization fails. A user requests winsys support by requesting instance extensions VK_KHR_{wayland,xlib,xcb}_surface at time of vkCreateInstance. We should wait until jekstrand's big vulkan/wsi series lands before fixing this. (I observed this bug during code review, by reading code but not running code. So maybe this is NOTABUG.)
This probably affects radv too. See https://bugs.freedesktop.org/show_bug.cgi?id=104038.
Failing winsys init just means that we failed to allocate some memory to deal with the winsys. It never actually opens any connections. If you're failing memory allocations on driver startup, you have bigger problems.
My mistake. I assumed the winsys init code did something non-trivial, something other than allocation.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.