Screenshot debugging
After fully opening repaint debugging to clients (#142 (closed)), it may be useful for visual-glitch analysis in particular to take screenshots of particular outputs and/or surfaces.
This may or may not be viable when using the GL renderer: if a GBM surface implementation provides too few buffers, then keeping one buffer around with the last repaint output just in case, might exhaust the surface's buffer allocation.
Another option, especially when using planes, is to use DRM output writeback (#145) to take screenshots when needed, which alleviates some of the load concerns, and makes it easier to do post-mortem debugging (#144) by keeping a ring buffer of last screenshots.