diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2020-12-24 16:55:40 +0300 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2020-12-24 18:02:39 +0300 |
commit | bab0557c8dca97b651a09a987337dbb55945d534 (patch) | |
tree | 0ab69e605867b00d2f5da06c0e94465c0dce5d40 /scripts/gcc-plugins/cyc_complexity_plugin.c | |
parent | 6f0726b4807c1e16a88c4cfd2577c9bff265d35a (diff) | |
download | linux-bab0557c8dca97b651a09a987337dbb55945d534.tar.xz |
drm/i915/gt: Remove virtual breadcrumb before transfer
The issue with stale virtual breadcrumbs remain. Now we have the problem
that if the irq-signaler is still referencing the stale breadcrumb as we
transfer it to a new sibling, the list becomes spaghetti. This is a very
small window, but that doesn't stop it being hit infrequently. To
prevent the lists being tangled (the iterator starting on one engine's
b->signalers but walking onto another list), always decouple the virtual
breadcrumb on schedule-out and make sure that the walker has stepped out
of the lists.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Matthew Brost <matthew.brost@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20201224135544.1713-5-chris@chris-wilson.co.uk
Diffstat (limited to 'scripts/gcc-plugins/cyc_complexity_plugin.c')
0 files changed, 0 insertions, 0 deletions