[openib-general] RDMA connection and address translation API
James Lentini
jlentini at netapp.com
Thu Aug 25 10:17:34 PDT 2005
On Wed, 24 Aug 2005, Sean Hefty wrote:
> >With this in mind, I believe that the connection API needs to be
> >something more like the following:
> >
> > rdma_resolve_address():
> > inputs: dest IP address, qos, npaths,
> > done callback, opaque context
> > done callback params: status, local RDMA device,
> > RDMA transport address, context
> ...
> > rdma_connect():
> > inputs: local QP, RDMA transport address, destination service,
> > private data, timeout, event callback, opaque context
>
> Have we agreed that this is the functionality that we should be
> aiming towards?
I think so, but as you pointed out the local QP must be in the init
state.
>
> > rdma_resolve_address(...);
> > /* wait for resolution */
> > ib_create_qp(...) /* use device pointer we got from rdma_resolve_address()
> >*/
>
> We need to insert in here:
>
> ib_modify_qp(...); /* somehow uses address resolution... */
> ib_post_recvs(...);
>
or add a new call to create the qp and modify it to init (an analog to
the socket(2) function).
> > rdma_connect(...); /* pass transport address we got from
> >rdma_resolve_address() */
> > /* wait for connection to finish... */
>
> Another possibility could be to add a list of receives to
> rdma_connect().
The caller might also want to setup memory windows. Requiring the qp
to be in the init state before calling connect seems cleaner to me.
>
> - Sean
>
>
> _______________________________________________
> openib-general mailing list
> openib-general at openib.org
> http://openib.org/mailman/listinfo/openib-general
>
> To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
>
More information about the general
mailing list