[openib-general] [PATCH] opensm: rwlock double-release fix.

Sasha Khapyorsky sashak at voltaire.com
Sun Dec 24 09:03:29 PST 2006


When the port is removed from subnet, but previously requested pkey
table block is received after this - the lock will be released twice.
This leads to deadlocks later when other MAD processor will try to
acquire the same lock.

Signed-off-by: Sasha Khapyorsky <sashak at voltaire.com>
---
 osm/opensm/osm_pkey_rcv.c |    2 --
 1 files changed, 0 insertions(+), 2 deletions(-)

diff --git a/osm/opensm/osm_pkey_rcv.c b/osm/opensm/osm_pkey_rcv.c
index 3fc7673..3c18fcd 100644
--- a/osm/opensm/osm_pkey_rcv.c
+++ b/osm/opensm/osm_pkey_rcv.c
@@ -146,7 +146,6 @@ osm_pkey_rcv_process(
 
   if( p_port == (osm_port_t*)cl_qmap_end( p_guid_tbl) )
   {
-    cl_plock_release( p_rcv->p_lock );
     osm_log( p_rcv->p_log, OSM_LOG_ERROR,
              "osm_pkey_rcv_process: ERR 4806: "
              "No port object for port with GUID 0x%" PRIx64
@@ -219,4 +218,3 @@ osm_pkey_rcv_process(
 
   OSM_LOG_EXIT( p_rcv->p_log );
 }
-
-- 
1.4.4.2.gfc82d





More information about the general mailing list