On Thu, Mar 25, 2010 at 08:56:23PM -0700, Sean Hefty wrote:
> >>Is there any reason the port space has to be known when the cm_id is
> >>created but before bind?
> >
> >No - but it is still required for transport neutrality.  rdma_create_id()
> >simply stores the value.
> 
> To correct this slightly, a user can call listen after calling create_id 
> without
> calling bind.  The bind is done internally to listen.
> 
> The port space really should be indicated at creation time.  If we can agree 
> on
> that, then the kernel simply needs to decide how to handle AF_IB at bind time.

I still think AF_IB should not have any port space other than
RDMA_PS_IB - since it is functionally inclusive of all the other
cases.

> These patches handle it by setting the well known portion of the SID and 
> acting
> on the other bits based on them being set.  The mask is unused.  For the
> existing port spaces, we can leave this, or require the user provide a 
> SID/mask
> that is consistent with the chosen port space.

See, to me this is very not nice. The address is specified with a
SID/mask, having the kernel ignore the mask and overwrite bits in the
SID makes no sense as an API.
 
> For RDMA_PS_IB, I think the flow that you outlined in your other email makes
> sense.  Let RDMA_PS_IB cover the entire SID range.  When the SID/mask fall 
> into
> an existing port space, it needs to reserve a port from within that port space
> to avoid collisions.

Right :) I just don't understand why you think AF_IB/RDMA_PS_TCP has
to be a supported combination.

Is there some use case you see where having RDMA_PS_TCP/UDP work with
AF_IB is an advantage?

Jason
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to