airlied has quit [Remote host closed the connection]
airlied has joined #zink
f_ is now known as funderscore
funderscore is now known as f_
f_ is now known as funderscore
funderscore is now known as f_
<fdobridge>
<gfxstrand> @airlied @zmike. This is fun:
<fdobridge>
<gfxstrand> ```
<fdobridge>
<gfxstrand> #0 0x00007fe47d0f43c4 in poll () from /lib64/libc.so.6
<fdobridge>
<gfxstrand> #1 0x00007fe47cb57670 in _xcb_in_read_block () from /lib64/libxcb.so.1
<fdobridge>
<gfxstrand> #2 0x00007fe47cb5b36b in xcb_connect_to_fd () from /lib64/libxcb.so.1
<fdobridge>
<gfxstrand> #3 0x00007fe47cb5bd79 in xcb_connect_to_display_with_auth_info () from /lib64/libxcb.so.1
<fdobridge>
<gfxstrand> #4 0x00007fe47cdb577a in _XConnectXCB () from /lib64/libX11.so.6
<fdobridge>
<gfxstrand> #5 0x00007fe47cda5c7c in XOpenDisplay () from /lib64/libX11.so.6
<fdobridge>
<gfxstrand> #6 0x00007fe475b740c5 in ?? () from /lib64/libGLX_nvidia.so.0
<fdobridge>
<gfxstrand> #7 0x00007fe475b75262 in vk_icdNegotiateLoaderICDInterfaceVersion () from /lib64/libGLX_nvidia.so.0
<fdobridge>
<gfxstrand> #8 0x00007fe475e3c620 in ?? () from /lib64/libvulkan.so.1
<fdobridge>
<gfxstrand> #9 0x00007fe475e48062 in ?? () from /lib64/libvulkan.so.1
<fdobridge>
<gfxstrand> #10 0x00007fe475e4e2c3 in vkEnumerateInstanceExtensionProperties () from /lib64/libvulkan.so.1
<fdobridge>
<gfxstrand> #11 0x00007fe471cdc5b7 in zink_create_instance (screen=0x249f03b0, instance_info=0x7fe4751a57f0 <instance_info>)
<fdobridge>
<gfxstrand> at src/gallium/drivers/zink/zink_instance.c:41
<fdobridge>
<gfxstrand> #12 0x00007fe471cc8f42 in zink_internal_create_screen (config=0x7ffecad92ee0, dev_major=226, dev_minor=129, adapter_luid=0)
<fdobridge>
<gfxstrand> at ../src/gallium/drivers/zink/zink_screen.c:3283
<fdobridge>
<gfxstrand> #13 0x00007fe471cca7ab in zink_drm_create_screen (fd=10, config=0x7ffecad92ee0)
<fdobridge>
<gfxstrand> at ../src/gallium/drivers/zink/zink_screen.c:3745
<fdobridge>
<gfxstrand> ```
<fdobridge>
<gfxstrand> So I think we need to figure out how to somehow use VK_LUNARG_direct_driver_loading
<fdobridge>
<gfxstrand> So I think we need to figure out how to somehow use VK_LUNARG_direct_driver_loading when auto-loading Zink as the nouveau driver (edited)
<fdobridge>
<gfxstrand> The question is how to do the plumbing
<fdobridge>
<gfxstrand> Alternatively, we could somehow build NVK into Zink and ship that so there is no actual device enumeration/loading. That sounds like a pain, though.
<fdobridge>
<zmike.> ...the fuck?
<fdobridge>
<zmike.> what is this from
<fdobridge>
<zmike.> are you trying to play games again ?
<fdobridge>
<zmike.> you know that isn't allowed
<fdobridge>
<gfxstrand> I'm running with Zink as my system OpenGL and made the mistake of installing the NVIDIA proprietary driver on my system.
<fdobridge>
<gfxstrand> `nvidia.ko` isn't loaded
<fdobridge>
<zmike.> looks like an nvidia driver issue to me
<fdobridge>
<gfxstrand> Yeah. Why they're talking to X in vk_icdNegotiateLoaderICDInterfaceVersion, I have no idea
<fdobridge>
<zmike.> yep
<fdobridge>
<zmike.> we had that pain in the device-select layer
<fdobridge>
<zmike.> now they have it
<fdobridge>
<gfxstrand> But also, I do think we should use VK_LUNARG_direct_driver_loading when silently swapping Zink in for nouveau GL.
<fdobridge>
<zmike.> you do you
<fdobridge>
<airlied> ah the device select layer pain was where I saw it before
<fdobridge>
<zmike.> yeah that's been fixed for a while
<fdobridge>
<zmike.> finally
<fdobridge>
<gfxstrand> But also, why is an X connection even available before glamor has loaded the driver?
<fdobridge>
<zmike.> it's not
<fdobridge>
<zmike.> nvidia is seeing that DISPLAY is set and trying to connect
<fdobridge>
<airlied> just unset DISPLAY around driver probing, I'll show myself out
<fdobridge>
<zmike.> brilliant
<fdobridge>
<gfxstrand> Yaknow...
<fdobridge>
<gfxstrand> If that weren't racy as hell...
<fdobridge>
<gfxstrand> I've worked around it for now by just moving NVIDIA's ICD file. I do think this is something we're going to have to sort out for real, though. 😢