diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2017-04-03 07:34:25 -0400 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2017-04-03 08:52:58 -0400 |
commit | d822bb18ce96391245d877d5bada8913b88a15cf (patch) | |
tree | 2160c43c92aee4f8d078617c4eed84745c508fd9 /drivers/gpu/drm/i915/intel_ringbuffer.h | |
parent | ba515d3407dccfe3b4597f4afdaaf2ef1beb48e1 (diff) |
drm/i915: intel_ring.engine is unused
Or rather it is used only by intel_ring_pin() to extract the
drm_i915_private which we can easily pass in. As this is a relatively
rare operation, save the space in the struct, and as such it is even
break even in the extra code for passing around the parameter:
add/remove: 0/0 grow/shrink: 2/3 up/down: 15/-15 (0)
function old new delta
intel_init_ring_buffer 906 918 +12
execlists_context_pin 1308 1311 +3
mock_engine 407 403 -4
intel_engine_create_ring 367 363 -4
intel_ring_pin 326 319 -7
Total: Before=1261794, After=1261794, chg +0.00%
v2: Reorder intel_init_ring_buffer to keep the ring setup together:
add/remove: 0/0 grow/shrink: 2/3 up/down: 9/-15 (-6)
function old new delta
intel_init_ring_buffer 906 912 +6
execlists_context_pin 1308 1311 +3
mock_engine 407 403 -4
intel_engine_create_ring 367 363 -4
intel_ring_pin 326 319 -7
Total: Before=1261794, After=1261788, chg -0.00%
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20170403113426.25707-1-chris@chris-wilson.co.uk
Diffstat (limited to 'drivers/gpu/drm/i915/intel_ringbuffer.h')
-rw-r--r-- | drivers/gpu/drm/i915/intel_ringbuffer.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h index a82a0807f64d..cbe61d3f31da 100644 --- a/drivers/gpu/drm/i915/intel_ringbuffer.h +++ b/drivers/gpu/drm/i915/intel_ringbuffer.h | |||
@@ -139,8 +139,6 @@ struct intel_ring { | |||
139 | struct i915_vma *vma; | 139 | struct i915_vma *vma; |
140 | void *vaddr; | 140 | void *vaddr; |
141 | 141 | ||
142 | struct intel_engine_cs *engine; | ||
143 | |||
144 | struct list_head request_list; | 142 | struct list_head request_list; |
145 | 143 | ||
146 | u32 head; | 144 | u32 head; |
@@ -487,7 +485,9 @@ intel_write_status_page(struct intel_engine_cs *engine, int reg, u32 value) | |||
487 | 485 | ||
488 | struct intel_ring * | 486 | struct intel_ring * |
489 | intel_engine_create_ring(struct intel_engine_cs *engine, int size); | 487 | intel_engine_create_ring(struct intel_engine_cs *engine, int size); |
490 | int intel_ring_pin(struct intel_ring *ring, unsigned int offset_bias); | 488 | int intel_ring_pin(struct intel_ring *ring, |
489 | struct drm_i915_private *i915, | ||
490 | unsigned int offset_bias); | ||
491 | void intel_ring_unpin(struct intel_ring *ring); | 491 | void intel_ring_unpin(struct intel_ring *ring); |
492 | void intel_ring_free(struct intel_ring *ring); | 492 | void intel_ring_free(struct intel_ring *ring); |
493 | 493 | ||