00:00zmike: barriers have no such language so they're on a different cleanup list
00:04alyssa: ok, have barriers ~working on bifrost
00:04imirkin: just a bit-flip away from working then
00:06imirkin:still doesn't have working barriers on nvidia
00:06jekstrand: Should work out-of-the-box for us, in theory.
00:07imirkin: they _mostly_ work, but definitely ways to defeat them
01:16jenatali: karolherbst: You're using -O0 for CL compilation, right? Did you have to add a workaround for inline functions not getting emitted?
07:15jekstrand: jenatali: Any idea how OpenCL force_unroll decorations are supposed to get carried through SPIR-V? In Vulkan, they go on the OpLoopMerge but CL doesn't have that.
09:53pq: I tried Bichon today very briefly, and I'm convinced it will make the people disliking the Gitlab web UI to enjoy reviewing MRs. I might use it myself, too. :-)
10:30emersion: hrm, it needs some kind of gnome thing for the keyring
10:30emersion: can't get it to work
10:30emersion: the gnome thing is running, but it needs a keyring i don't have and can't create
11:18jadahl: emersion: seems it uses "secret service". if you can't get gnome-keyring to work, you can try other implementations
11:19emersion: the issue is that it requires the secret service keyring to have a specific name
11:19emersion: and i can't find how to create a keyring with the name "login"
11:19emersion: seahorse has a keyring name field, but it seems like it's a human-readable string, not the keyring ID
11:19jadahl: the login one is special AFAIK, opened via pam or something like that
11:20emersion: well it can have an empty passphrase
11:20emersion: then no need for PAM
11:20jadahl: ah ok
11:20emersion: the fix is to patch Bichon to use the default keyring
11:23jadahl: bichon seems interesting
13:37pq: emersion, I didn't use a "secret service". Bichon noticed that and said it'll store stuff encrypted with a password of my choosing.
13:37pq: a password I need to input every time I start Bichon
13:45jenatali: jekstrand: Not offhand at least
14:13emersion: pq: yeah, i wish it accepted no password
16:08linkmauve: Hi, in intel-gpu-overlay, what is the difference between Power and Package, both being in mW?
16:34linkmauve: It seems Power is only the GPU, while Package is GPU + CPU + VSC + possibly other parts.
16:35linkmauve: intel_gpu_top seems to only report the former, is there a way to also see the latter?
16:48jekstrand: jenatali: k. I'll ask some of our CL people.
16:48jekstrand: jenatali: I tried putting them in a kernel and realized they don't propagate to NIR.
17:42jekstrand: Totally random but bitonic sort is pretty cool
18:18linkmauve: Uh, the merge request process is very easy to misunderstand when the target project has disabled this workflow.
18:19linkmauve: I ended up creating a merge request to my own master: https://gitlab.freedesktop.org/linkmauve/igt-gpu-tools/-/merge_requests/1
18:26robclark: mareko, Kayden: btw one thing that bothered me about threaded-ctx is how to ensure that only "safe" things are done w/ the pctx in things called directly from st thread.. so was playing around with clangs locking annotations to help with that.. not completely sprinkled about but enough to show the idea.. https://gitlab.freedesktop.org/robclark/mesa/-/commit/64e15dba24031c72485c93c8ed8ee0879423bcb0
18:27robclark: (inspired by an earlier experiment with the annotations from krh)
18:32mareko: robclark: it's easy to check whether a driver is thread-safe: when it only uses ctx->screen
18:34robclark: there are a few more things that I need from `fd_context` in places, but they are immutable.. I suppose with a lot of shuffling things around stuff could be moved to fd_screen
18:35robclark: but that is a bunch of churn.. and if I can use the compiler to help me instead, that seems nice
18:44zmike: it's easy to test if your driver is threadsafe with tc: just run citra :)
18:57robclark: heheh, I was looking for something a bit more pro-active :-P
18:58robclark: and that would catch issues in CI
18:58zmike: yeah for sure that'd be A++++ 👍👍👍
20:05Kayden: robclark: neat, that looks interesting
20:07robclark: it is turning a bit into sprinkling annotations everywhere.. but I guess that does also serve to document what gets called where
21:18soreau: emersion: It turned out to be https://gitlab.freedesktop.org/mesa/mesa/-/issues/4294 of which, this is the culprit https://gitlab.freedesktop.org/mesa/mesa/-/commit/b4651890be4db10a6a6ebf0e6cf2fad7d00623b9#bf3ef1d03575f4461cf4459a7ce353e7022048a7_300_322
21:19soreau: now I'm wondering if this is something that is expected to be updated in libav
21:20alyssa:hyped for freedreno + tc
21:29pepp: soreau: see https://gitlab.freedesktop.org/mesa/mesa/-/issues/4285 and https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9020
21:37soreau: pepp: yep, that works
21:44soreau: would be nice to have this command in a CI runner
21:45soreau: or somehow part of intel va test
22:27krh: robclark: I think the added annotations are actually a feature of this
22:44alyssa: krh: inclined to agree even if I suspect if we try to standardize the names we'll bikeshed for ages
22:46robclark: we just need libbikeshed :-P
22:46alyssa: robclark: don't you mean bikeshed.rs? :P
22:46alyssa: we wouldn't want to bikeshed in memory unsafe languages, would we?
22:47robclark: cargoshed :-P
22:48alyssa: reading about clang's thread-safety checker, this does seem Rust inspired :>
22:50jadahl: is llvmpipe on aarch64 known to work? getting swapped color components and not sure whether to blame myself or mesa
22:53alyssa: it, shoudl?
22:54robclark: just don't try aarch64 b/e
22:55jadahl: i double checked that it's l/e, but the as far as I can see, the same code path on an x86_64 produces the same result with swapped red and blue
22:56jadahl: but as far as I know, running on arm gpu drivers should work just fine
22:56jadahl: (this is running in CI)
22:56alyssa: jadahl: greyscale screens can improve productivity, why don't you do that? then it fixes the BGR issue? ;P
22:57jadahl: alyssa: should made HDR grayscale too. super black to super white only
23:07jadahl: ahah, I think I found it. different order of executing function arguments; argumenst which were more or less init_color_rgb(pick_color_component(colors), pick_color_component(colors), pick_color_component(colors)) (pick_color_component() being get a semi random number and colors the random generater with a given seed)
23:59bnieuwenhuizen: hah, unspecified behavior strikes again :)