Skip to content

Commit 78842f0

Browse files
aru kolappanSomasundaram Krishnasamy
authored andcommitted
rds: Avoid flushing MRs in rds_rdma_drop_keys
When an rds socket is released, it calls rds_rdma_drop_keys() to release all the associated MRs. This function calls MR flush function which flushes MR pools of all IB devices. When the application releases multiple rds sockets at the same time, processes get stuck in 'D' state and causes application time outs. This fix removes calling flush_mrs() from rds_rdma_drop_keys(). The alloc_mr takes care of flushing when no MR is available. Orabug: 30903882 Signed-off-by: aru kolappan <[email protected]> Reviewed-by: Ka-Cheong Poon <[email protected]> Signed-off-by: Somasundaram Krishnasamy <[email protected]>
1 parent 7455e76 commit 78842f0

File tree

1 file changed

+0
-3
lines changed

1 file changed

+0
-3
lines changed

net/rds/rdma.c

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -150,9 +150,6 @@ void rds_rdma_drop_keys(struct rds_sock *rs)
150150
spin_lock_irqsave(&rs->rs_rdma_lock, flags);
151151
}
152152
spin_unlock_irqrestore(&rs->rs_rdma_lock, flags);
153-
154-
if (rs->rs_transport && rs->rs_transport->flush_mrs)
155-
rs->rs_transport->flush_mrs();
156153
}
157154
EXPORT_SYMBOL_GPL(rds_rdma_drop_keys);
158155

0 commit comments

Comments
 (0)