[PATCH v14 00/41] Atomic modesetting

Daniel Stone daniels at collabora.com
Wed Dec 20 12:26:17 UTC 2017

Please find attached another iteration of the atomic series. This round
has mostly seen cleanups and correctness fixes through 03-11.

The biggest change is around output disables, which necessitated the
introduction of patch 1, and now ensures a relatively complicated
disable/destroy/shutdown ordering of plane vs. output disabling. Patch
11 has now also grown to include a synchronous state application mode,
which is used by output disabling.

I didn't want to bulk up patch 11, and spent some time trying to pull
various bits of it out so they could be introduced in earlier, smaller,
patches. The most promising line was, patch by patch:
  * split state application out of repaint
  * add a (mostly unused) DPMS enum to output state
  * add drm_output_get_disable_state and drm_pending_state_apply_sync
    and use these from output disable
  * move all DPMS handling to output state at the same time as moving
    state application to repaint flush

At the end of it, it was still quite fiddly and I felt it made the
intermediate patches more difficult to review; it seemed more
straightforward to just read patch 11 with the above in mind. But if
anyone feels strongly about it, I'm happy to re-try the split along
those lines.

I did test hotplug and hot-unplug, which managed to tease out the
plane_state fixes now seen in patch 06. But beyond that, it seemed
entirely stable with whatever I threw at it. Hopefully this means we're
actually good to go by now.

Hope you all have a great Christmas and New Year.


More information about the wayland-devel mailing list