projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
7c4541a
)
drm/i915/execlists: Shortcircuit queue_prio() for no internal levels
author
Chris Wilson
<chris@chris-wilson.co.uk>
Mon, 25 May 2020 07:53:39 +0000
(08:53 +0100)
committer
Chris Wilson
<chris@chris-wilson.co.uk>
Tue, 26 May 2020 11:23:30 +0000
(12:23 +0100)
If there are no internal levels and the user priority-shift is zero, we
can help the compiler eliminate some dead code:
Function old new delta
start_timeslice 169 154 -15
__execlists_submission_tasklet 4696 4659 -37
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Link:
https://patchwork.freedesktop.org/patch/msgid/20200525075347.582-4-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/gt/intel_lrc.c
patch
|
blob
|
history
diff --git
a/drivers/gpu/drm/i915/gt/intel_lrc.c
b/drivers/gpu/drm/i915/gt/intel_lrc.c
index de5be57ed6d22dec362d7da07e4d9dd4e489ad11..3214a4ecc31a8377cd8473cd30bafe7da83881c9 100644
(file)
--- a/
drivers/gpu/drm/i915/gt/intel_lrc.c
+++ b/
drivers/gpu/drm/i915/gt/intel_lrc.c
@@
-446,6
+446,9
@@
static int queue_prio(const struct intel_engine_execlists *execlists)
* we have to flip the index value to become priority.
*/
p = to_priolist(rb);
+ if (!I915_USER_PRIORITY_SHIFT)
+ return p->priority;
+
return ((p->priority + 1) << I915_USER_PRIORITY_SHIFT) - ffs(p->used);
}