i40iw: Improve CM node lookup time on connection setup
Currently all CM nodes involved in a connection are maintained in a connected_node list per dev. During connection setup, we need to search this every time we receive a packet on the iWARP LAN Queue (ILQ) and this can be pretty inefficient for large number of connections. Fix this by organizing the CM nodes in two lists - accelerated list and non-accelerated list. The search on ILQ receive would be limited to only non accelerated nodes. When a node moves to RTS, it is added to the accelerated list. Benchmarking ucmatose 16k connections shows a 20% improvement in test completion time. Signed-off-by: Shiraz Saleem <shiraz.saleem@intel.com> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
This commit is contained in:

committed by
Jason Gunthorpe

父節點
6b0c549fc6
當前提交
7de8b3576a
@@ -564,7 +564,8 @@ struct i40iw_cm_node *i40iw_find_node(struct i40iw_cm_core *cm_core,
|
||||
u32 *rem_addr,
|
||||
u16 loc_port,
|
||||
u32 *loc_addr,
|
||||
bool add_refcnt);
|
||||
bool add_refcnt,
|
||||
bool accelerated_list);
|
||||
|
||||
enum i40iw_status_code i40iw_hw_flush_wqes(struct i40iw_device *iwdev,
|
||||
struct i40iw_sc_qp *qp,
|
||||
|
Reference in New Issue
Block a user