Hello Elmer, sorry, I won't be able to test this today.
The source I have looks slightly different, see yourself at: http://lxr.linux.no/linux+v2.6.24/net/tipc/port.c#L910 Maybe interesting to note: in reply to the TIPC_CONN_MSG the tipc_conn_shutdown_event callback is called! So maybe this is the main issue here... Your examples call the tipc_conn_msg_event instead. Anyway, this is linux mainline 2.6.24, Andrew or Linus should pick a bug-fix without too much hassle. Best regards, Erich On Montag 25 Februar 2008, Horvath, Elmer wrote: > Hi, > > Yes, this is possible that the code is suffering from the native API > issue. I don't have a copy of the 1.6.2 code installed, so... > > Erich, if TIPC 1.6.2 has the following code in > port.c:port_dispatcher_sigh() > case TIPC_CONN_MSG:{ > tipc_conn_msg_event cb = > up_ptr->conn_msg_cb; > u32 peer_port = port_peerport(p_ptr); > u32 peer_node = port_peernode(p_ptr); > > spin_unlock_bh(p_ptr->publ.lock); > if (unlikely(!connected)) { > if (unlikely(published)) > goto reject; > tipc_connect2port(dref,&orig); > } > if (unlikely(msg_origport(msg) != > peer_port)) > goto reject; > if (unlikely(msg_orignode(msg) != > peer_node)) > goto reject; > > Then you have the problem that was found trying to establish a > connection with the Native API. You would be best off upgrading to TIPC > 1.7.5. A very quick *TEST* would be to change the checks to what is > below; if it allows the connection to be established with the topology > server, then upgrade to TIPC 1.7.5 (don't just apply this change since > there are a number of other changes required for a real fix). > > case TIPC_CONN_MSG:{ > tipc_conn_msg_event cb = > up_ptr->conn_msg_cb; > u32 peer_port = port_peerport(p_ptr); > u32 peer_node = port_peernode(p_ptr); > > spin_unlock_bh(p_ptr->publ.lock); > if (unlikely(!connected)) { > if (tipc_connect2port(dref, > &orig)) > goto reject; > } else if (unlikely( > (msg_origport(msg) != > peer_port) || > (msg_orignode(msg) != > peer_node))) > goto reject; > > Elmer ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ tipc-discussion mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/tipc-discussion
