On Mon, 26 Sep 2005, Sean Hefty wrote:
> James Lentini wrote: > > Why would this module be a ULP and not part of the core? Especially since > > the rdma_cma.h include file is intended for the core include area, > > include/rdma. > > It can be a separately loaded module, so a ULP from the viewpoint of > verbs, SA query, IB CM, etc. The distinction between a core component and a ULP is still fuzzy. The core is comprised of seperately loaded modules (e.g. ib_core, ib_sa, ib_mad, ib_ping, ib_cm, etc.). > > I expect that the IB_CM_REQ_RECEIVED callback will be confusing to > > ULPs. The ULP will receive a new cma_id with an old context value. > > If the ULP wanted to make an adjustments to the cma_id that > > received the request, it would need to store a reference to it in > > the old cma_id's context value. I suggest you make the new cma_id > > part of the event data (see patch below). > > The new cma_id must be used after the REQ is received, so I wanted to make > that clear. There's not much that a user can do with the listening cma_id > from within the callback; since it cannot be destroyed from the callback > itself. This is a fairly minor issue that we can discuss more. Fair enough. A comment that says the callback context is not strictly tied to the cma_id would help here. > > How will the IP address and port number in the connection request be > > delivered to the ULP? > > The cma_id contains the source and destination address. See cma_req_recv(). > This was added in after the initial posting of the code. Thanks. I see it now. > > Would the design be cleaner if instead of sprinkling the code with "switch > > (cma_id->device->node_type)" statements, we used function pointers? > > I wasn't sure what the iWarp portion of the code would look like, but I wanted > to leave place for an iWarp implementation to be easily inserted. It seems > that it would take a fair deal of additional code to use function pointers. I see what you mean. Without knowing the function for the iWARP calls, it isn't possible to know what each funtion pointer's signature should be. james _______________________________________________ openib-general mailing list [email protected] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
