forked from Minki/linux
drm/i915: Compact gen8_ring_sync
Store the semaphore offset in a temporary variable to avoid having to get the VMA offset twice. Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
parent
1b9e665064
commit
c38c651b39
@ -1547,6 +1547,7 @@ gen8_ring_sync(struct drm_i915_gem_request *waiter_req,
|
||||
{
|
||||
struct intel_engine_cs *waiter = waiter_req->engine;
|
||||
struct drm_i915_private *dev_priv = waiter_req->i915;
|
||||
u64 offset = GEN8_WAIT_OFFSET(waiter, signaller->id);
|
||||
struct i915_hw_ppgtt *ppgtt;
|
||||
int ret;
|
||||
|
||||
@ -1558,10 +1559,8 @@ gen8_ring_sync(struct drm_i915_gem_request *waiter_req,
|
||||
MI_SEMAPHORE_GLOBAL_GTT |
|
||||
MI_SEMAPHORE_SAD_GTE_SDD);
|
||||
intel_ring_emit(waiter, seqno);
|
||||
intel_ring_emit(waiter,
|
||||
lower_32_bits(GEN8_WAIT_OFFSET(waiter, signaller->id)));
|
||||
intel_ring_emit(waiter,
|
||||
upper_32_bits(GEN8_WAIT_OFFSET(waiter, signaller->id)));
|
||||
intel_ring_emit(waiter, lower_32_bits(offset));
|
||||
intel_ring_emit(waiter, upper_32_bits(offset));
|
||||
intel_ring_advance(waiter);
|
||||
|
||||
/* When the !RCS engines idle waiting upon a semaphore, they lose their
|
||||
|
Loading…
Reference in New Issue
Block a user