[ipoib] Don't put multicast entries in the dlid lists.
authortzachid <tzachid@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Sun, 16 Nov 2008 13:36:32 +0000 (13:36 +0000)
committertzachid <tzachid@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Sun, 16 Nov 2008 13:36:32 +0000 (13:36 +0000)
git-svn-id: svn://openib.tc.cornell.edu/gen1/trunk@1765 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

ulp/ipoib/kernel/ipoib_endpoint.c
ulp/ipoib/kernel/ipoib_port.c

index 009e34f..53903a0 100644 (file)
@@ -183,7 +183,7 @@ ipoib_endpt_set_mcast(
                return status;\r
        }\r
        p_endpt->h_mcast = p_mcast_rec->h_mcast;\r
-       p_endpt->dlid = p_mcast_rec->p_member_rec->mlid;\r
+       CL_ASSERT(p_endpt->dlid == 0);\r
 \r
        IPOIB_EXIT( IPOIB_DBG_ENDPT );\r
        return IB_SUCCESS;\r
index 9761301..21031b1 100644 (file)
@@ -5066,7 +5066,7 @@ __endpt_mgr_add_bcast(
 \r
        /* Allocate the broadcast endpoint. */\r
        p_endpt = ipoib_endpt_create( &p_mcast_rec->p_member_rec->mgid,\r
-               p_mcast_rec->p_member_rec->mlid, CL_HTON32(0x00FFFFFF) );\r
+               , CL_HTON32(0x00FFFFFF) );\r
        if( !p_endpt )\r
        {\r
                IPOIB_PRINT_EXIT( TRACE_LEVEL_ERROR, IPOIB_DBG_ERROR,\r
@@ -6064,7 +6064,6 @@ __mcast_cb(
        ib_api_status_t         status;\r
        ipoib_port_t            *p_port;\r
        cl_fmap_item_t          *p_item;\r
-       cl_map_item_t           *p_qitem;\r
        ipoib_endpt_t           *p_endpt;\r
 \r
        IPOIB_ENTER( IPOIB_DBG_MCAST );\r
@@ -6146,22 +6145,9 @@ __mcast_cb(
 \r
        /*\r
         * The endpoint is already in the GID and MAC maps.\r
-        * Add it to the LID map if it has local scope.\r
+        * mast endpoint are not used in the LID map.\r
         */\r
-       if( p_endpt->dlid )\r
-       {\r
-               while( p_port->endpt_rdr )\r
-                       ;\r
-    \r
-               p_qitem = cl_qmap_insert(\r
-                       &p_port->endpt_mgr.lid_endpts, p_endpt->dlid, &p_endpt->lid_item );\r
-               CL_ASSERT( p_qitem == &p_endpt->lid_item );\r
-               if (p_qitem != &p_endpt->lid_item) {\r
-                       // Since we failed to insert into the list, make sure it is not removed\r
-                       p_endpt->dlid =0;\r
-               }\r
-               \r
-       }\r
+       CL_ASSERT(p_endpt->dlid == 0);\r
        /* set flag that endpoint is use */\r
        p_endpt->is_in_use = TRUE;\r
        cl_obj_unlock( &p_port->obj );\r