Hi all, On Wed, 14 Aug 2019 12:54:33 +1000 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> 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@xxxxxxxxxxxxxxxx> 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@xxxxxxxxxxxxxxxx> --- 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
Attachment:
pgpLCsSySZPJW.pgp
Description: OpenPGP digital signature