08:47
illwieckz has joined #zink
12:49
<
fdobridge >
<Sid> random segfault in zink caused by electron
12:54
<
fdobridge >
<karolherbst> I'm sure it's some threading madness 🙃
14:03
<
fdobridge >
<zmike.> would be useful to know exactly which line that is and what pointer (I assume) is null
14:04
<
fdobridge >
<Sid> will look into it after dinner
14:04
<
fdobridge >
<Sid> it happened just as I was about to go cook, so
14:09
<
fdobridge >
<!DodoNVK (she) 🇱🇹> I guess something's wrong with `dst_view` variable (because 24.3.4 and `main` are on the same commit with regards to the `zink_render_pass.c` file)
14:10
<
zmike >
but there's already an assert higher up
14:11
<
zmike >
though the pastebin doesn't include the signal being hit here
14:12
<
fdobridge >
<Sid> Program terminated with signal SIGSEGV, Segmentation fault.
14:12
<
fdobridge >
<karolherbst> electron is doing heavy multi threading stuff, so it's not unlikely that things get screwed up badly here in unexpected ways
14:13
<
zmike >
what is the app
14:13
<
fdobridge >
<Sid> vesktop 1.5.5
14:14
<
fdobridge >
<Sid> and it's seemingly random, because I've been running my session on nvk+zink all day
14:14
<
fdobridge >
<karolherbst> what's the mesa verison? 24.3.4?
14:14
<
fdobridge >
<Sid> it's 1944 here right now, PC has been up since ~1030
14:14
<
fdobridge >
<Sid> `mesa-git 25.1.0_devel.201940.e488b5e45e2`
14:14
<
fdobridge >
<karolherbst> @zmike. if you want to make zink threading proof, run the android emulator with native OpenGL 🙃
14:15
<
fdobridge >
<karolherbst> you'll hit races left and right
14:15
<
fdobridge >
<zmike.> I don't know what this means
14:15
<
fdobridge >
<karolherbst> it will share a single OpenGL context doing all rendering or something
14:15
<
fdobridge >
<karolherbst> for every app
14:15
<
fdobridge >
<karolherbst> it's brutal
14:15
<
fdobridge >
<zmike.> I mean what is "the android emulator with native opengl"
14:15
<
fdobridge >
<Sid> as always fdo gitlab is slow as molasses
14:15
<
fdobridge >
<karolherbst> or doing 100 contexts or something
14:16
<
fdobridge >
<karolherbst> ahh.. you want a x86_64 image
14:16
<
fdobridge >
<karolherbst> that can call into the host gl
14:16
<
fdobridge >
<karolherbst> newer versions might use vulkan instead, dunno.. has been years
14:16
<
fdobridge >
<karolherbst> but it's was an excellent stress test for threading
14:16
<
fdobridge >
<Sid> ok yeah, I built on commit `e488b5e45e2 venus: support VK_KHR_global_priority`
14:17
<
fdobridge >
<karolherbst> crashed within seconds if you screwed up thread safety
14:17
<
fdobridge >
<zmike.> no I mean literally link me to whatever tf you're talking about
14:17
<
fdobridge >
<Sid> 560 commits behind upstream
14:17
<
fdobridge >
<zmike.> thanks
14:18
<
fdobridge >
<karolherbst> don't need to run an app, just start the emulator and do stuff like opening chrome or so 😄
14:18
<
fdobridge >
<karolherbst> I've done it when 12 or 13 was the newest version or so
14:18
<
fdobridge >
<karolherbst> but you can pick the version anyway
14:18
<
fdobridge >
<karolherbst> more info on hw acceleration
14:21
<
fdobridge >
<karolherbst> though in my experience just picking a x86_64 image was enough, I think there is a checkbox in the AVD settings in the GUI to enable it explicitly
14:26
<
fdobridge >
<Sid> this is the line frame #0 of the backtrace is pointing to
14:27
<
zmike >
yes, I have it here
14:27
<
zmike >
I know what's happening just not how
14:31
<
fdobridge >
<Sid> hm, well
14:31
<
fdobridge >
<Sid> my gdb skills are still pretty bad, but I can do whatever you need me to
14:32
<
fdobridge >
<Sid> actually..
14:33
<
zmike >
can you print msaa_expand_mask
14:34
<
fdobridge >
<Sid> (gdb) print msaa_expand_mask
14:34
<
fdobridge >
<Sid> $1 = 1
14:34
<
fdobridge >
<Sid> (gdb) print i
14:34
<
fdobridge >
<Sid> $2 = 0
14:34
<
zmike >
yeah that's about what I expected
14:35
<
fdobridge >
<Sid> :3
14:36
<
fdobridge >
<karolherbst> not sure if sharing core files is helpful, because they rely on external debug symbols, no?
14:36
<
fdobridge >
<Sid> mm
14:36
<
fdobridge >
<Sid> well, I've got gdb open :salute:
14:36
<
fdobridge >
<karolherbst> maybe `p *dst_view` and `p *csurf` could indicate what's wrong
14:37
<
zmike >
somehow csurf isn't a csurf
14:37
<
fdobridge >
<Sid> (gdb) p *dst_view
14:37
<
fdobridge >
<Sid> Cannot access memory at address 0x0
14:37
<
fdobridge >
<karolherbst> yeah.. I expect the ref count to be 0 or lower or something funky
14:37
<
fdobridge >
<Sid> ```
14:37
<
fdobridge >
<Sid> (gdb) p *csurf
14:37
<
fdobridge >
<Sid> $3 = {base = {reference = {count = 2}, format = PIPE_FORMAT_R8_UNORM, writable = 0, texture = 0x1f3402a22000, context = 0x1f34001b8030, width = 128, height = 16, nr_samples = 8, u = {tex = {level = 0, first_layer = 0, last_layer = 0}, buf = {first_element = 0, last_element = 0}}}, surf = 0x1f340002e500,
14:37
<
fdobridge >
<Sid> transient = 0x0, transient_init = false, needs_mutable = false}
14:37
<
fdobridge >
<Sid> ```
14:38
<
fdobridge >
<karolherbst> mhhh
14:38
<
fdobridge >
<karolherbst> maybe not
14:38
<
fdobridge >
<!DodoNVK (she) 🇱🇹> That's what I expected for that variable
14:38
<
fdobridge >
<karolherbst> zmike: you did into account that this might be release code and asserts might not hit, right?
14:38
<
zmike >
well then it'll just crash
14:38
<
zmike >
which is also fine
14:39
<
fdobridge >
<karolherbst> yeah
14:39
<
fdobridge >
<karolherbst> but it sounded like you assumed `dst_view` to be not NULL, dunno
14:39
<
fdobridge >
<Sid> nope
14:39
<
fdobridge >
<Sid> --buildtype debug
14:39
<
fdobridge >
<karolherbst> heh
14:39
<
zmike >
with asserts disabled I guess
14:39
<
fdobridge >
<Sid> hmm let me check
14:40
<
fdobridge >
<karolherbst> it's the `b_ndebug` option
14:40
<
fdobridge >
<Sid> -D b_ndebug=true
14:41
<
fdobridge >
<karolherbst> yeah, so asserts are disabled
14:41
<
fdobridge >
<Sid> I'll switch that over to false, thanks :froge:
14:42
<
fdobridge >
<karolherbst> anyway, I hate debugging electron apps, it's a pain
14:42
<
zmike >
I'd guess you should hit an assert before that, but maybe not
19:30
jhli has joined #zink
23:38
xroumegue has joined #zink