diff options
| author | Chris Wilson <chris@chris-wilson.co.uk> | 2019-08-13 21:09:05 +0100 |
|---|---|---|
| committer | Chris Wilson <chris@chris-wilson.co.uk> | 2019-08-14 10:09:21 +0100 |
| commit | f130b712ff259f03feaf7a245e3464e3faad89ae (patch) | |
| tree | 7f6cc7fdd70ab2aca778d5fcd441f1340ec6ab55 /tools/perf/scripts/python/syscall-counts-by-pid.py | |
| parent | drm/i915: Print CCID for all renderCS (diff) | |
| download | linux-f130b712ff259f03feaf7a245e3464e3faad89ae.tar.gz linux-f130b712ff259f03feaf7a245e3464e3faad89ae.zip | |
drm/i915: Serialise read/write of the barrier's engine
We use the request pointer inside the i915_active_node as the indicator
of the barrier's status; we mark it as used during
i915_request_add_active_barriers(), and search for an available barrier
in reuse_idle_barrier(). That check must be carefully serialised to
ensure we do use an engine for the barrier and not just a random
pointer. (Along the other reuse path, we are fully serialised by the
timeline->mutex.) The acquisition of the barrier itself is ordered through
the strong memory barrier in llist_del_all().
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=111397
Fixes: d8af05ff38ae ("drm/i915: Allow sharing the idle-barrier from other kernel requests")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190813200905.11369-1-chris@chris-wilson.co.uk
Diffstat (limited to 'tools/perf/scripts/python/syscall-counts-by-pid.py')
0 files changed, 0 insertions, 0 deletions
