diff options
| author | Leon Romanovsky <[email protected]> | 2015-10-21 06:21:17 +0000 |
|---|---|---|
| committer | Doug Ledford <[email protected]> | 2015-12-08 21:55:31 +0000 |
| commit | ab5cdc31630c7596d81ca8fbe7d695f10666f39b (patch) | |
| tree | c544b85a8b79e6bf9d1f57dc8eaf63df58b3154c /drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | |
| parent | IB/mlx4: Use vmalloc for WR buffers when needed (diff) | |
| download | kernel-ab5cdc31630c7596d81ca8fbe7d695f10666f39b.tar.gz kernel-ab5cdc31630c7596d81ca8fbe7d695f10666f39b.zip | |
IB/mlx5: Postpone remove_keys under knowledge of coming preemption
The remove_keys() logic is performed as garbage collection task. Such
task is intended to be run when no other active processes are running.
The need_resched() will return TRUE if there are user tasks to be
activated in near future.
In such case, we don't execute remove_keys() and postpone
the garbage collection work to try to run in next cycle,
in order to free CPU resources to other tasks.
The possible pseudo-code to trigger such scenario:
1. Allocate a lot of MR to fill the cache above the limit.
2. Wait a small amount of time "to calm" the system.
3. Start CPU extensive operations on multi-node cluster.
4. Expect performance degradation during MR cache shrink operation.
Signed-off-by: Leon Romanovsky <[email protected]>
Signed-off-by: Eli Cohen <[email protected]>
Signed-off-by: Doug Ledford <[email protected]>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c')
0 files changed, 0 insertions, 0 deletions
