getpid(), (rval >> 0) & 0xff, (rval >> 8) & 0xff,
(rval >> 16) & 0xff, (rval >> 24) & 0xff, conn_id);
- remote_addr = (DAT_IA_ADDRESS_PTR)&target->ai_addr; /* IP */
+ remote_addr = (DAT_IA_ADDRESS_PTR)target->ai_addr; /* IP */
no_resolution:
for (i = 0; i < 48; i++) /* simple pattern in private data */
pdata[i] = i + 1;
DAT_EVENT event;
DAT_COUNT nmore;
DAT_RETURN status;
- int pdata;
+ int pdata, exp_event;
DAT_IB_EXTENSION_EVENT_DATA *ext_event = (DAT_IB_EXTENSION_EVENT_DATA *)
& event.event_extension_data[0];
DAT_CONNECTION_EVENT_DATA *conn_event =
event.event_number, conn_event->private_data,
conn_event->private_data_size);
+ if (ud_test)
+ exp_event = DAT_IB_UD_CONNECTION_EVENT_ESTABLISHED;
+ else
+ exp_event = DAT_CONNECTION_EVENT_ESTABLISHED;
+
/* Waiting on CR's or CONN_EST */
- if (event.event_number != DAT_CONNECTION_EVENT_ESTABLISHED ||
+ if (event.event_number != exp_event ||
(ud_test && event.event_number !=
- DAT_IB_UD_CONNECTION_EVENT_ESTABLISHED)) {
+ DAT_IB_UD_CONNECTION_EVENT_ESTABLISHED)) {
printf("unexpected event, !conn established: 0x%x\n",
- event.event_number);
+ event.event_number);
exit(1);
}
if (local.ib.qp_type == IBV_QPT_UD) {
ucm = 1;
+
+ if (ud_test) {
+ printf("%d UD test over UCM provider not supported\n",
+ getpid());
+ exit(1);
+ }
+
printf("%d Local uCM Address = QPN=0x%x, LID=0x%x\n",
getpid(), ntohl(local.ib.qpn),
ntohs(local.ib.lid));
strcpy((char *)buf[SND_RDMA_BUF_INDEX], "Client written data");
- remote_addr = (DAT_IA_ADDRESS_PTR)&target->ai_addr; /* IP */
+ remote_addr = (DAT_IA_ADDRESS_PTR)target->ai_addr; /* IP */
no_resolution:
/* one Client EP, multiple Server EPs, same conn_qual