In case when switch is member of MC group mcast working object must be
freed after routing was set.

Signed-off-by: Sasha Khapyorsky <[EMAIL PROTECTED]>
---
 opensm/opensm/osm_mcast_mgr.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/opensm/opensm/osm_mcast_mgr.c b/opensm/opensm/osm_mcast_mgr.c
index c4cd632..c9fed40 100644
--- a/opensm/opensm/osm_mcast_mgr.c
+++ b/opensm/opensm/osm_mcast_mgr.c
@@ -671,11 +671,17 @@ static osm_mtree_node_t *__osm_mcast_mgr_branch(osm_sm_t 
* sm,
                   table for this switch.
                 */
                osm_mcast_tbl_set(p_tbl, mlid_ho, i);
-               if (i == 0)
+               if (i == 0) {
                        /* This means we are adding the switch to the MC group.
                           We do not need to continue looking at the remote 
port, just
                           needed to add the port to the table */
+                       CL_ASSERT(count == 1);
+
+                       p_wobj = (osm_mcast_work_obj_t *)
+                           cl_qlist_remove_head(p_port_list);
+                       __osm_mcast_work_obj_delete(p_wobj);
                        continue;
+               }
 
                p_node = p_sw->p_node;
                p_remote_node = osm_node_get_remote_node(p_node, i, NULL);
-- 
1.6.0.2.287.g3791f

_______________________________________________
general mailing list
general@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to