예제 #1
0
파일: nefs.c 프로젝트: prtitrz/Nefs
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;
}
예제 #2
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;
}