[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180522163550.GE1582@e110455-lin.cambridge.arm.com>
Date: Tue, 22 May 2018 17:35:50 +0100
From: Liviu Dudau <Liviu.Dudau@....com>
To: Eric Anholt <eric@...olt.net>
Cc: Gustavo Padovan <gustavo@...ovan.org>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Sean Paul <seanpaul@...omium.org>,
Jonathan Corbet <corbet@....net>,
dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org,
David Airlie <airlied@...ux.ie>,
Brian Starkey <brian.starkey@....com>,
Alexandru-Cosmin Gheorghe <alexandru-cosmin.gheorghe@....com>,
Boris Brezillon <boris.brezillon@...tlin.com>,
Maxime Ripard <maxime.ripard@...tlin.com>,
Daniel Stone <daniels@...labora.com>,
Mihail Atanassov <mihail.atanassov@....com>
Subject: Re: [PATCH v8 2/3] drm: writeback: Add out-fences for writeback
connectors
On Mon, May 21, 2018 at 12:02:25PM -0700, Eric Anholt wrote:
> Liviu Dudau <Liviu.Dudau@....com> writes:
>
> > From: Brian Starkey <brian.starkey@....com>
> >
> > Add the WRITEBACK_OUT_FENCE_PTR property to writeback connectors, to
> > enable userspace to get a fence which will signal once the writeback is
> > complete. It is not allowed to request an out-fence without a
> > framebuffer attached to the connector.
> >
> > A timeline is added to drm_writeback_connector for use by the writeback
> > out-fences.
>
>
> > diff --git a/include/drm/drm_writeback.h b/include/drm/drm_writeback.h
> > index cf3a28676006a..6a7462c1821ad 100644
> > --- a/include/drm/drm_writeback.h
> > +++ b/include/drm/drm_writeback.h
> > @@ -49,6 +49,32 @@ struct drm_writeback_connector {
> > * drm_writeback_signal_completion()
> > */
> > struct list_head job_queue;
> > +
> > + /**
> > + * @fence_context:
> > + *
> > + * timeline context used for fence operations.
> > + */
> > + unsigned int fence_context;
> > + /**
> > + * @fence_lock:
> > + *
> > + * spinlock to protect the fences in the fence_context.
> > + */
> > + spinlock_t fence_lock;
> > + /**
> > + * @fence_seqno:
> > + *
> > + * Seqno variable used as monotonic counter for the fences
> > + * created on the connector's timeline.
> > + */
> > + unsigned long fence_seqno;
> > + /**
> > + * @timeline_name:
> > + *
> > + * The name of the connector's fence timeline.
> > + */
> > + char timeline_name[32];
> > };
> >
> > struct drm_writeback_job {
> > @@ -59,12 +85,14 @@ struct drm_writeback_job {
> > * framebuffer reference to a workqueue.
> > */
> > struct work_struct cleanup_work;
> > +
> > /**
> > * @list_entry:
> > *
> > * List item for the connector's @job_queue
> > */
> > struct list_head list_entry;
> > +
> > /**
> > * @fb:
> > *
>
> Move this hunk into patch 1?
I can, however this is the only change I will be making. Is it worth
respinning a new revision for it?
>
> Other than that, the series is:
>
> Reviewed-by: Eric Anholt <eric@...olt.net>
Many thanks for that!
>
> It's pretty clean and makes sense to me. I only had some questions
> about the job_queue, which seems superfluous if we aren't supporting
> firing off a new writeback while an old one is outstanding (and maybe we
> should throw an error in that case). Still, I think this is ready to land.
I know Sean and Daniel are on holiday. Are you OK to pull this into
drm-misc? Should I ask Gustavo to do it?
Best regards,
Liviu
--
====================
| I would like to |
| fix the world, |
| but they're not |
| giving me the |
\ source code! /
---------------
¯\_(ツ)_/¯
Powered by blists - more mailing lists