]> git.openfabrics.org - ~shefty/libibverbs.git/commitdiff
Refresh of xrcd
authorSean Hefty <sean.hefty@intel.com>
Mon, 17 Sep 2012 19:25:43 +0000 (12:25 -0700)
committerSean Hefty <sean.hefty@intel.com>
Mon, 17 Sep 2012 19:25:43 +0000 (12:25 -0700)
src/verbs.c

index 67789f1f7c8af616a8d415941c2e10d7edfa17bc..a539adb2099ca4a85d4ece58873cb0f0501d0fa4 100644 (file)
@@ -156,14 +156,15 @@ default_symver(__ibv_dealloc_pd, ibv_dealloc_pd);
 
 struct ibv_xrcd *__ibv_open_xrcd(struct ibv_context *context, int fd, int oflags)
 {
-       struct ibv_xrc_ops *ops;
+       struct verbs_context *context_ex = verbs_get_ctx(context);
        struct ibv_xrcd *xrcd;
 
-       ops = ibv_get_ext_ops(context, IBV_XRC_OPS);
-       if (!ops || !ops->open_xrcd)
+       if (!context_ex->open_xrcd) {
+               errno = ENOSYS;
                return NULL;
+       }
 
-       xrcd = ops->open_xrcd(context, fd, oflags);
+       xrcd = context_ex->open_xrcd(context, fd, oflags);
        if (xrcd)
                xrcd->context = context;
 
@@ -173,10 +174,9 @@ default_symver(__ibv_open_xrcd, ibv_open_xrcd);
 
 int __ibv_close_xrcd(struct ibv_xrcd *xrcd)
 {
-       struct ibv_xrc_ops *ops;
+       struct verbs_context *context_ex = verbs_get_ctx(context);
 
-       ops = ibv_get_ext_ops(xrcd->context, IBV_XRC_OPS);
-       return ops->close_xrcd(xrcd);
+       return context_ex->close_xrcd(xrcd);
 }
 default_symver(__ibv_close_xrcd, ibv_close_xrcd);