set IS_SM in local capability mask

Set IS_SM in local portinfo capability mask when
setting it on the SMA.
This fixes a problem of SM that enters to standby and has
mismatch between local capability (IS_SM off) and the SMA.

Signed-off-by: Eli Dorfman <[email protected]>
---
 opensm/opensm/osm_port_info_rcv.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/opensm/opensm/osm_port_info_rcv.c 
b/opensm/opensm/osm_port_info_rcv.c
index 02ad586..d55aef3 100644
--- a/opensm/opensm/osm_port_info_rcv.c
+++ b/opensm/opensm/osm_port_info_rcv.c
@@ -143,11 +143,13 @@ __osm_pi_rcv_process_endport(IN osm_sm_t * sm,
                /*
                   We received the PortInfo for our own port.
                 */
-               if (!(p_pi->capability_mask & IB_PORT_CAP_IS_SM))
+               if (!(p_pi->capability_mask & IB_PORT_CAP_IS_SM)) {
+                       p_physp->port_info.capability_mask |= IB_PORT_CAP_IS_SM;
                        /*
                           Set the IS_SM bit to indicate our port hosts an SM.
                         */
                        __osm_pi_rcv_set_sm(sm, p_physp);
+               }
        } else {
                p_sm_tbl = &sm->p_subn->sm_guid_tbl;
                if (p_pi->capability_mask & IB_PORT_CAP_IS_SM) {
-- 
1.5.5

_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

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

Reply via email to