[RFC] drm: add flip-work helper

Daniel Vetter daniel at ffwll.ch
Sun Aug 4 10:34:26 PDT 2013


On Thu, Aug 1, 2013 at 1:23 AM, Rob Clark <robdclark at gmail.com> wrote:
> A small helper to queue up work to do, from workqueue context, after a
> flip.  Typically useful to defer unreffing buffers that may be read by
> the display controller until vblank.
>
> Signed-off-by: Rob Clark <robdclark at gmail.com>
> ---
> I've re-inventing the same wheel three times in as many drivers (omapdrm,
> tilcdc, and in upcoming msm driver I need two of 'em).  I guess it is
> time to helper-up.
>
> I'll update omapdrm and tilcdc to use this as well, but I figured I'd
> send an RFC first in case anyone wants to get their bikeshed on.  If
> there are other drivers that could use this, and are straightforward
> to convert over, let me know and I can update them as well.


One thing drm/i915 needs is to be able to flush the workqueue (to make
sure we don't pile up giant amounts of buffers waiting to be unpinned
and so temporarily leak a bit of memory). So some way to synchronously
flush out flip functions would be required (and make sure all that
have been queued up to that point are really completed). But at that
point a separate workqueue sounds simpler, so I wonder a bit what this
gains us? At roughly 50Hz flip work functions aren't really that
performance critical imo ...
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch


More information about the dri-devel mailing list