[PATCH v2 0/3] present: various fixes

Frank Binns frank.binns at imgtec.com
Wed May 28 09:40:28 PDT 2014

This is v2 of some present fixes for issues discovered when adding
DRI3+present support to the PVR video driver.

Patch 1 has been reworked to now always restore the screen pixmap
at the point a pending flip is marked as aborted. Previously it
only did this in one place and only for the root window.

Patch 2 is new and deals with the same problem, but in in different
way, as the old patch 2. Essentially both patches attempt to deal
with resource leaks related to flipping. The old patch did this by
preventing any pending flip, associated with the window being
destroyed, from being aborted and destroyed during window
destruction. However, this relied on the DDX waiting for all kernel
events to arrive and be processed so that the necessary resource
clean up was triggered. The new patch just does the clean up at
the point the window is destroyed.

Patch 3 is identical to the old patch 4 (as patch 3 has now been

Some issues still remain but these are fixed by the following patches
that are currently on the list but not in master:
- [PATCH] present: Queue flips for later execution
- [PATCH 3/6] present: Reorder Window teardown to avoid use-after-free

Frank Binns (3):
  present: restore screen pixmap when aborting a flip
  present: clean up all current flip resources on window destruction
  present: sync flips unless requested not to

 present/present.c        | 44 ++++++++++++++++++++++++++------------------
 present/present_priv.h   |  2 +-
 present/present_screen.c |  7 ++++---
 3 files changed, 31 insertions(+), 22 deletions(-)


More information about the xorg-devel mailing list