https://bugs.kde.org/show_bug.cgi?id=445412

--- Comment #10 from Duncan <1i5t5.dun...@cox.net> ---
(In reply to Zamundaaa from comment #9)
> From my wayland-session.log when reproducing this it seems like buffer swap
> is failing with EGL_BAD_SURFACE, but why it does that I can't explain yet.
> The only cause for the error I can see in Mesa is when
> gbm_surface_lock_front_buffer doesn't get called after eglSwapBuffers - but
> it is getting called every time. The gbm surface has a free buffer every
> time we call eglSwapBuffers, too, and KWin isn't even doing a modeset when
> the effect gets activated, or creating new test buffers or anything else
> that I think could be caused by the commit directly.

Consider the non-duplicated multi-monitor/ctrc case.

Some time ago now kwin_wayland split the formerly monolithic global surface
into separate surfaces per ctrc/monitor, and that has been working.

But when that first happened it broke zoom with somewhat similar but not as bad
behavior (it was possible to trigger updating again with that bug) until a
later commit fixed it.  That was bug #429377, fixed back in February by
https://invent.kde.org/plasma/kwin/commit/523ad8e25c34eb0e683f6e29ad15c3b9a7cdad31
I suspect the same faulty assumption is behind both bugs.

Keep in mind that once zoomed, part of the desktop will appear on a different
monitor than at 100% and presumably need to be drawn to a different ctrc.  If
the code assumption is it's on the same one that would explain the bad surface
errors, correct?

Nate's original report doesn't mention multi-monitor, tho, so I'm assuming this
bug's occurring on single-monitor as well, and I'm not at all sure this
explains the single-monitor case, unless the zoom triggers bad-surface for
now-off-screen area as well, not just on-other-screen area.

Meanwhile, admin's intuition (as I'm not a dev) says the problem is in the
page-flip processing changes mentioned in the commit message as fixups to the
modeset/delay-presentation changes that seems to have been the main thrust of
the commit.  That'd be why it's happening in the absence of the modesets that
the culprit commit was "about".

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to