diff options
author | Santosh Shilimkar <santosh.shilimkar@oracle.com> | 2015-09-13 22:34:37 -0700 |
---|---|---|
committer | Santosh Shilimkar <santosh.shilimkar@oracle.com> | 2015-10-05 11:19:01 -0700 |
commit | 2e1d6b813ac146db1e33ebb9b90441012dde4952 (patch) | |
tree | cdd616c5d0a6422f10eca4b765d638987e94f512 /net/rds/ib_rdma.c | |
parent | 9441c973e1e0e9885537a3a86020fe8e121e9a98 (diff) | |
download | op-kernel-dev-2e1d6b813ac146db1e33ebb9b90441012dde4952.zip op-kernel-dev-2e1d6b813ac146db1e33ebb9b90441012dde4952.tar.gz |
RDS: IB: fix the rds_ib_fmr_wq kick call
RDS IB mr pool has its own workqueue 'rds_ib_fmr_wq', so we need
to use queue_delayed_work() to kick the work. This was hurting
the performance since pool maintenance was less often triggered
from other path.
Signed-off-by: Santosh Shilimkar <ssantosh@kernel.org>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
Diffstat (limited to 'net/rds/ib_rdma.c')
-rw-r--r-- | net/rds/ib_rdma.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/rds/ib_rdma.c b/net/rds/ib_rdma.c index 872f523..b6644fa 100644 --- a/net/rds/ib_rdma.c +++ b/net/rds/ib_rdma.c @@ -319,7 +319,7 @@ static struct rds_ib_mr *rds_ib_alloc_fmr(struct rds_ib_device *rds_ibdev) int err = 0, iter = 0; if (atomic_read(&pool->dirty_count) >= pool->max_items / 10) - schedule_delayed_work(&pool->flush_worker, 10); + queue_delayed_work(rds_ib_fmr_wq, &pool->flush_worker, 10); while (1) { ibmr = rds_ib_reuse_fmr(pool); |