aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorLeon Romanovsky <leonro@mellanox.com>2015-10-21 09:21:17 +0300
committerDoug Ledford <dledford@redhat.com>2015-12-08 16:55:31 -0500
commitab5cdc31630c7596d81ca8fbe7d695f10666f39b (patch)
treec544b85a8b79e6bf9d1f57dc8eaf63df58b3154c /include
parentIB/mlx4: Use vmalloc for WR buffers when needed (diff)
downloadlinux-dev-ab5cdc31630c7596d81ca8fbe7d695f10666f39b.tar.xz
linux-dev-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 <leonro@mellanox.com> Signed-off-by: Eli Cohen <eli@mellanox.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions