static int
srpc_post_active_rdma(int portal, __u64 matchbits, void *buf, int len,
- int options, struct lnet_process_id peer,
- lnet_nid_t self, struct lnet_handle_md *mdh,
+ int options, struct lnet_process_id peer4,
+ lnet_nid_t self4, struct lnet_handle_md *mdh,
struct srpc_event *ev)
{
int rc;
struct lnet_md md;
+ struct lnet_nid self;
+ struct lnet_processid peer;
+
+ lnet_nid4_to_nid(self4, &self);
+ lnet_pid4_to_pid(peer4, &peer);
md.user_ptr = ev;
md.start = buf;
* buffers...
*/
if ((options & LNET_MD_OP_PUT) != 0) {
- rc = LNetPut(self, *mdh, LNET_NOACK_REQ, peer,
+ rc = LNetPut(&self, *mdh, LNET_NOACK_REQ, &peer,
portal, matchbits, 0, 0);
} else {
LASSERT((options & LNET_MD_OP_GET) != 0);
- rc = LNetGet(self, *mdh, peer, portal, matchbits, 0, false);
+ rc = LNetGet(self4, *mdh, peer4, portal, matchbits, 0, false);
}
if (rc != 0) {
CERROR("LNet%s(%s, %d, %lld) failed: %d\n",
((options & LNET_MD_OP_PUT) != 0) ? "Put" : "Get",
- libcfs_id2str(peer), portal, matchbits, rc);
+ libcfs_id2str(peer4), portal, matchbits, rc);
/* The forthcoming unlink event will complete this operation
* with failure, so fall through and return success here.
} else {
CDEBUG(D_NET,
"Posted active RDMA: peer %s, portal %u, matchbits %#llx\n",
- libcfs_id2str(peer), portal, matchbits);
+ libcfs_id2str(peer4), portal, matchbits);
}
return 0;
}