diff options
author | Christian König <christian.koenig@amd.com> | 2022-11-23 12:14:56 +0300 |
---|---|---|
committer | Christian König <christian.koenig@amd.com> | 2022-12-06 12:53:20 +0300 |
commit | 9bff18d13473a9fdf81d5158248472a9d8ecf2bd (patch) | |
tree | cf5f20f51436fa8368357dfde8608982d17b9e06 /drivers/gpu/drm/i915/i915_gem.c | |
parent | cd3a8a596214e6a338a22104936c40e62bdea2b6 (diff) | |
download | linux-9bff18d13473a9fdf81d5158248472a9d8ecf2bd.tar.xz |
drm/ttm: use per BO cleanup workers
Instead of a single worker going over the list of delete BOs in regular
intervals use a per BO worker which blocks for the resv object and
locking of the BO.
This not only simplifies the handling massively, but also results in
much better response time when cleaning up buffers.
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
Reviewed-by: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20221125102137.1801-3-christian.koenig@amd.com
Diffstat (limited to 'drivers/gpu/drm/i915/i915_gem.c')
-rw-r--r-- | drivers/gpu/drm/i915/i915_gem.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index 8468ca9885fd..c38306f156d6 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c @@ -1099,7 +1099,7 @@ void i915_gem_drain_freed_objects(struct drm_i915_private *i915) { while (atomic_read(&i915->mm.free_count)) { flush_work(&i915->mm.free_work); - flush_delayed_work(&i915->bdev.wq); + drain_workqueue(i915->bdev.wq); rcu_barrier(); } } |