mlx4: fix QP tree trashing
authorEugenia Emantayev <eugenia@mellanox.co.il>
Tue, 14 Feb 2012 06:37:22 +0000 (06:37 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 14 Feb 2012 19:11:58 +0000 (14:11 -0500)
When adding new unicast steer entry, before moving qp to state ready,
actually before calling mlx4_RST2INIT_QP_wrapper(), there were added
a lot of entries with local_qpn=0 into radix tree.
This fact impacted the get_res() function and proper functioning
of resource tracker in addition to adding trash entries into radix tree.

Signed-off-by: Eugenia Emantayev <eugenia@mellanox.co.il>
Reviewed-by: Yevgeny Petrilin <yevgenyp@melllanox.co.il>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlx4/resource_tracker.c

index 1420dbc947c227115ec3b9d4ecaf5f8c9edf9ae8..629cc30187463a129c5546fec6a58c5482922e3a 100644 (file)
@@ -374,6 +374,7 @@ static struct res_common *alloc_qp_tr(int id)
 
        ret->com.res_id = id;
        ret->com.state = RES_QP_RESERVED;
+       ret->local_qpn = id;
        INIT_LIST_HEAD(&ret->mcg_list);
        spin_lock_init(&ret->mcg_spl);