[ofa-general] rdma_resolve_route() returning -EINVAL
Roland Dreier
rdreier at cisco.com
Thu Oct 2 18:24:50 PDT 2008
> Ok,. I guess that's not obvious from the name, but in particular if it's
> so important, then why doesn't anyone implement it? It happens pretty
> much iimmediately on my IB adapter QPs, under what conditions would
> it be delayed? And since rdma_destroy_qp() is void, how would I know
> if I call it too early?
The timewait state is just long enough for any packets to drain out of
the IB fabric -- the IB spec CM chapter has the exact formula, but it's
going to be very short.
You're allowed to destroy a QP earlier, but you have a remote chance of
getting into trouble if you reuse the same QP number before any stale
packets have drained from the fabric.
The issue is more of spec compliance than a likely real-life
scenario... and as for why no one else is worrying about it, I think
it's because the only other user of rdma_connect() in the tree is iSER,
and I guess no one worried too much there. SRP uses the IB CM directly,
and waits for timewait exit before calling a connection closed.
- R.
More information about the general
mailing list