ChanServ changed the topic of #zink to: official development channel for the mesa3d zink driver || https://docs.mesa3d.org/drivers/zink.html
lygstate has joined #zink
lygstate_ has joined #zink
lygstate has quit [Read error: Connection reset by peer]
Akari has quit [Ping timeout: 480 seconds]
lygstate has joined #zink
lygstate_ has quit [Read error: Connection reset by peer]
Akari has joined #zink
Akari has quit [Ping timeout: 480 seconds]
Akari has joined #zink
cheako has quit [Quit: Connection closed for inactivity]
<zmike> ajax: ping
<zmike> I guess I'll create a ticket to discuss this awfulness
cheako has joined #zink
<ajax> zmike: hey
<zmike> oh there you are
<ajax> sorry, working weird hours these days
<zmike> I get that
<zmike> been back in the kopper mines this week
<zmike> would not recommend
<zmike> ajax: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17147 probably good to go now, though I'm wondering if I have a similar issue somewhere in egl
<ajax> i don't totally follow the explanation in #6713
<zmike> the swapchain resource is getting destroyed
<ajax> why would un-make-current-ing a framebuffer destroy its buffers? they live as long as the glxdrawable lives.
<zmike> right
<zmike> but the drawable is getting destroyed
<ajax> uh... at the end of the test, sure, there'a glXDestroyWindow there. is there another one happening implicitly?
<zmike> every time it binds a new context it destroys the old drawables
<zmike> it calls through to driReleaseDrawables and then the drawable gets destroyed
<ajax> wrong to do so, i think. both the context and the glxdrawable logically take a reference on the underlying framebuffer.
<ajax> should, anyway. if they're not then start there i think
<zmike> they do
<zmike> the glxdrawable is destroyed though
<zmike> so bye-bye
<ajax> you're saying the internal state backing the glxdraw gets blown away? not that the app actually calls glXDestroyWindow when you hit this.
<zmike> yep
<ajax> ngh
<zmike> if you check out zmike/zink-kopper you'll see it in action
<ajax> this all got way uglier while i wasn't looking
<ajax> what is this zombie drawable nonsense
<ajax> (i'm well aware that i probably approved the patch that added it)
<zmike> it's the only way
<ajax> so it's kind of insanely awful that the only thing that creates that state is driFetchDrawable
<zmike> yep
<ajax> well. that the only place we call that is from MakeCurrent. we ought to just do that from Create/DestroyDrawable too
<ajax> because Fetch does bump the refcount like we want...
LexSfX has joined #zink
<ajax> zmike: congrats on nerdsniping me
<ajax> holy cow is there a lot of broken shit in here
<zmike> yeah it's awful
<zmike> I spent like 5 hours on it this morning
<ajax> is there any deadline pressure on this?
<zmike> like it has to be done tomorrow?
<zmike> no
<ajax> i have a few other branches with work in the area here
<ajax> feeling the pull between fix it right and fix it soon
<zmike> I'm not in a rush
<zmike> this test fails now anyway