diff options
author | Ira Weiny <ira.weiny@intel.com> | 2014-08-08 19:00:56 -0400 |
---|---|---|
committer | Roland Dreier <roland@purestorage.com> | 2014-08-10 23:36:00 -0400 |
commit | 1471cb6ca67990a306500e69e52ffb28c93ccbbc (patch) | |
tree | 6d9dba8e122759ff4a193487aae516a300e563f1 /include/rdma/ib_mad.h | |
parent | 0f29b46d49b0ca50536632c6a33986c3171f5ea1 (diff) |
IB/mad: Add user space RMPP support
Using the new registration mechanism, define a flag that indicates the
user wishes to process RMPP messages in user space rather than have
the kernel process them.
Signed-off-by: Ira Weiny <ira.weiny@intel.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'include/rdma/ib_mad.h')
-rw-r--r-- | include/rdma/ib_mad.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/include/rdma/ib_mad.h b/include/rdma/ib_mad.h index 876f497f8b0c..9bb99e983f58 100644 --- a/include/rdma/ib_mad.h +++ b/include/rdma/ib_mad.h | |||
@@ -40,6 +40,7 @@ | |||
40 | #include <linux/list.h> | 40 | #include <linux/list.h> |
41 | 41 | ||
42 | #include <rdma/ib_verbs.h> | 42 | #include <rdma/ib_verbs.h> |
43 | #include <uapi/rdma/ib_user_mad.h> | ||
43 | 44 | ||
44 | /* Management base version */ | 45 | /* Management base version */ |
45 | #define IB_MGMT_BASE_VERSION 1 | 46 | #define IB_MGMT_BASE_VERSION 1 |
@@ -359,6 +360,9 @@ typedef void (*ib_mad_recv_handler)(struct ib_mad_agent *mad_agent, | |||
359 | * @port_num: Port number on which QP is registered | 360 | * @port_num: Port number on which QP is registered |
360 | * @rmpp_version: If set, indicates the RMPP version used by this agent. | 361 | * @rmpp_version: If set, indicates the RMPP version used by this agent. |
361 | */ | 362 | */ |
363 | enum { | ||
364 | IB_MAD_USER_RMPP = IB_USER_MAD_USER_RMPP, | ||
365 | }; | ||
362 | struct ib_mad_agent { | 366 | struct ib_mad_agent { |
363 | struct ib_device *device; | 367 | struct ib_device *device; |
364 | struct ib_qp *qp; | 368 | struct ib_qp *qp; |
@@ -666,4 +670,11 @@ void *ib_get_rmpp_segment(struct ib_mad_send_buf *send_buf, int seg_num); | |||
666 | */ | 670 | */ |
667 | void ib_free_send_mad(struct ib_mad_send_buf *send_buf); | 671 | void ib_free_send_mad(struct ib_mad_send_buf *send_buf); |
668 | 672 | ||
673 | /** | ||
674 | * ib_mad_kernel_rmpp_agent - Returns if the agent is performing RMPP. | ||
675 | * @agent: the agent in question | ||
676 | * @return: true if agent is performing rmpp, false otherwise. | ||
677 | */ | ||
678 | int ib_mad_kernel_rmpp_agent(struct ib_mad_agent *agent); | ||
679 | |||
669 | #endif /* IB_MAD_H */ | 680 | #endif /* IB_MAD_H */ |