static int ne_open(const char *path, struct fuse_file_info *fi) { static ne_open_res res; ne_open_arg arg; int stat; memset((char *)&res, 0, sizeof(res)); arg.path = strdup(path); arg.flags = fi->flags; stat = cm_open(arg, &res, master); //TODO: //staterr&xdrfree return 0; }
/* * Open a RDMA device. */ int rd_open(DEVICE *dev, int trans, int max_send_wr, int max_recv_wr) { #if 0 /* Send request to client */ if (is_client()) client_send_request(); #endif /* Clear structure */ memset(dev, 0, sizeof(*dev)); /* Set transport type and maximum work request parameters */ #if 0 dev->trans = trans; #endif dev->max_send_wr = max_send_wr; dev->max_recv_wr = max_recv_wr; /* Open device */ #if 0 if (Req.use_cm) cm_open(dev); else #endif int r = ib_open(dev); if (r != 0) { return r; } /* Request CQ notification if not polling */ if (!Req.poll_mode) { if (ibv_req_notify_cq(dev->cq, 0) != 0) return error(SYS, "failed to request CQ notification"); } return r; }