From: Daniel Vetter <daniel-/w4YWyX8dFk@public.gmane.org>
To: "Koenig, Christian" <Christian.Koenig-5C7GfCeVMHo@public.gmane.org>
Cc: "Zhou,
David(ChunMing)" <David1.Zhou-5C7GfCeVMHo@public.gmane.org>,
Daniel Vetter <daniel.vetter-/w4YWyX8dFk@public.gmane.org>,
DRI Development
<dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
"amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org"
<amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
"Deucher,
Alexander" <Alexander.Deucher-5C7GfCeVMHo@public.gmane.org>,
Daniel Vetter
<daniel.vetter-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
Emil Velikov
<emil.velikov-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>
Subject: Re: [PATCH 4/7] drm/radeon: Fill out gem_object->resv
Date: Wed, 26 Jun 2019 10:23:12 +0200 [thread overview]
Message-ID: <20190626082312.GI12905@phenom.ffwll.local> (raw)
In-Reply-To: <4cfa949e-1a20-149c-0758-e1bd97fd3cf5-5C7GfCeVMHo@public.gmane.org>
On Wed, Jun 26, 2019 at 07:10:21AM +0000, Koenig, Christian wrote:
> Those patches would become superfluous when merging Gerd's work.
Not entirely, they still remove the gem_prime_res_obj. Setting up
gem_bo.resv is only one half of what these do here. And yeah I think that
single addition can be removed again when Gerd's stuff lands.
> But I'm not sure if that is going to fly soon or not.
I think r-b from Thomas Zimmermann (or some other ttm+gem stakeholder) and
we're good to land them. Thomas Hellstrom mellowed down his "nack" to
"I'll look at this in August again and course-correct if necessary".
-Daniel
>
> Christian.
>
> Am 25.06.19 um 22:42 schrieb Daniel Vetter:
> > That way we can ditch our gem_prime_res_obj implementation. Since ttm
> > absolutely needs the right reservation object all the boilerplate is
> > already there and we just have to wire it up correctly.
> >
> > Note that gem/prime doesn't care when we do this, as long as we do it
> > before the bo is registered and someone can call the handle2fd ioctl
> > on it.
> >
> > Aside: ttm_buffer_object.ttm_resv could probably be ditched in favour
> > of always passing a non-NULL resv to ttm_bo_init(). At least for gem
> > drivers that would avoid having two of these, on in ttm_buffer_object
> > and the other in drm_gem_object, one just there for confusion.
> >
> > Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
> > Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
> > Cc: Alex Deucher <alexander.deucher@amd.com>
> > Cc: "Christian König" <christian.koenig@amd.com>
> > Cc: "David (ChunMing) Zhou" <David1.Zhou@amd.com>
> > Cc: amd-gfx@lists.freedesktop.org
> > ---
> > drivers/gpu/drm/radeon/radeon_drv.c | 2 --
> > drivers/gpu/drm/radeon/radeon_object.c | 1 +
> > drivers/gpu/drm/radeon/radeon_prime.c | 7 -------
> > 3 files changed, 1 insertion(+), 9 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/radeon/radeon_drv.c b/drivers/gpu/drm/radeon/radeon_drv.c
> > index 4403e76e1ae0..a4a78dfdef37 100644
> > --- a/drivers/gpu/drm/radeon/radeon_drv.c
> > +++ b/drivers/gpu/drm/radeon/radeon_drv.c
> > @@ -152,7 +152,6 @@ struct drm_gem_object *radeon_gem_prime_import_sg_table(struct drm_device *dev,
> > struct sg_table *sg);
> > int radeon_gem_prime_pin(struct drm_gem_object *obj);
> > void radeon_gem_prime_unpin(struct drm_gem_object *obj);
> > -struct reservation_object *radeon_gem_prime_res_obj(struct drm_gem_object *);
> > void *radeon_gem_prime_vmap(struct drm_gem_object *obj);
> > void radeon_gem_prime_vunmap(struct drm_gem_object *obj, void *vaddr);
> >
> > @@ -566,7 +565,6 @@ static struct drm_driver kms_driver = {
> > .gem_prime_export = radeon_gem_prime_export,
> > .gem_prime_pin = radeon_gem_prime_pin,
> > .gem_prime_unpin = radeon_gem_prime_unpin,
> > - .gem_prime_res_obj = radeon_gem_prime_res_obj,
> > .gem_prime_get_sg_table = radeon_gem_prime_get_sg_table,
> > .gem_prime_import_sg_table = radeon_gem_prime_import_sg_table,
> > .gem_prime_vmap = radeon_gem_prime_vmap,
> > diff --git a/drivers/gpu/drm/radeon/radeon_object.c b/drivers/gpu/drm/radeon/radeon_object.c
> > index 21f73fc86f38..7a2bad843f8a 100644
> > --- a/drivers/gpu/drm/radeon/radeon_object.c
> > +++ b/drivers/gpu/drm/radeon/radeon_object.c
> > @@ -262,6 +262,7 @@ int radeon_bo_create(struct radeon_device *rdev,
> > r = ttm_bo_init(&rdev->mman.bdev, &bo->tbo, size, type,
> > &bo->placement, page_align, !kernel, acc_size,
> > sg, resv, &radeon_ttm_bo_destroy);
> > + bo->gem_base.resv = bo->tbo.resv;
> > up_read(&rdev->pm.mclk_lock);
> > if (unlikely(r != 0)) {
> > return r;
> > diff --git a/drivers/gpu/drm/radeon/radeon_prime.c b/drivers/gpu/drm/radeon/radeon_prime.c
> > index deaffce50a2e..8ce3e8045d42 100644
> > --- a/drivers/gpu/drm/radeon/radeon_prime.c
> > +++ b/drivers/gpu/drm/radeon/radeon_prime.c
> > @@ -117,13 +117,6 @@ void radeon_gem_prime_unpin(struct drm_gem_object *obj)
> > }
> >
> >
> > -struct reservation_object *radeon_gem_prime_res_obj(struct drm_gem_object *obj)
> > -{
> > - struct radeon_bo *bo = gem_to_radeon_bo(obj);
> > -
> > - return bo->tbo.resv;
> > -}
> > -
> > struct dma_buf *radeon_gem_prime_export(struct drm_gem_object *gobj,
> > int flags)
> > {
>
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
next prev parent reply other threads:[~2019-06-26 8:23 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-25 20:42 [PATCH 0/7] gem_bo.resv prime unification, leftovers Daniel Vetter
2019-06-25 20:42 ` [PATCH 1/7] drm/fb-helper: use gem_bo.resv, not dma_buf.resv in prepare_fb Daniel Vetter
2019-06-25 20:50 ` Sam Ravnborg
2019-06-26 0:07 ` Eric Anholt
[not found] ` <20190625204208.5614-1-daniel.vetter-/w4YWyX8dFk@public.gmane.org>
2019-06-25 20:42 ` [PATCH 2/7] drm/msm: Use drm_gem_fb_prepare_fb Daniel Vetter
2019-06-25 20:57 ` Rob Clark
2019-06-25 20:42 ` [PATCH 4/7] drm/radeon: Fill out gem_object->resv Daniel Vetter
[not found] ` <20190625204208.5614-5-daniel.vetter-/w4YWyX8dFk@public.gmane.org>
2019-06-25 20:52 ` Sam Ravnborg
2019-07-25 13:18 ` Daniel Vetter
2019-06-26 7:10 ` Koenig, Christian
[not found] ` <4cfa949e-1a20-149c-0758-e1bd97fd3cf5-5C7GfCeVMHo@public.gmane.org>
2019-06-26 8:23 ` Daniel Vetter [this message]
[not found] ` <20190626082312.GI12905-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2019-06-27 7:33 ` Daniel Vetter
[not found] ` <20190627073350.GG12905-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2019-07-19 13:00 ` Daniel Vetter
2019-06-25 20:42 ` [PATCH 5/7] drm/nouveau: " Daniel Vetter
2019-06-25 20:42 ` [PATCH 3/7] drm/vc4: Use drm_gem_fb_prepare_fb Daniel Vetter
2019-06-27 7:38 ` Daniel Vetter
2019-06-25 20:42 ` [PATCH 6/7] drm/amdgpu: Fill out gem_object->resv Daniel Vetter
2019-06-25 20:42 ` [PATCH 7/7] drm/prime: Ditch gem_prime_res_obj hook Daniel Vetter
2019-06-26 10:04 ` [PATCH 0/7] gem_bo.resv prime unification, leftovers Mike Lothian
2019-06-27 12:16 ` Gerd Hoffmann
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=20190626082312.GI12905@phenom.ffwll.local \
--to=daniel-/w4ywyx8dfk@public.gmane.org \
--cc=Alexander.Deucher-5C7GfCeVMHo@public.gmane.org \
--cc=Christian.Koenig-5C7GfCeVMHo@public.gmane.org \
--cc=David1.Zhou-5C7GfCeVMHo@public.gmane.org \
--cc=amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=daniel.vetter-/w4YWyX8dFk@public.gmane.org \
--cc=daniel.vetter-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=emil.velikov-ZGY8ohtN/8qB+jHODAdFcQ@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox