On Monday 27 February 2006 16:01, Michael S. Tsirkin wrote: > I think the problem with this specific patch was that ib_find_send_mad > ignores the remote address (and method?) when doing lookup, > so its wrong to use it to check that the transaction is in progress. > This shouldnt be hard to fix, though, should it? ib_find_send_mad is also used on the qp receive side for matching arriving packets ( RMPP ACK/NACK) to waiting sessions (the RMPP responder session).
using ib_find_send_mad on the send side is no worse than using it on the response side. The fix I submitted checks for RMPP sessions ONLY. If there is a duplicate session problem (same TID, from different GIDs), that problem will still exist even with the submitted patch when ACK/NACKs arrive -- since matching of incoming packets to MAD sends waiting for responses is currently done by TID alone. This is a separate fix. i.e., there are 2 separate problems. 1. RMPP duplicate sessions with same host -- due to dropped segments and requester retries. 2. separate RMPP sessions, where TIDs are identical, but GIDs are different. The included patch fixes the first. > > We should just check the packet method, and compare source/destination GIDs > as appropriate. The remote GID can be got from ib_query_ah. Right? _______________________________________________ openib-general mailing list [email protected] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
