Sean, many thanks for your reply. I currently have my application up and running using a single QP on each of two hosts. What I want to do now is to establish a second connection using a second QP on each host but let both QPs access the same memory region.
The above is just a toy example. In the end I want to connect my host to a couple of other hosts each with its own QP and have them all access 1 MR on the first host (star-topology). For that I need the MR to be accessible by all the remote QPs and therefore they all need to be in the same shared PD on the first host. I have tried Variant A but when I send from the MR which was registered by QP1 using QP2, I get an async event saying 'Local Work Queue Error' and the connection gets terminated. This is even though, QP1 and QP2 are in the same PD on the local host. Is there anything else I need to share between them or is there a fundamental misunderstanding on my side? Best regards, Philip "Sean Hefty" <[email protected]> wrote on 01/12/2009 06:27:30 PM: > [image removed] > > RE: [ofa-general] Shared Protection Domain for iWARP > > Sean Hefty > > to: > > 'Philip Frey1', general > > 01/12/2009 06:27 PM > > >QP1: > >---- > >1. rdma_create_event_channel() > >2. rdma_create_id(event_channel, cm_id_1, ...) > >3. rdma_resolve_addr(cm_id_1, ...) > >4. rdma_resolve_route(cm_id_1, ...) > >5. pd_1 = ibv_alloc_pd(cm_id_1->verbs) > >6. ibv_create_comp_channel(cm_id_1->verbs) > >7. ibv_create_cq(cm_id_1->verbs, ..., comp_channel, ...) > >8. rdma_create_qp(cm_id_1, pd_1, init_attrs) > > Do you plan on connecting the QPs together? If so, you'll need rdma_connect() > here. > > >QP2: (Variant A) > >---- > >2. rdma_create_id(event_channel, cm_id_2, ...) > >3. rdma_resolve_addr(cm_id_2, ...) > >4. rdma_resolve_route(cm_id_2, ...) > > > >6. ibv_create_comp_channel(cm_id_2->verbs) > >7. ibv_create_cq(cm_id_2->verbs, ..., comp_channel, ...) > >8. rdma_create_qp(cm_id_2, pd_1, init_attrs) > > > >---- > >QP2: (Variant B) > >---- > >6. ibv_create_comp_channel(cm_id_1->verbs) > >7. ibv_create_cq(cm_id_1->verbs, ..., comp_channel, ...) > >8. rdma_create_qp(cm_id_1, pd_1, init_attrs) > > I don't know if iWarp supports peer to peer connections. If not, then you'll > need to change one of the sides to act as the passive (server) side for the > connection. See the rdma_cm.7 man page for a flow outline. > > - Sean >
_______________________________________________ general mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
