14:59 naptastic: so, I found this bug report, with an almost exactly-matching backtrace and error message: https://gitlab.freedesktop.org/drm/nouveau/-/issues/43
15:00 naptastic: There's already a patch in wlroots but I'm not sure if that's what's tripping me up. How do I figure that out?
15:01 imirkin: well
15:01 imirkin: the backtrace is indicative of "something went wrong with our use of the GPU"
15:01 imirkin: as you might imagine, there are multiple ways of using the GPU wrong
15:01 imirkin: a lot more than using it right :)
15:02 naptastic: naturally xD
15:02 karolherbst: that fencing stuff is annoying :/
15:02 imirkin: naptastic: so the real question is ... what are you doing to trigger it?
15:03 naptastic: my next impulse was to see if I've got the brainpower to use eBPF (never used it before) and get a backtrace that includes what's going on in userspace
15:03 naptastic: because I'm not running Wayland... so it's not gonna be wlroots (probably).
15:03 imirkin: sounds like a solution looking for a problem...
15:04 naptastic: imirkin, yeah, and I'm not about wasting time. I have my suspicions about which application is misbehaving.
15:05 imirkin: tell us a bit about your setup, and which applications are implicated?
15:05 imirkin: that specific bug was wlroots doing something funny to upset nouveau's user-side refcounts of buffers, and telling the kernel to de-allocate a buffer before it was time
15:06 imirkin: which ultimately led to page faults on the GPU, and the failed recovery
15:30 naptastic: imirkin, Debian Testing with Mate. The most common time I see this--and it kills my whole session--is while streaming video. Resizing or moving the window might be part of it as well. But I don't have 100% reproduction steps.
15:31 naptastic: but this morning I was in the middle of something in Gimp when my session died.
15:31 imirkin: and what GPU?
15:31 naptastic: anyway, the app I actually suspect is misbehaving is Keybase (encrypted chat)
15:32 naptastic: VGA compatible controller: NVIDIA Corporation TU104 [GeForce RTX 2080 Rev. A] (rev a1)
16:09 karolherbst: probably chromium based
16:11 naptastic: it certainly creates enough processes to be, :|
16:12 karolherbst: I'd assume it's just the multithreading stuff.. you could try out a branch of mine which could potentially just work, but ehh, that's not very user friendly :D
16:16 naptastic: branch of chromium? No thanks... it wouldn't help anyway; Keybase is statically compiled. ($%!@# 180 MB .deb files)
16:16 imirkin: branch of mesa
16:17 naptastic: oh! That's not so bad, unless the build system's gotten uglier in the last 5 years.
16:17 imirkin: much uglier.
16:17 imirkin: it's now some python thing
16:18 naptastic: not waf, I take it?
16:18 imirkin: instead of tried-and-true autotools
16:18 imirkin: no, meson
16:18 karolherbst: autotools sucks :p
16:18 imirkin: autotools is the best
16:18 naptastic: configure, make, make install, or you have failed as a developer :P
16:18 imirkin: (which doesn't mean it doesn't have problems. just better than everything else.)
16:18 naptastic: if that's just a wrapper around foo, that's fine. But configure, make, make install.
16:19 imirkin: you wish.
16:20 naptastic: yeah I do :'(
16:20 imirkin: i fought it. but other mesa developpers appear to have been taken over by some "new = better" hysteria
16:21 imirkin: so now we have python-based build, walled-garden development
16:21 naptastic: yeah... I stopped being a professional developer rather than spend my weekends learning new JavaScript frameworks.
16:23 karolherbst: no, autotooles really sucks if you got cross platform :D
16:23 karolherbst: been there already
16:24 karolherbst: it is just horrible
16:32 imirkin: karolherbst: autotools is the only thing that's usable for cross-compile
16:32 imirkin: with meson the solution is "give up, and use a chroot + qemu"
16:32 imirkin: it can barely do 32-bit on 64-bit
16:34 karolherbst: I said cross platform, not "compile for a different arch"
16:35 karolherbst: and in a lot of distributions the packaging is so broken you have to use archs for anything besides x86 anyway
16:35 karolherbst: s/archs/chroots/
16:35 karolherbst: regadless of autotools
16:36 imirkin: yeah, with cmake, it's pretty horrid too
16:36 imirkin: but with autotools everything Just Works (tm)
16:36 karolherbst: ehh, no
16:36 karolherbst: tried that, and nope
16:37 imirkin: (if you're not negligent)
16:37 imirkin: well, dunno, worked fine for me
16:37 karolherbst: well.. debian doesn't allow you do install foreign arch llvm
16:37 imirkin: and i built a bunch of gentoo chroots which effectively use this trick
16:37 karolherbst: but yeah.. I guess gentoo is a bit easier here, but the chroot tooling also was heavily broken in a ton of situations for me
16:37 karolherbst: x86 usually works.. maybe arm
16:38 karolherbst: everything else is broken and sucks
16:38 imirkin: i cross-compiled to arm, arm64, and ppc64
16:38 imirkin: worked like a charm
16:38 imirkin: a handful of packages were problematic
16:38 imirkin: which used funny build systems
16:38 imirkin: like cmake
16:38 karolherbst: for me the binutils steps already failed
16:38 karolherbst: but maybe that's all fixed now
16:38 karolherbst: but I was also playing around with win32 targets
16:38 karolherbst: that was just bonkers
16:39 imirkin: yeah, win32 is a weeee bit more fun
16:39 RSpliet: "fun"
16:39 karolherbst: anyway.. I have my Dockerfiles for $random archs
16:39 karolherbst: and those work reliably
16:40 karolherbst: and I don't pollute my system
16:40 imirkin: yeah. that's what happens when you move away from autotools. you give up and just don't even try it.
16:40 karolherbst: well, package managers are the usual issue
16:40 karolherbst: like you can't install a arch foreign llvm on debian ;)
16:40 karolherbst: except you remove your native one
16:41 karolherbst: anyway.. I never liked writing those autotools scripts
16:42 imirkin: that's the sucky bit of autotools
16:43 imirkin: but as a consumer, i.e. someone who just wants to download and build
16:43 imirkin: autotools is far superior
16:44 karolherbst: yeah well.. I'd say that meson is just different
16:44 karolherbst: used to different things, but fundamentally the interface is similiar
16:45 karolherbst: but I do think that a meson .. -D... shortcut should be added to not have to add this annoying "configure" every time or so :D
16:45 karolherbst: or let meson setup be the default and change configs
16:45 karolherbst: oh well