summaryrefslogtreecommitdiffstats
path: root/include/rdma
diff options
context:
space:
mode:
authorIra Weiny <ira.weiny@intel.com>2016-01-22 22:04:38 +0100
committerDoug Ledford <dledford@redhat.com>2016-03-11 02:37:27 +0100
commite85ec33d820e1f3f763a46f9fd41230ca0ce40c6 (patch)
treeacde61c970cf7808caa223b6ccb58cbcb7d0056f /include/rdma
parentIB/rdmavt: Remove unused variable from Queue Pair (diff)
downloadlinux-e85ec33d820e1f3f763a46f9fd41230ca0ce40c6.tar.xz
linux-e85ec33d820e1f3f763a46f9fd41230ca0ce40c6.zip
IB/rdmavt: add modify queue pair driver helpers
Low level drivers need to be able to check incoming attributes as well as be able to adjust their private data on queue pair modification. Add 2 driver callbacks, check_modify_qp and modify_qp, to facilitate this. Signed-off-by: Ira Weiny <ira.weiny@intel.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'include/rdma')
-rw-r--r--include/rdma/rdma_vt.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/rdma/rdma_vt.h b/include/rdma/rdma_vt.h
index 04e90192a50d..e382cca3fc4f 100644
--- a/include/rdma/rdma_vt.h
+++ b/include/rdma/rdma_vt.h
@@ -256,6 +256,13 @@ struct rvt_driver_provided {
struct rvt_ah *);
int (*alloc_qpn)(struct rvt_dev_info *rdi, struct rvt_qpn_table *qpt,
enum ib_qp_type type, u8 port, gfp_t gfp);
+ /**
+ * Return 0 if modification is valid, -errno otherwise
+ */
+ int (*check_modify_qp)(struct rvt_qp *qp, struct ib_qp_attr *attr,
+ int attr_mask, struct ib_udata *udata);
+ void (*modify_qp)(struct rvt_qp *qp, struct ib_qp_attr *attr,
+ int attr_mask, struct ib_udata *udata);
};
struct rvt_dev_info {