03:18Plagman: shouldn't you be allowed to change crtc_x/y/w/h without DRM_MODE_ATOMIC_ALLOW_MODESET?
03:30Plagman: i'm currently not clear if it's not allowed or if i'm dealing with a potential DC bug
03:37imirkin: Plagman: x/y seems ok, w/h seems dodgy
03:37imirkin: dunno what the docs say though
03:38Plagman: yeah my instinct just from the flag naming is that anything that it would just apply to changing the output timings, which w/h shouldn't really
03:38Plagman: but if it applies to any internal bw recomputation on the driver side i could see that
03:38Plagman: it just seems like they have enough info to check before/after without that flag
03:42imirkin: well, crtc w/h probably have to match up to the "real" part of the modeline
03:42imirkin: and if not that, then some kind of scaling has to be applied
03:43imirkin: i could be getting bits confused though
03:43Plagman: right, but changing scaling is a frontend thing, not backend, right? it doesn't seem to qualify as a 'modeset'
03:43imirkin: that's pretty hw specific, i'd think
03:43Plagman: if i'm moving/resizing the destrect around the display is still getting the same timings i'd expect
03:43Plagman: no matter what hw
03:43imirkin: same timings, sure
03:44imirkin: but i'm not sure why you're so attached to the timings themselves
03:44Plagman: just because my mental model and personal nomenclature says that as long as the monitor is getting the same timings, no modeset has happened - which is why the flag name is tripping me
03:44Plagman: but maybe that's just me
03:45imirkin: so ... if you're changing from rgb565 to rgb888 - no modeset?
03:45Plagman: are you changing what is scanned out over the cable, or is your display block handling the format change through its lut?
03:46Plagman: i would think the former is a modeset and not the latter - again, just semantics at this point so no big deal, could use just clarification for both generic drm docs and what happens with DC specifically
03:46imirkin: well, e.g. with DVI. same output on the cable.
03:46imirkin: (the 10bpc stuff gets wonkier)
03:46imirkin: (since that also affects timings)
03:46Plagman: right, i think switching from 8bpc DP to 10bpc is a modeset
03:46Plagman: not anything else though
03:46imirkin: ok. i'm not sure that the universe agrees with you. but i'm hardly an expert
03:47Plagman: yeah same
03:47Plagman: the only thing i know for sure is that computers are out to get me
03:47imirkin: that's kind of a given
03:47imirkin: and there's more of them than there are of you...
03:47imirkin: and they never sleep (stupid PM)
03:48Plagman: they try to sleep sometimes but usually lock up on resume so we have a chance
03:48Plagman: at least the linux ones do
03:49Plagman: setting the flag for all my commits is a good enough workaround for me in the short term, so i'll just ask folks for clarification out of band and report back
03:49Plagman: unless they chime in here first
05:02robink: What's the newest version of LLVM/Clang that Mesa (Git master) is compatible with?
05:03robink: (In my case, I'm predominantly interested in RadeonSI/AMDGPU GL/Clover/RADV support).
09:53MrCooper: robink: LLVM Git master; though note you need current master of both, otherwise LLVM incompatible API changes can strike anytime
10:14robink: MrCooper: Hm, that's what I thought, oddly I'm having a configure error when trying to compile Mesa against LLVM/Clang Git master.
12:01pq: Plagman, the rule about "can I change ... without ALLOW_MODESET" is: yes, if your driver and hardware can do it without any potential glitch or delay compared to a normal pure pageflip.
12:06pq: imirkin, yes, color format is not a mode change if it can happen seamlessly (no observable glitch). Weston would certainly benefit from it when scanning out client buffers on the primary plane, since weston cannot risk a blink switching between internal and client buffers.
12:13emersion: can the driver send userspace a "you need to pass ALLOW_MODESET" hint?
12:13emersion: hmm, doesn't seem like it
12:14emersion: does userspace need to pass ALLOW_MODESET with TEST_ONLY?
12:14emersion: i guess so?
12:16emersion: it would certainly be confusing for userspace if the driver expects ALLOW_MODESET when re-configuring planes
12:19pq: yes, it's needed with TEST_ONLY, otherwise TEST_ONLY wouldn't be useful.
12:21pq: well, I see it from this side: when userspace does not set ALLOW_MODESET, it wants the update to happen as seamlessly as a normal plain pageflip would. If a driver cannot do that, then it doesn't matter if it did work with ALLOW_MODESET - userspace does not want the potential glitch that ALLOW_MODESET allows anyway.
12:22pq: OTOH if userspace does not care about glitches or not, it can use ALLOW_MODESET all the time.
12:22pq: it won't force a modeset, it only allows it
12:39emersion: well, if userspace just re-configures planes as part of its rendering loop, it won't set ALLOW_MODESET
16:01MrCooper: robink: if you provide the actual error, somebody might be able to help
17:16imirkin: pq: what about changing crtc_h/w?
17:57robink: MrCooper: Sure, can do, hold on...
18:01robink: MrCooper: https://gist.github.com/Haifen/fb8e3afd6c34493d1ea8f964c534ee34#file-output-of-mesa-git-master-meson-configure-stage-L225
18:33robink: The above link is for anybody who wants to see an error from Mesa's (Meson) configure stage.
18:34robink: Basically, Mesa/Meson complains it can't find the libclangCodeGen.so.svn10 library (it's suffixed '.svn10', even though llvm-config is reporting version 11, which may be the problem).
18:47DOmen2: maybe someone can help with me with, how to debug video memory leaks radeon/amdgpu vdpau/uvd driver. if i play with vlc player h264 video on loop, eventually when you run out of video ram, uvd ring will crash. Anyone here that would be able to point me in right direction to find needle in haystack ?
18:59robink: I'm compiling LLVM & Clang from the GitHub llvm/llvm-project repo (combined LLVM, Clang, LLDB, etc repo), if that helps.
19:41Plagman: pq: yeah makes sense - and i think amdpgu dc is capable of reconfiguring planes without glitches, it just won't do it without the flag right now, just a bug to fix probably
23:05MrCooper: robink: try "meson configure <build directory> --clearcache" and then ninja again
23:06robink: MrCooper: Thanks, will do when I get back to my desktop.
23:54robink: MrCooper: I get: ERROR: No such build data file as "'/var/tmp/portage/media-libs/mesa-9999/work/mesa
23:54robink: MrCooper: Did I do something wrong?