diff mbox

[opensm] osm_drop_mgr.c: fix timeouts on Get Pkey from ext switch ports

Message ID 527A80D7.8070706@dev.mellanox.co.il (mailing list archive)
State Accepted
Delegated to: Hal Rosenstock
Headers show

Commit Message

Hal Rosenstock Nov. 6, 2013, 5:48 p.m. UTC
From: Alex Netes <alexne@mellanox.com>

In case SM doesn't recieve PkeyTable GetResp from external switch ports,
it should clear the PkeyTable GetResp counter and set physp->need_update
= 2, in order to resend PkeyTable Get on the next sweep.

Signed-off-by: Alex Netes <alexne@mellanox.com>
Signed-off-by: Hal Rosenstock <hal@mellanox.com>
---
 opensm/osm_drop_mgr.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
diff mbox

Patch

diff --git a/opensm/osm_drop_mgr.c b/opensm/osm_drop_mgr.c
index 7e7c7f6..cb685cb 100644
--- a/opensm/osm_drop_mgr.c
+++ b/opensm/osm_drop_mgr.c
@@ -582,6 +582,8 @@  void osm_drop_mgr_process(osm_sm_t * sm)
 				p_physp = osm_node_get_physp_ptr(p_node, port_num);
 				if (!p_physp || p_physp->pkeys.rcv_blocks_cnt == 0)
 					continue;
+				p_physp->pkeys.rcv_blocks_cnt = 0;
+				p_physp->need_update = 2;
 				sm->p_subn->subnet_initialization_error = TRUE;
 				port_guid = osm_physp_get_port_guid(p_physp);
 				p_port = osm_get_port_by_guid(sm->p_subn, port_guid);