[openib-general] new IB CM reject reason

Michael S. Tsirkin mst at mellanox.co.il
Thu Feb 1 14:43:04 PST 2007


> Quoting Sean Hefty <mshefty at ichips.intel.com>:
> Subject: Re: new IB CM reject reason
> 
> > And my claim is that you should define private data format to go with this
> > other reason otherwise you are not really solving the problem.
> 
> This is not a consumer issued reject.  It is a CM issued reject, so the private 
> data is ignored.  This is no different than several other reject reasons (like 
> invalid service ID).  At best we could define the ARI, but if we knew what the 
> contents of the ARI should be, then we should use a more specific reject reason 
> than 'other'.

I still don't really buy this, and I think you don't see my point.

The difference between ib_cm module and consumer is an artificial one -
the consumer just uses ib_cm as a convenience module. In particular, as a
feature, he gets automatic REJ generation when CM ID is destroyed.
In this case private data is all 0s.

So a custom protocol on top of ib_cm module that has its own consumer rejects for
some reason, would be wise to put something other than all 0s in its private
data if it wants to differentiate between the two kinds of consumer reject.
Most likely no one cares much about reject reasons so all this is
unnecessary.

But adding "other" reason just moves the problem up one level -
what if the actual consumer is using some library on top of CM?
Consider for example cma. It might generate rejects on its own too.
So now, there is cm, cma as a cm consumer, and the cma consumer.
So do we need yet another reject reason for cma generated rejects?

Do you see my point now?

-- 
MST




More information about the general mailing list