Open Bug 1801632 Opened 2 years ago Updated 1 year ago

Firefox fails to commit Wayland xdg_surface after ack_configure

Categories

(Core :: Widget: Gtk, defect, P3)

Desktop
Linux
defect

Tracking

()

UNCONFIRMED

People

(Reporter: luangruo, Unassigned, NeedInfo)

References

(Blocks 1 open bug)

Details

Attachments

(2 files)

Attached file Wayland compositor log

Firefox sometimes fails to commit an xdg_surface it creates after sending ack_configure. This results in the surface contents sometimes not being displayed after a resize finishes.

Attached is the compositor log demonstrating the incorrect behavior. After xdg_surface.configure (106) is sent, Firefox does not commit the associated xdg_surface, so the surface contents remain frozen. However, it does commit a desynchronous subsurface that is a child of the xdg_surface, which is not what the xdg_shell protocol says should be done in reply to an xdg_surface.configure event.

The log was generated with WebRender compositor integration enabled, but also happens without.

Which Wayland compositor do you run?

Flags: needinfo?(luangruo)
Priority: -- → P3

One I'm currently writing, but AFAICT from the log it isn't doing anything wrong (like not running frame callbacks.)

Flags: needinfo?(luangruo)

Does it have any visible consequences? i.e. do you see missing windows or so? Is there any testcase available?

Blocks: wayland
Flags: needinfo?(luangruo)

Yes, Firefox freezes until another configure event is generated, at which point it does commit.

WDYM by test-case?

Thanks.

Flags: needinfo?(luangruo)

Sorry but I fail to imagine how it looks like on user end. Is part of window missing after resize or so? How can I reproduce it? May you create a screencast of it, how it looks like?

The visible consequence is that the window contents "freeze" until the next configure event has a chance to make Firefox call commit, at which point the compositor resumes processing damage from the window. I've attached a screencast showing the problem. Thanks.

Interesting. I haven't seen such behavior in Mutter/KDE. Which compositor is that?

Flags: needinfo?(luangruo)

(In reply to [:nickname] Po Lu from comment #2)

One I'm currently writing

Is it based on wlroots or completely custom? Is it on Github? Does the problem still occur with https://nightly.mozilla.org?

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: