[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20190822095029.0fd063d4@canb.auug.org.au>
Date: Thu, 22 Aug 2019 09:50:29 +1000
From: Stephen Rothwell <sfr@...b.auug.org.au>
To: Daniel Vetter <daniel.vetter@...ll.ch>,
Intel Graphics <intel-gfx@...ts.freedesktop.org>,
DRI <dri-devel@...ts.freedesktop.org>,
Dave Airlie <airlied@...ux.ie>,
Jani Nikula <jani.nikula@...ux.intel.com>,
Joonas Lahtinen <joonas.lahtinen@...ux.intel.com>,
Rodrigo Vivi <rodrigo.vivi@...el.com>
Cc: Linux Next Mailing List <linux-next@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Christian König <christian.koenig@....com>,
Chris Wilson <chris@...is-wilson.co.uk>,
Felix Kuehling <Felix.Kuehling@....com>,
Alex Deucher <alexander.deucher@....com>
Subject: Re: linux-next: manual merge of the drm-misc tree with the drm and
drm-intel trees
Hi all,
On Wed, 14 Aug 2019 12:54:33 +1000 Stephen Rothwell <sfr@...b.auug.org.au> wrote:
>
> Today's linux-next merge of the drm-misc tree got a conflict in:
>
> drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
> drivers/gpu/drm/i915/i915_vma.c
> drivers/gpu/drm/i915/i915_gem_batch_pool.c
> drivers/gpu/drm/i915/gem/i915_gem_object.c
> drivers/gpu/drm/i915/gt/intel_engine_pool.c
>
> between commits:
>
> a93615f900bd ("drm/i915: Throw away the active object retirement complexity")
> 12c255b5dad1 ("drm/i915: Provide an i915_active.acquire callback")
> cd2a4eaf8c79 ("drm/i915: Report resv_obj allocation failure")
> b40d73784ffc ("drm/i915: Replace struct_mutex for batch pool serialisation")
> ab2f7a5c18b5 ("drm/amdgpu: Implement VRAM wipe on release")
> 0c159ffef628 ("drm/i915/gem: Defer obj->base.resv fini until RCU callback")
>
> from the drm and drm-intel trees and commit:
>
> 52791eeec1d9 ("dma-buf: rename reservation_object to dma_resv")
>
> from the drm-misc tree.
>
> I fixed it up (see below and I added the following merge fix patch) and
> can carry the fix as necessary. This is now fixed as far as linux-next
> is concerned, but any non trivial conflicts should be mentioned to your
> upstream maintainer when your tree is submitted for merging. You may
> also want to consider cooperating with the maintainer of the
> conflicting tree to minimise any particularly complex conflicts.
So the parts of this that affected the drm tree are now fixed, but the
conflicts between the drm-intel and drm-misc trees are now between the
drm-intel and drm trees.
The added patch becomes:
From: Stephen Rothwell <sfr@...b.auug.org.au>
Date: Wed, 14 Aug 2019 12:48:39 +1000
Subject: [PATCH] drm: fix up fallout from "dma-buf: rename reservation_object to dma_resv"
Signed-off-by: Stephen Rothwell <sfr@...b.auug.org.au>
---
drivers/gpu/drm/i915/gt/intel_engine_pool.c | 8 ++++----
3 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/intel_engine_pool.c b/drivers/gpu/drm/i915/gt/intel_engine_pool.c
index 03d90b49584a..4cd54c569911 100644
--- a/drivers/gpu/drm/i915/gt/intel_engine_pool.c
+++ b/drivers/gpu/drm/i915/gt/intel_engine_pool.c
@@ -43,12 +43,12 @@ static int pool_active(struct i915_active *ref)
{
struct intel_engine_pool_node *node =
container_of(ref, typeof(*node), active);
- struct reservation_object *resv = node->obj->base.resv;
+ struct dma_resv *resv = node->obj->base.resv;
int err;
- if (reservation_object_trylock(resv)) {
- reservation_object_add_excl_fence(resv, NULL);
- reservation_object_unlock(resv);
+ if (dma_resv_trylock(resv)) {
+ dma_resv_add_excl_fence(resv, NULL);
+ dma_resv_unlock(resv);
}
err = i915_gem_object_pin_pages(node->obj);
I think the remaining merge resolution is:
diff --cc drivers/gpu/drm/i915/i915_vma.c
index 8be1bbef40e5,ebfd03d117cd..000000000000
--- a/drivers/gpu/drm/i915/i915_vma.c
+++ b/drivers/gpu/drm/i915/i915_vma.c
@@@ -911,21 -951,16 +911,21 @@@ int i915_vma_move_to_active(struct i915
if (intel_fb_obj_invalidate(obj, ORIGIN_CS))
__i915_active_request_set(&obj->frontbuffer_write, rq);
- reservation_object_add_excl_fence(vma->resv, &rq->fence);
++ dma_resv_add_excl_fence(vma->resv, &rq->fence);
+ obj->write_domain = I915_GEM_DOMAIN_RENDER;
obj->read_domains = 0;
+ } else {
- err = reservation_object_reserve_shared(vma->resv, 1);
++ err = dma_resv_reserve_shared(vma->resv, 1);
+ if (unlikely(err))
+ return err;
+
- reservation_object_add_shared_fence(vma->resv, &rq->fence);
++ dma_resv_add_shared_fence(vma->resv, &rq->fence);
+ obj->write_domain = 0;
}
obj->read_domains |= I915_GEM_GPU_DOMAINS;
+ obj->mm.dirty = true;
- if (flags & EXEC_OBJECT_NEEDS_FENCE)
- __i915_active_request_set(&vma->last_fence, rq);
-
- export_fence(vma, rq, flags);
+ GEM_BUG_ON(!i915_vma_is_active(vma));
return 0;
}
--
Cheers,
Stephen Rothwell
Content of type "application/pgp-signature" skipped
Powered by blists - more mailing lists