From: Robert Foss <robert.foss@collabora.com>
To: Sean Paul <seanpaul@chromium.org>
Cc: dri-devel <dri-devel@lists.freedesktop.org>,
Adrian Salido <salidoa@google.com>
Subject: Re: [PATCH hwc v2 6/6] drm_hwcomposer: Add out-fence support
Date: Thu, 28 Sep 2017 18:21:13 +0200 [thread overview]
Message-ID: <1506615673.2185.1.camel@collabora.com> (raw)
In-Reply-To: <CAOw6vbJNESOWLypSWC7C6Yt6sEBdP6ZsmWS+W+66SKWwJsu=ww@mail.gmail.com>
On Wed, 2017-09-27 at 15:11 -0400, Sean Paul wrote:
> On Wed, Sep 27, 2017 at 7:58 AM, Robert Foss <robert.foss@collabora.c
> om> wrote:
> > Add support for out-fences through the OUT_FENCE_PTR property.
> > Out-fences signal when their associated buffer may be read by a
> > device.
> >
> > Signed-off-by: Robert Foss <robert.foss@collabora.com>
> > ---
> >
> > Changes since v1:
> > Sergi Granell
> > - Set atomic property to be out_fences[crtc->pipe()] not
> > out_fences[0]
> >
> > drmdisplaycomposition.h | 9 +++++++++
> > drmdisplaycompositor.cpp | 16 ++++++++++++++++
> > drmhwctwo.cpp | 9 ++-------
> > 3 files changed, 27 insertions(+), 7 deletions(-)
> >
> > diff --git a/drmdisplaycomposition.h b/drmdisplaycomposition.h
> > index b165adc..0586d58 100644
> > --- a/drmdisplaycomposition.h
> > +++ b/drmdisplaycomposition.h
> > @@ -189,6 +189,14 @@ class DrmDisplayComposition {
> > return planner_;
> > }
> >
> > + int take_out_fence() {
> > + return out_fence_.Release();
> > + }
> > +
> > + void set_out_fence(int out_fence) {
> > + out_fence_.Set(dup(out_fence));
>
> Why dup if you're just going to close the original? I think the
> helper
> functions actually hurt you here. It would be easier to understand
> what was going on if you just manipulated out_fence_ directly in
> CommitFrame (then you wouldn't need the dup/close).
Yeah, that makes a lot of sense, and is a lot easier to read too.
>
> > + }
> > +
> > void Dump(std::ostringstream *out) const;
> >
> > private:
> > @@ -215,6 +223,7 @@ class DrmDisplayComposition {
> > int timeline_current_ = 0;
> > int timeline_squash_done_ = 0;
> > int timeline_pre_comp_done_ = 0;
> > + UniqueFd out_fence_ = -1;
> >
> > bool geometry_changed_;
> > std::vector<DrmHwcLayer> layers_;
> > diff --git a/drmdisplaycompositor.cpp b/drmdisplaycompositor.cpp
> > index 71c0451..a1427d3 100644
> > --- a/drmdisplaycompositor.cpp
> > +++ b/drmdisplaycompositor.cpp
> > @@ -492,6 +492,7 @@ int
> > DrmDisplayCompositor::CommitFrame(DrmDisplayComposition
> > *display_comp,
> > display_comp->composition_planes();
> > std::vector<DrmCompositionRegion> &pre_comp_regions =
> > display_comp->pre_comp_regions();
> > + uint64_t out_fences[drm_->GetCrtcCount()];
>
> Huh. I didn't know you could do this.
C99 and variable length arrays man.
Progress at a glacial pace is still happening in C-land.
Rob.
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
prev parent reply other threads:[~2017-09-28 16:21 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-27 11:58 [PATCH hwc v2 0/6] Implement fencing Robert Foss
2017-09-27 11:58 ` [PATCH hwc v2 1/6] drm_hwcomposer: Remove threading Robert Foss
2017-09-27 13:34 ` Emil Velikov
2017-09-27 18:53 ` Robert Foss
2017-09-27 19:14 ` Sean Paul
2017-09-28 16:22 ` Robert Foss
2017-09-28 16:43 ` Chih-Wei Huang
2017-09-28 21:29 ` Rob Herring
2017-09-29 5:49 ` Chih-Wei Huang
2017-09-29 8:44 ` Robert Foss
2017-09-29 9:07 ` Chih-Wei Huang
2017-09-29 13:16 ` Robert Foss
2017-09-27 11:58 ` [PATCH hwc v2 2/6] drm_hwcomposer: Add support for IN_FENCE_FD property to DrmPlane Robert Foss
2017-09-27 19:14 ` Sean Paul
2017-09-27 11:58 ` [PATCH hwc v2 3/6] drm_hwcomposer: Submit in-fence to DRM Robert Foss
2017-09-27 18:55 ` Sean Paul
2017-09-27 18:59 ` Robert Foss
2018-02-12 22:10 ` Rob Herring
2017-09-27 11:58 ` [PATCH hwc v2 4/6] drm_hwcomposer: Add FENCE_OUT_PTR property to DrmCrtc Robert Foss
2017-09-27 19:15 ` Sean Paul
2017-09-27 11:58 ` [PATCH hwc v2 5/6] drm_hwcomposer: Add GetCrtcCount function Robert Foss
2017-09-27 19:12 ` Sean Paul
2017-09-28 16:21 ` Robert Foss
2017-09-27 11:58 ` [PATCH hwc v2 6/6] drm_hwcomposer: Add out-fence support Robert Foss
2017-09-27 19:11 ` Sean Paul
2017-09-28 16:21 ` Robert Foss [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1506615673.2185.1.camel@collabora.com \
--to=robert.foss@collabora.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=salidoa@google.com \
--cc=seanpaul@chromium.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.