08:58kode54: anybody got some eyes to look at this issue? https://gitlab.freedesktop.org/drm/amd/-/issues/4263
08:58kode54: I posted a test patch there
08:58kode54: and to the ML
08:59kode54: wondering why this async flip code doesn't allow cursor updates, which seems to break a number of things
09:05zamundaaa[m]: The API just was originally designed for the lowest common denominator- primary plane changes only
09:06zamundaaa[m]: KWin disables the cursor plane why doing tearing, so your patch is likely just a workaround
09:06zamundaaa[m]: Even if we do want that as a feature too
09:07kode54: how do I log every update that's being sent so I can see what things are attempted?
09:07kode54: does debug mode log all that?
09:07kode54: both kwin and labwc are breaking without this workaround
09:08kode54: and the game in question is not displaying a cursor at the time
09:08kode54: unless the target reticle is a cursor
09:09kode54: it may also be doing no-op cursor changes
09:10kode54: it appears it still passes that async check command regardless of the no-op check above
09:12kode54: in drm_atomic_uapi.c
09:13kode54: it checks if the command is fb_id, in_fence_fd, or fb_damage_clips, and if not, checks if the operation is a no-op
09:13kode54: but then it must still pass the async_check
09:14kode54: perhaps I should be posting this to the mailing list
09:23zamundaaa[m]: Yeah, that sounds like the issue
09:26kode54: I replied with further request for comment, though perhaps this should have been CC'd to the dri-devel list as well
09:27kode54: it seems it may be possible that the async_check should only be called if the command type matches one of the three that are being ignored for no-op check
09:28kode54: since that check will already return an error if the properties are being changed
09:28kode54: whereas the other one is more geared toward the properties that should be allowed for async changes
09:29kode54: I'll roll a patch that does that as an alternate
09:29kode54: and see how it behaves under the two DEs I test for tearing