From e2b71a04e98c3186cd0d7f7b6e5b7f03c366ad2d Mon Sep 17 00:00:00 2001 From: Sean Hefty Date: Tue, 25 Sep 2012 14:55:05 -0700 Subject: [PATCH] refresh (create temporary patch) --- meta | 5 +- patches/refresh-temp | 123 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 126 insertions(+), 2 deletions(-) create mode 100644 patches/refresh-temp diff --git a/meta b/meta index 570910d..4feb284 100644 --- a/meta +++ b/meta @@ -1,9 +1,10 @@ Version: 1 -Previous: 7ff3b0c420fd7a10a1bbd6b084316193671a21fc -Head: 654a5655b2956888b4e970441802d31f0abd3c75 +Previous: ffe3240f16a535b2c1b7aef1d573f7c44b446fc7 +Head: 76891434e93215c5474125b3fcb54da140a975c4 Applied: verbs-ext: b3d744f488bc97442df7e6cef8536d3b0352a786 xrcd: 654a5655b2956888b4e970441802d31f0abd3c75 + refresh-temp: 76891434e93215c5474125b3fcb54da140a975c4 Unapplied: compat-ex: 7cb34472bd00bc286569b726c7d38c6dd0dfe3b0 srq_ex: da1d11f2b334ccc50cbdbd0ddf15ec792a9f2ee3 diff --git a/patches/refresh-temp b/patches/refresh-temp new file mode 100644 index 0000000..6511070 --- /dev/null +++ b/patches/refresh-temp @@ -0,0 +1,123 @@ +Bottom: 8aa62efc07baff100ff645a5d18640724c2338bf +Top: f67dd30619c82020cf45a3f4cd33ae7e5560bf9c +Author: Sean Hefty +Date: 2012-09-25 14:55:04 -0700 + +Refresh of xrcd + +--- + +diff --git a/include/infiniband/driver.h b/include/infiniband/driver.h +index 193b0dd..9711068 100644 +--- a/include/infiniband/driver.h ++++ b/include/infiniband/driver.h +@@ -53,6 +53,17 @@ + */ + #define IBV_DEVICE_LIBRARY_EXTENSION rdmav2 + ++enum verbs_xrcd_mask { ++ IBV_XRCD_HANDLE = 1 << 0, ++ IBV_XRCD_RESERVED = 1 << 1 ++}; ++ ++struct verbs_xrcd { ++ struct ibv_xrcd xrcd; ++ uint64_t comp_mask; ++ uint32_t handle; ++}; ++ + typedef struct ibv_device *(*ibv_driver_init_func)(const char *uverbs_sys_path, + int abi_version); + +@@ -76,11 +87,11 @@ int ibv_cmd_alloc_pd(struct ibv_context *context, struct ibv_pd *pd, + struct ibv_alloc_pd *cmd, size_t cmd_size, + struct ibv_alloc_pd_resp *resp, size_t resp_size); + int ibv_cmd_dealloc_pd(struct ibv_pd *pd); +-int ibv_cmd_open_xrcd(struct ibv_context *context, struct ibv_xrcd *xrcd, ++int ibv_cmd_open_xrcd(struct verbs_context *context, struct verbs_xrcd *xrcd, + int fd, int oflags, + struct ibv_open_xrcd *cmd, size_t cmd_size, + struct ibv_open_xrcd_resp *resp, size_t resp_size); +-int ibv_cmd_close_xrcd(struct ibv_xrcd *xrcd); ++int ibv_cmd_close_xrcd(struct verbs_xrcd *xrcd); + #define IBV_CMD_REG_MR_HAS_RESP_PARAMS + int ibv_cmd_reg_mr(struct ibv_pd *pd, void *addr, size_t length, + uint64_t hca_va, int access, +diff --git a/include/infiniband/verbs.h b/include/infiniband/verbs.h +index 913ee63..95e93c1 100644 +--- a/include/infiniband/verbs.h ++++ b/include/infiniband/verbs.h +@@ -312,16 +312,8 @@ struct ibv_pd { + uint32_t handle; + }; + +-enum ibv_xrcd_mask { +- IBV_XRCD_CONTEXT = 1 << 0, +- IBV_XRCD_HANDLE = 1 << 1, +- IBV_XRCD_RESERVED = 1 << 2 +-}; +- + struct ibv_xrcd { +- uint64_t comp_mask; + struct ibv_context *context; +- uint32_t handle; + }; + + enum ibv_rereg_mr_flags { +@@ -744,9 +736,9 @@ struct verbs_context { + int (*drv_new_func1) (); new corresponding provider call of func1 + int (*lib_new_func1) (); New library call func1 + */ +- struct ibv_xrcd * (*open_xrcd)(struct ibv_context *context, ++ struct verbs_xrcd * (*open_xrcd)(struct verbs_context *context, + int fd, int oflags); +- int (*close_xrcd)(struct ibv_xrcd *xrcd); ++ int (*close_xrcd)(struct verbs_xrcd *xrcd); + size_t sz; /* Set by library on struct allocation,must be + * located right before struct ibv_context + */ +diff --git a/src/cmd.c b/src/cmd.c +index 4a98c64..ae8a239 100644 +--- a/src/cmd.c ++++ b/src/cmd.c +@@ -194,7 +194,7 @@ int ibv_cmd_dealloc_pd(struct ibv_pd *pd) + return 0; + } + +-int ibv_cmd_open_xrcd(struct ibv_context *context, struct ibv_xrcd *xrcd, ++int ibv_cmd_open_xrcd(struct verbs_context *context, struct verbs_xrcd *xrcd, + int fd, int oflags, + struct ibv_open_xrcd *cmd, size_t cmd_size, + struct ibv_open_xrcd_resp *resp, size_t resp_size) +@@ -203,26 +203,26 @@ int ibv_cmd_open_xrcd(struct ibv_context *context, struct ibv_xrcd *xrcd, + + cmd->fd = fd; + cmd->oflags = oflags; +- if (write(context->cmd_fd, cmd, cmd_size) != cmd_size) ++ if (write(context->context.cmd_fd, cmd, cmd_size) != cmd_size) + return errno; + + VALGRIND_MAKE_MEM_DEFINED(resp, resp_size); + +- xrcd->comp_mask = IBV_XRCD_CONTEXT | IBV_XRCD_HANDLE; +- xrcd->context = context; ++ xrcd->xrcd.context = context; ++ xrcd->comp_mask = IBV_XRCD_HANDLE; + xrcd->handle = resp->xrcd_handle; + + return 0; + } + +-int ibv_cmd_close_xrcd(struct ibv_xrcd *xrcd) ++int ibv_cmd_close_xrcd(struct verbs_xrcd *xrcd) + { + struct ibv_close_xrcd cmd; + + IBV_INIT_CMD(&cmd, sizeof cmd, CLOSE_XRCD); + cmd.xrcd_handle = xrcd->handle; + +- if (write(xrcd->context->cmd_fd, &cmd, sizeof cmd) != sizeof cmd) ++ if (write(xrcd->xrcd.context->cmd_fd, &cmd, sizeof cmd) != sizeof cmd) + return errno; + + return 0; -- 2.41.0