aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatan Barak <matanb@mellanox.com>2017-08-03 09:07:03 -0400
committerDoug Ledford <dledford@redhat.com>2017-08-31 08:35:12 -0400
commit64b19e1323e96c34af7ca90d1954e70890c7a98e (patch)
treedd5a9e404362ce29d1459dc22998944bd3ac65ba
parent4da70da23e9ba03f7f9e067fbe0eec6ebbfee401 (diff)
IB/core: Export ioctl enum types to user-space
Add a new ib_user_ioctl_verbs.h which exports all required ABI enums and structs to the user-space. Export the default types to user-space through this file. Signed-off-by: Matan Barak <matanb@mellanox.com> Reviewed-by: Yishai Hadas <yishaih@mellanox.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
-rw-r--r--include/rdma/uverbs_std_types.h18
-rw-r--r--include/uapi/rdma/ib_user_ioctl_verbs.h54
2 files changed, 55 insertions, 17 deletions
diff --git a/include/rdma/uverbs_std_types.h b/include/rdma/uverbs_std_types.h
index bef74099b7c5..400efe2a4d3c 100644
--- a/include/rdma/uverbs_std_types.h
+++ b/include/rdma/uverbs_std_types.h
@@ -34,23 +34,7 @@
34#define _UVERBS_STD_TYPES__ 34#define _UVERBS_STD_TYPES__
35 35
36#include <rdma/uverbs_types.h> 36#include <rdma/uverbs_types.h>
37 37#include <rdma/ib_user_ioctl_verbs.h>
38enum uverbs_default_objects {
39 UVERBS_OBJECT_DEVICE, /* No instances of DEVICE are allowed */
40 UVERBS_OBJECT_PD,
41 UVERBS_OBJECT_COMP_CHANNEL,
42 UVERBS_OBJECT_CQ,
43 UVERBS_OBJECT_QP,
44 UVERBS_OBJECT_SRQ,
45 UVERBS_OBJECT_AH,
46 UVERBS_OBJECT_MR,
47 UVERBS_OBJECT_MW,
48 UVERBS_OBJECT_FLOW,
49 UVERBS_OBJECT_XRCD,
50 UVERBS_OBJECT_RWQ_IND_TBL,
51 UVERBS_OBJECT_WQ,
52 UVERBS_OBJECT_LAST,
53};
54 38
55extern const struct uverbs_object_def uverbs_object_comp_channel; 39extern const struct uverbs_object_def uverbs_object_comp_channel;
56extern const struct uverbs_object_def uverbs_object_cq; 40extern const struct uverbs_object_def uverbs_object_cq;
diff --git a/include/uapi/rdma/ib_user_ioctl_verbs.h b/include/uapi/rdma/ib_user_ioctl_verbs.h
new file mode 100644
index 000000000000..78a2e5be4d6e
--- /dev/null
+++ b/include/uapi/rdma/ib_user_ioctl_verbs.h
@@ -0,0 +1,54 @@
1/*
2 * Copyright (c) 2017, Mellanox Technologies inc. All rights reserved.
3 *
4 * This software is available to you under a choice of one of two
5 * licenses. You may choose to be licensed under the terms of the GNU
6 * General Public License (GPL) Version 2, available from the file
7 * COPYING in the main directory of this source tree, or the
8 * OpenIB.org BSD license below:
9 *
10 * Redistribution and use in source and binary forms, with or
11 * without modification, are permitted provided that the following
12 * conditions are met:
13 *
14 * - Redistributions of source code must retain the above
15 * copyright notice, this list of conditions and the following
16 * disclaimer.
17 *
18 * - Redistributions in binary form must reproduce the above
19 * copyright notice, this list of conditions and the following
20 * disclaimer in the documentation and/or other materials
21 * provided with the distribution.
22 *
23 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
24 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
25 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
26 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
27 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
28 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
29 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
30 * SOFTWARE.
31 */
32
33#ifndef IB_USER_IOCTL_VERBS_H
34#define IB_USER_IOCTL_VERBS_H
35
36enum uverbs_default_objects {
37 UVERBS_OBJECT_DEVICE, /* No instances of DEVICE are allowed */
38 UVERBS_OBJECT_PD,
39 UVERBS_OBJECT_COMP_CHANNEL,
40 UVERBS_OBJECT_CQ,
41 UVERBS_OBJECT_QP,
42 UVERBS_OBJECT_SRQ,
43 UVERBS_OBJECT_AH,
44 UVERBS_OBJECT_MR,
45 UVERBS_OBJECT_MW,
46 UVERBS_OBJECT_FLOW,
47 UVERBS_OBJECT_XRCD,
48 UVERBS_OBJECT_RWQ_IND_TBL,
49 UVERBS_OBJECT_WQ,
50 UVERBS_OBJECT_LAST,
51};
52
53#endif
54