From: Lauri Peltonen <lpeltonen-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Cc: Rom Lemarchand <romlem-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>,
Stephen Warren <swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
James Jones <jajones-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
Greg KH
<gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org>,
"dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org"
<dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
Greg Hackmann <ghackmann-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>,
Ben Skeggs <bskeggs-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
Daniel Vetter <daniel-/w4YWyX8dFk@public.gmane.org>,
Colin Cross <ccross-z5hGa2qSFaRBDgjK7y7TUQ@public.gmane.org>,
Dave Airlie <airlied-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
Riley Andrews <riandrews-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>,
Ken Adams <kadams-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Subject: Re: [RFC] Explicit synchronization for Nouveau
Date: Mon, 6 Oct 2014 15:25:40 +0300 [thread overview]
Message-ID: <20141006122540.GA7974@eumail.nvidia.com> (raw)
In-Reply-To: <CAABpnA_r1Vu8pGtxqXO8Ufg5KMhkUy_9RPic-VActaJQyLRm_w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
On Thu, Oct 02, 2014 at 10:44:05PM +0200, Daniel Vetter wrote:
> On Thu, Oct 02, 2014 at 05:59:51PM +0300, Lauri Peltonen wrote:
> > Yes, that will probably work! So, just to reiterate that I understood you and
> > Daniel correctly:
> >
> > - de-stage sync_fence and it's user space API (the tedious part)
> > - add dma-buf ioctls for extracting and attaching explicit fences
> > - Nouveau specific: allow flagging gem buffers for explicit sync
> > - do not check pre-fences from explicitly synced buffers at submit
> > - continue to attach a shared fence after submit so that pinning and
> > unmapping continue to work
>
> - Have explicit in/out fences for the pushbuf ioctl is missing I
> guess in this step?
Yes, I was missing that. :)
> I also think we need some kind of demonstration vehicle using nouveau to
> satisfy Dave Airlie's open-source userspace requirements for new
> interfaces. Might be good to chat with him to make sure we have that
> covered (and how much needs to be there really).
Agreed.
> Also, the problem is that to actually push android stuff out of staging
> you need a use-case in upstream, which means an open-source gpu driver.
> There's not a lot of companies who have both that and ship android, and
> definitely not the nexus/android lead platforms.
>
> Display side would be easier since there's a bunch of kms drivers now
> upstream. But given that google decided to go ahead with their own adf
> instead of drm-kms that's also a non-starter.
Hmm.. Maybe we could use TegraDRM on the display side.. That and Nouveau
would already be two upstream drivers that support explicit sync on Tegra K1.
Also, if we bring sync fd's out of staging, one idea would be to add support
for EGL_ANDROID_native_fence_sync in mesa, along with some tests. That would
demonstrate converting between sync fd's and EGLSync objects.
> Hm, usually we expose such test interfaces through debugfs - that way
> production system won't ever ship with it (since there's too many exploits in
> there, especially with secure boot). But since you need it for validation
> tests (at least for the i915 suite) it should always be there when you need
> it.
>
> Exposing this as a configurable driver in dev is imo a no-go. But we
> should be able to easily convert this into a few debugfs files, so not too
> much fuzz hopefully.
Good idea!
> > > Aside: Will you be at XDC or linux plumbers? Either would be a perfect
> > > place to discuss plans and ideas - I'll attend both.
> >
> > I wasn't going to, but let's see. The former is pretty soon and the latter is
> > sold out. At least Andy Ritger from Nvidia is coming to XDC for sure, and he's
> > been involved in our internal discussions around these topics. So I suggest you
> > have a chat with him at least! :)
>
> I'll definitely have a chat (and some beers) with Andy, been a while I've
> last seen him ;-)
Change of plans, I'll attend XDC, so see you there! I'll even give a short
talk about explicit sync to get some discussions going. :)
Thanks,
Lauri
next prev parent reply other threads:[~2014-10-06 12:25 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-26 10:00 [RFC] Explicit synchronization for Nouveau Lauri Peltonen
2014-09-26 10:00 ` [RFC PATCH 2/7] drm/nouveau: Split nouveau_fence_sync Lauri Peltonen
2014-09-26 10:00 ` [RFC PATCH 4/7] drm/nouveau: Support fence fd's at kickoff Lauri Peltonen
2014-09-26 10:00 ` [RFC PATCH 5/7] libdrm: nouveau: Support fence fds Lauri Peltonen
2014-09-26 10:00 ` [RFC PATCH 6/7] drm/nouveau: Support marking buffers for explicit sync Lauri Peltonen
2014-09-27 6:52 ` Maarten Lankhorst
[not found] ` <1411725612-10455-1-git-send-email-lpeltonen-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2014-09-26 10:00 ` [RFC PATCH 1/7] android: Support creating sync fence from drm fences Lauri Peltonen
2014-09-27 7:00 ` Maarten Lankhorst
2014-09-26 10:00 ` [RFC PATCH 3/7] drm/nouveau: Add fence fd helpers Lauri Peltonen
2014-09-26 10:00 ` [RFC PATCH 7/7] drm/prime: Support explicit fence on export Lauri Peltonen
2014-09-27 6:49 ` Maarten Lankhorst
[not found] ` <1411725612-10455-8-git-send-email-lpeltonen-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2014-09-29 7:46 ` Daniel Vetter
2014-10-01 15:52 ` Lauri Peltonen
2014-09-29 7:43 ` [RFC] Explicit synchronization for Nouveau Daniel Vetter
2014-09-29 15:42 ` Jerome Glisse
[not found] ` <20140929154217.GA2851-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-09-29 17:20 ` Daniel Vetter
2014-09-29 17:20 ` James Jones
2014-09-30 8:21 ` Daniel Vetter
2014-10-01 15:14 ` Lauri Peltonen
[not found] ` <20141001151416.GC25206-GyFFdlxoGbnFT5IIyIEb6QC/G2K4zDHf@public.gmane.org>
2014-10-01 15:58 ` Maarten Lankhorst
2014-10-01 17:27 ` Daniel Vetter
[not found] ` <20141001172721.GQ12343-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2014-10-02 14:59 ` Lauri Peltonen
2014-10-02 20:44 ` Daniel Vetter
2014-10-03 21:56 ` Rom Lemarchand
[not found] ` <CAABpnA_r1Vu8pGtxqXO8Ufg5KMhkUy_9RPic-VActaJQyLRm_w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-10-06 12:25 ` Lauri Peltonen [this message]
[not found] ` <20141006122540.GA7974-GyFFdlxoGbnFT5IIyIEb6QC/G2K4zDHf@public.gmane.org>
2014-10-08 9:10 ` Daniel Vetter
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=20141006122540.GA7974@eumail.nvidia.com \
--to=lpeltonen-ddmlm1+adcrqt0dzr+alfa@public.gmane.org \
--cc=airlied-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=bskeggs-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=ccross-z5hGa2qSFaRBDgjK7y7TUQ@public.gmane.org \
--cc=daniel-/w4YWyX8dFk@public.gmane.org \
--cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=ghackmann-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org \
--cc=gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org \
--cc=jajones-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
--cc=kadams-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
--cc=nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=riandrews-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org \
--cc=romlem-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org \
--cc=swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
--cc=treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.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.