aboutsummaryrefslogtreecommitdiffstats
path: root/net/rds/iw_rdma.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/rds/iw_rdma.c')
-rw-r--r--net/rds/iw_rdma.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/net/rds/iw_rdma.c b/net/rds/iw_rdma.c
index de4a1b16bf7b..13dc1862d862 100644
--- a/net/rds/iw_rdma.c
+++ b/net/rds/iw_rdma.c
@@ -31,6 +31,7 @@
31 * 31 *
32 */ 32 */
33#include <linux/kernel.h> 33#include <linux/kernel.h>
34#include <linux/slab.h>
34 35
35#include "rds.h" 36#include "rds.h"
36#include "rdma.h" 37#include "rdma.h"
@@ -245,11 +246,8 @@ void __rds_iw_destroy_conns(struct list_head *list, spinlock_t *list_lock)
245 INIT_LIST_HEAD(list); 246 INIT_LIST_HEAD(list);
246 spin_unlock_irq(list_lock); 247 spin_unlock_irq(list_lock);
247 248
248 list_for_each_entry_safe(ic, _ic, &tmp_list, iw_node) { 249 list_for_each_entry_safe(ic, _ic, &tmp_list, iw_node)
249 if (ic->conn->c_passive)
250 rds_conn_destroy(ic->conn->c_passive);
251 rds_conn_destroy(ic->conn); 250 rds_conn_destroy(ic->conn);
252 }
253} 251}
254 252
255static void rds_iw_set_scatterlist(struct rds_iw_scatterlist *sg, 253static void rds_iw_set_scatterlist(struct rds_iw_scatterlist *sg,
@@ -576,8 +574,8 @@ void rds_iw_free_mr(void *trans_private, int invalidate)
576 rds_iw_free_fastreg(pool, ibmr); 574 rds_iw_free_fastreg(pool, ibmr);
577 575
578 /* If we've pinned too many pages, request a flush */ 576 /* If we've pinned too many pages, request a flush */
579 if (atomic_read(&pool->free_pinned) >= pool->max_free_pinned 577 if (atomic_read(&pool->free_pinned) >= pool->max_free_pinned ||
580 || atomic_read(&pool->dirty_count) >= pool->max_items / 10) 578 atomic_read(&pool->dirty_count) >= pool->max_items / 10)
581 queue_work(rds_wq, &pool->flush_worker); 579 queue_work(rds_wq, &pool->flush_worker);
582 580
583 if (invalidate) { 581 if (invalidate) {