[PATCH weston v5 00/14] weston-debug API and tool
daniels at collabora.com
Fri Jul 20 19:03:21 UTC 2018
This patch series implements the weston-debug interface and tool, as
previously worked on by Pekka, Maniraj and Emre.
The xwm changes are unchanged from the previous series, and additionally
reviewed by myself.
The core protocol has seen the addition of a registry-like advertising
interface: this allows the tool to bind to all scopes if requested, or
to list them in a slightly more friendly format.
On top of this, I have added a 'scene-graph' debug interface which
prints some information about the outputs, as well as the current trees
of layers and views. This could likely be improved to be more
informative about, e.g., subsurfaces. It also doesn't print much for SHM
buffers in particular, as these are often not retained after upload.
Rather than carry around a 'drm debug' patch in my tree forever, I have
implemented most of the information from that patch as a new
'drm-backend' scope, which prints as much information as possible about
the repaint cycle, including why it has (or hasn't!) assigned views to
I would like to push this further, including enhanced surface and buffer
debug as above, but these require pushing more information back from the
renderer and backend into the core. Similarly, I would like to add a
command-line argument which will automatically log the output of named
scopes into the core Weston log, for debugging issues with startup in
One additional feature I think would be very useful is implementing a
ring buffer for all debug scopes, recording all output even if the scope
is not active. A 'something bad happened' debug keybinding could then be
added which would dump all the stored output, allowing us to find out
more about issues which happened in the past, without incurring the
runtime overhead of dumping huge files to disk.
Given the above two paragraphs are a little more invasive and
controversial, I thought it would be best to send these out now, and
then see where we can take it from there.
More information about the wayland-devel