History

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma

Pull rdma updates from Jason Gunthorpe: "A quiet cycle after the larger 5.8 effort. Substantially cleanup and driver work with a few smaller features this time. - Driver updates for hfi1, rxe, mlx5, hns, qedr, usnic, bnxt_re - Removal of dead or redundant code across the drivers - RAW resource tracker dumps to include a device specific data blob for device objects to aide device debugging - Further advance the IOCTL interface, remove the ability to turn it off. Add QUERY_CONTEXT, QUERY_MR, and QUERY_PD commands - Remove stubs related to devices with no pkey table - A shared CQ scheme to allow multiple ULPs to share the CQ rings of a device to give higher performance - Several more static checker, syzkaller and rare crashers fixed" * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma: (121 commits) RDMA/mlx5: Fix flow destination setting for RDMA TX flow table RDMA/rxe: Remove pkey table RDMA/umem: Add a schedule point in ib_umem_get() RDMA/hns: Fix the unneeded process when getting a general type of CQE error RDMA/hns: Fix error during modify qp RTS2RTS RDMA/hns: Delete unnecessary memset when allocating VF resource RDMA/hns: Remove redundant parameters in set_rc_wqe() RDMA/hns: Remove support for HIP08_A RDMA/hns: Refactor hns_roce_v2_set_hem() RDMA/hns: Remove redundant hardware opcode definitions RDMA/netlink: Remove CAP_NET_RAW check when dump a raw QP RDMA/include: Replace license text with SPDX tags RDMA/rtrs: remove WQ_MEM_RECLAIM for rtrs_wq RDMA/rtrs-clt: add an additional random 8 seconds before reconnecting RDMA/cma: Execute rdma_cm destruction from a handler properly RDMA/cma: Remove unneeded locking for req paths RDMA/cma: Using the standard locking pattern when delivering the removal event RDMA/cma: Simplify DEVICE_REMOVAL for internal_id RDMA/efa: Add EFA 0xefa1 PCI ID RDMA/efa: User/kernel compatibility handshake mechanism ...

Linus Torvalds committed 6 years ago

Commit d7806bb2 parents d6efb3a 23fcc7d166 files · +6945 −7569Browse files

Showing the changes to include (40 of 166 files). Show all

Unified · Split

40 files
  1. include/linux/mlx5/device.h +5 −4
  2. include/linux/mlx5/driver.h +2 −0
  3. include/linux/mlx5/mlx5_ifc.h +113 −16
  4. include/rdma/ib.h +2 −29
  5. include/rdma/ib_addr.h +2 −29
  6. include/rdma/ib_cache.h +1 −28
  7. include/rdma/ib_cm.h +1 −0
  8. include/rdma/ib_hdrs.h +1 −43
  9. include/rdma/ib_mad.h +2 −29
  10. include/rdma/ib_marshall.h +2 −29
  11. include/rdma/ib_pack.h +1 −28
  12. include/rdma/ib_pma.h +2 −29
  13. include/rdma/ib_sa.h +1 −28
  14. include/rdma/ib_smi.h +2 −29
  15. include/rdma/ib_umem.h +1 −28
  16. include/rdma/ib_umem_odp.h +1 −28
  17. include/rdma/ib_verbs.h +31 −69
  18. include/rdma/iw_cm.h +2 −28
  19. include/rdma/iw_portmap.h +2 −28
  20. include/rdma/opa_addr.h +1 −43
  21. include/rdma/opa_port_info.h +2 −29
  22. include/rdma/opa_smi.h +2 −29
  23. include/rdma/opa_vnic.h +4 −45
  24. include/rdma/rdma_cm.h +2 −29
  25. include/rdma/rdma_cm_ib.h +2 −29
  26. include/rdma/rdma_netlink.h +1 −1
  27. include/rdma/rdma_vt.h +4 −46
  28. include/rdma/rdmavt_cq.h +4 −49
  29. include/rdma/rdmavt_mr.h +4 −46
  30. include/rdma/rdmavt_qp.h +4 −46
  31. include/rdma/uverbs_ioctl.h +2 −28
  32. include/rdma/uverbs_named_ioctl.h +1 −28
  33. include/rdma/uverbs_std_types.h +15 −28
  34. include/rdma/uverbs_types.h +1 −28
  35. include/uapi/rdma/efa-abi.h +14 −1
  36. include/uapi/rdma/ib_user_ioctl_cmds.h +15 −0
  37. include/uapi/rdma/mlx5_user_ioctl_cmds.h +15 −1
  38. include/uapi/rdma/qedr-abi.h +7 −3
  39. include/uapi/rdma/rdma_netlink.h +9 −0
  40. include/uapi/rdma/rdma_user_ioctl.h +1 −1
include/linux/mlx5/device.h+5−4
@@ -276,7 +276,9 @@ enum { · 275 unmodified lines
276 MLX5_MKEY_MASK_RW = 1ull << 20,276 MLX5_MKEY_MASK_RW = 1ull << 20,
277 MLX5_MKEY_MASK_A = 1ull << 21,277 MLX5_MKEY_MASK_A = 1ull << 21,
278 MLX5_MKEY_MASK_SMALL_FENCE = 1ull << 23,278 MLX5_MKEY_MASK_SMALL_FENCE = 1ull << 23,
279 MLX5_MKEY_MASK_FREE = 1ull << 29,279 MLX5_MKEY_MASK_RELAXED_ORDERING_WRITE = 1ull << 25,
280 MLX5_MKEY_MASK_FREE = 1ull << 29,
281 MLX5_MKEY_MASK_RELAXED_ORDERING_READ = 1ull << 47,
280};282};
281 283
282enum {284enum {
@@ -1007,7 +1009,6 @@ enum { · 724 unmodified lines
1007 MLX5_MKEY_REMOTE_INVAL = 1 << 24,1009 MLX5_MKEY_REMOTE_INVAL = 1 << 24,
1008 MLX5_MKEY_FLAG_SYNC_UMR = 1 << 29,1010 MLX5_MKEY_FLAG_SYNC_UMR = 1 << 29,
1009 MLX5_MKEY_BSF_EN = 1 << 30,1011 MLX5_MKEY_BSF_EN = 1 << 30,
1010 MLX5_MKEY_LEN64 = 1 << 31,
1011};1012};
1012 1013
1013struct mlx5_mkey_seg {1014struct mlx5_mkey_seg {
@@ -1361,11 +1362,11 @@ enum mlx5_qcam_feature_groups { · 347 unmodified lines
1361 MLX5_ADDR_OF(device_event_cap, (mdev)->caps.hca_cur[MLX5_CAP_DEV_EVENT], cap)1362 MLX5_ADDR_OF(device_event_cap, (mdev)->caps.hca_cur[MLX5_CAP_DEV_EVENT], cap)
1362 1363
1363#define MLX5_CAP_DEV_VDPA_EMULATION(mdev, cap)\1364#define MLX5_CAP_DEV_VDPA_EMULATION(mdev, cap)\
1364 MLX5_GET(device_virtio_emulation_cap, \1365 MLX5_GET(virtio_emulation_cap, \
1365 (mdev)->caps.hca_cur[MLX5_CAP_VDPA_EMULATION], cap)1366 (mdev)->caps.hca_cur[MLX5_CAP_VDPA_EMULATION], cap)
1366 1367
1367#define MLX5_CAP64_DEV_VDPA_EMULATION(mdev, cap)\1368#define MLX5_CAP64_DEV_VDPA_EMULATION(mdev, cap)\
1368 MLX5_GET64(device_virtio_emulation_cap, \1369 MLX5_GET64(virtio_emulation_cap, \
1369 (mdev)->caps.hca_cur[MLX5_CAP_VDPA_EMULATION], cap)1370 (mdev)->caps.hca_cur[MLX5_CAP_VDPA_EMULATION], cap)
1370 1371
1371#define MLX5_CAP_IPSEC(mdev, cap)\1372#define MLX5_CAP_IPSEC(mdev, cap)\
include/linux/mlx5/driver.h+2−0
@@ -975,6 +975,7 @@ void mlx5_register_debugfs(void); · 974 unmodified lines
975void mlx5_unregister_debugfs(void);975void mlx5_unregister_debugfs(void);
976 976
977void mlx5_fill_page_array(struct mlx5_frag_buf *buf, __be64 *pas);977void mlx5_fill_page_array(struct mlx5_frag_buf *buf, __be64 *pas);
978void mlx5_fill_page_frag_array_perm(struct mlx5_frag_buf *buf, __be64 *pas, u8 perm);
978void mlx5_fill_page_frag_array(struct mlx5_frag_buf *frag_buf, __be64 *pas);979void mlx5_fill_page_frag_array(struct mlx5_frag_buf *frag_buf, __be64 *pas);
979int mlx5_vector2eqn(struct mlx5_core_dev *dev, int vector, int *eqn,980int mlx5_vector2eqn(struct mlx5_core_dev *dev, int vector, int *eqn,
980 unsigned int *irqn);981 unsigned int *irqn);
@@ -1057,6 +1058,7 @@ enum { · 76 unmodified lines
1057enum {1058enum {
1058 MLX5_INTERFACE_PROTOCOL_IB = 0,1059 MLX5_INTERFACE_PROTOCOL_IB = 0,
1059 MLX5_INTERFACE_PROTOCOL_ETH = 1,1060 MLX5_INTERFACE_PROTOCOL_ETH = 1,
1061 MLX5_INTERFACE_PROTOCOL_VDPA = 2,
1060};1062};
1061 1063
1062struct mlx5_interface {1064struct mlx5_interface {
include/linux/mlx5/mlx5_ifc.h+113−16
@@ -93,6 +93,7 @@ enum { · 92 unmodified lines
93 93
94enum {94enum {
95 MLX5_OBJ_TYPE_GENEVE_TLV_OPT = 0x000b,95 MLX5_OBJ_TYPE_GENEVE_TLV_OPT = 0x000b,
96 MLX5_OBJ_TYPE_VIRTIO_NET_Q = 0x000d,
96 MLX5_OBJ_TYPE_MKEY = 0xff01,97 MLX5_OBJ_TYPE_MKEY = 0xff01,
97 MLX5_OBJ_TYPE_QP = 0xff02,98 MLX5_OBJ_TYPE_QP = 0xff02,
98 MLX5_OBJ_TYPE_PSV = 0xff03,99 MLX5_OBJ_TYPE_PSV = 0xff03,
@@ -985,17 +986,40 @@ struct mlx5_ifc_device_event_cap_bits { · 886 unmodified lines
985 u8 user_unaffiliated_events[4][0x40];986 u8 user_unaffiliated_events[4][0x40];
986};987};
987 988
988struct mlx5_ifc_device_virtio_emulation_cap_bits {989struct mlx5_ifc_virtio_emulation_cap_bits {
989 u8 reserved_at_0[0x20];990 u8 desc_tunnel_offload_type[0x1];
991 u8 eth_frame_offload_type[0x1];
992 u8 virtio_version_1_0[0x1];
993 u8 device_features_bits_mask[0xd];
994 u8 event_mode[0x8];
995 u8 virtio_queue_type[0x8];
990 996
991 u8 reserved_at_20[0x13];997 u8 max_tunnel_desc[0x10];
998 u8 reserved_at_30[0x3];
992 u8 log_doorbell_stride[0x5];999 u8 log_doorbell_stride[0x5];
993 u8 reserved_at_38[0x3];1000 u8 reserved_at_38[0x3];
994 u8 log_doorbell_bar_size[0x5];1001 u8 log_doorbell_bar_size[0x5];
995 1002
996 u8 doorbell_bar_offset[0x40];1003 u8 doorbell_bar_offset[0x40];
997 1004
998 u8 reserved_at_80[0x780];1005 u8 max_emulated_devices[0x8];
1006 u8 max_num_virtio_queues[0x18];
1007
1008 u8 reserved_at_a0[0x60];
1009
1010 u8 umem_1_buffer_param_a[0x20];
1011
1012 u8 umem_1_buffer_param_b[0x20];
1013
1014 u8 umem_2_buffer_param_a[0x20];
1015
1016 u8 umem_2_buffer_param_b[0x20];
1017
1018 u8 umem_3_buffer_param_a[0x20];
1019
1020 u8 umem_3_buffer_param_b[0x20];
1021
1022 u8 reserved_at_1c0[0x640];
999};1023};
1000 1024
1001enum {1025enum {
@@ -1220,7 +1244,11 @@ struct mlx5_ifc_cmd_hca_cap_bits { · 218 unmodified lines
1220 1244
1221 u8 max_sgl_for_optimized_performance[0x8];1245 u8 max_sgl_for_optimized_performance[0x8];
1222 u8 log_max_cq_sz[0x8];1246 u8 log_max_cq_sz[0x8];
1223 u8 reserved_at_d0[0xb];1247 u8 relaxed_ordering_write_umr[0x1];
1248 u8 relaxed_ordering_read_umr[0x1];
1249 u8 reserved_at_d2[0x7];
1250 u8 virtio_net_device_emualtion_manager[0x1];
1251 u8 virtio_blk_device_emualtion_manager[0x1];
1224 u8 log_max_cq[0x5];1252 u8 log_max_cq[0x5];
1225 1253
1226 u8 log_max_eq_sz[0x8];1254 u8 log_max_eq_sz[0x8];
@@ -1396,7 +1424,10 @@ struct mlx5_ifc_cmd_hca_cap_bits { · 169 unmodified lines
1396 u8 bf[0x1];1424 u8 bf[0x1];
1397 u8 driver_version[0x1];1425 u8 driver_version[0x1];
1398 u8 pad_tx_eth_packet[0x1];1426 u8 pad_tx_eth_packet[0x1];
1399 u8 reserved_at_263[0x8];1427 u8 reserved_at_263[0x3];
1428 u8 mkey_by_name[0x1];
1429 u8 reserved_at_267[0x4];
1430
1400 u8 log_bf_reg_size[0x5];1431 u8 log_bf_reg_size[0x5];
1401 1432
1402 u8 reserved_at_270[0x8];1433 u8 reserved_at_270[0x8];
@@ -2953,7 +2984,7 @@ union mlx5_ifc_hca_cap_union_bits { · 1550 unmodified lines
2953 struct mlx5_ifc_fpga_cap_bits fpga_cap;2984 struct mlx5_ifc_fpga_cap_bits fpga_cap;
2954 struct mlx5_ifc_tls_cap_bits tls_cap;2985 struct mlx5_ifc_tls_cap_bits tls_cap;
2955 struct mlx5_ifc_device_mem_cap_bits device_mem_cap;2986 struct mlx5_ifc_device_mem_cap_bits device_mem_cap;
2956 struct mlx5_ifc_device_virtio_emulation_cap_bits virtio_emulation_cap;2987 struct mlx5_ifc_virtio_emulation_cap_bits virtio_emulation_cap;
2957 u8 reserved_at_0[0x8000];2988 u8 reserved_at_0[0x8000];
2958};2989};
2959 2990
@@ -3302,15 +3333,18 @@ struct mlx5_ifc_scheduling_context_bits { · 342 unmodified lines
3302};3333};
3303 3334
3304struct mlx5_ifc_rqtc_bits {3335struct mlx5_ifc_rqtc_bits {
3305 u8 reserved_at_0[0xa0];3336 u8 reserved_at_0[0xa0];
3306 3337
3307 u8 reserved_at_a0[0x10];3338 u8 reserved_at_a0[0x5];
3308 u8 rqt_max_size[0x10];3339 u8 list_q_type[0x3];
3340 u8 reserved_at_a8[0x8];
3341 u8 rqt_max_size[0x10];
3309 3342
3310 u8 reserved_at_c0[0x10];3343 u8 rq_vhca_id_format[0x1];
3311 u8 rqt_actual_size[0x10];3344 u8 reserved_at_c1[0xf];
3345 u8 rqt_actual_size[0x10];
3312 3346
3313 u8 reserved_at_e0[0x6a0];3347 u8 reserved_at_e0[0x6a0];
3314 3348
3315 struct mlx5_ifc_rq_num_bits rq_num[];3349 struct mlx5_ifc_rq_num_bits rq_num[];
3316};3350};
@@ -7092,7 +7126,7 @@ struct mlx5_ifc_destroy_mkey_out_bits { · 3775 unmodified lines
7092 7126
7093struct mlx5_ifc_destroy_mkey_in_bits {7127struct mlx5_ifc_destroy_mkey_in_bits {
7094 u8 opcode[0x10];7128 u8 opcode[0x10];
7095 u8 reserved_at_10[0x10];7129 u8 uid[0x10];
7096 7130
7097 u8 reserved_at_20[0x10];7131 u8 reserved_at_20[0x10];
7098 u8 op_mod[0x10];7132 u8 op_mod[0x10];
@@ -7723,8 +7757,10 @@ struct mlx5_ifc_create_qp_in_bits { · 624 unmodified lines
7723 u8 reserved_at_20[0x10];7757 u8 reserved_at_20[0x10];
7724 u8 op_mod[0x10];7758 u8 op_mod[0x10];
7725 7759
7726 u8 reserved_at_40[0x40];7760 u8 reserved_at_40[0x8];
7761 u8 input_qpn[0x18];
7727 7762
7763 u8 reserved_at_60[0x20];
7728 u8 opt_param_mask[0x20];7764 u8 opt_param_mask[0x20];
7729 7765
7730 u8 ece[0x20];7766 u8 ece[0x20];
@@ -7788,7 +7824,7 @@ struct mlx5_ifc_create_mkey_out_bits { · 57 unmodified lines
7788 7824
7789struct mlx5_ifc_create_mkey_in_bits {7825struct mlx5_ifc_create_mkey_in_bits {
7790 u8 opcode[0x10];7826 u8 opcode[0x10];
7791 u8 reserved_at_10[0x10];7827 u8 uid[0x10];
7792 7828
7793 u8 reserved_at_20[0x10];7829 u8 reserved_at_20[0x10];
7794 u8 op_mod[0x10];7830 u8 op_mod[0x10];
@@ -10346,6 +10382,40 @@ struct mlx5_ifc_create_umem_in_bits { · 2551 unmodified lines
10346 struct mlx5_ifc_umem_bits umem;10382 struct mlx5_ifc_umem_bits umem;
10347};10383};
10348 10384
10385struct mlx5_ifc_create_umem_out_bits {
10386 u8 status[0x8];
10387 u8 reserved_at_8[0x18];
10388
10389 u8 syndrome[0x20];
10390
10391 u8 reserved_at_40[0x8];
10392 u8 umem_id[0x18];
10393
10394 u8 reserved_at_60[0x20];
10395};
10396
10397struct mlx5_ifc_destroy_umem_in_bits {
10398 u8 opcode[0x10];
10399 u8 uid[0x10];
10400
10401 u8 reserved_at_20[0x10];
10402 u8 op_mod[0x10];
10403
10404 u8 reserved_at_40[0x8];
10405 u8 umem_id[0x18];
10406
10407 u8 reserved_at_60[0x20];
10408};
10409
10410struct mlx5_ifc_destroy_umem_out_bits {
10411 u8 status[0x8];
10412 u8 reserved_at_8[0x18];
10413
10414 u8 syndrome[0x20];
10415
10416 u8 reserved_at_40[0x40];
10417};
10418
10349struct mlx5_ifc_create_uctx_in_bits {10419struct mlx5_ifc_create_uctx_in_bits {
10350 u8 opcode[0x10];10420 u8 opcode[0x10];
10351 u8 reserved_at_10[0x10];10421 u8 reserved_at_10[0x10];
@@ -10358,6 +10428,18 @@ struct mlx5_ifc_create_uctx_in_bits { · 6 unmodified lines
10358 struct mlx5_ifc_uctx_bits uctx;10428 struct mlx5_ifc_uctx_bits uctx;
10359};10429};
10360 10430
10431struct mlx5_ifc_create_uctx_out_bits {
10432 u8 status[0x8];
10433 u8 reserved_at_8[0x18];
10434
10435 u8 syndrome[0x20];
10436
10437 u8 reserved_at_40[0x10];
10438 u8 uid[0x10];
10439
10440 u8 reserved_at_60[0x20];
10441};
10442
10361struct mlx5_ifc_destroy_uctx_in_bits {10443struct mlx5_ifc_destroy_uctx_in_bits {
10362 u8 opcode[0x10];10444 u8 opcode[0x10];
10363 u8 reserved_at_10[0x10];10445 u8 reserved_at_10[0x10];
@@ -10371,6 +10453,15 @@ struct mlx5_ifc_destroy_uctx_in_bits { · 7 unmodified lines
10371 u8 reserved_at_60[0x20];10453 u8 reserved_at_60[0x20];
10372};10454};
10373 10455
10456struct mlx5_ifc_destroy_uctx_out_bits {
10457 u8 status[0x8];
10458 u8 reserved_at_8[0x18];
10459
10460 u8 syndrome[0x20];
10461
10462 u8 reserved_at_40[0x40];
10463};
10464
10374struct mlx5_ifc_create_sw_icm_in_bits {10465struct mlx5_ifc_create_sw_icm_in_bits {
10375 struct mlx5_ifc_general_obj_in_cmd_hdr_bits hdr;10466 struct mlx5_ifc_general_obj_in_cmd_hdr_bits hdr;
10376 struct mlx5_ifc_sw_icm_bits sw_icm;10467 struct mlx5_ifc_sw_icm_bits sw_icm;
@@ -10687,4 +10778,10 @@ struct mlx5_ifc_tls_progress_params_bits { · 310 unmodified lines
10687 u8 hw_offset_record_number[0x18];10778 u8 hw_offset_record_number[0x18];
10688};10779};
10689 10780
10781enum {
10782 MLX5_MTT_PERM_READ = 1 << 0,
10783 MLX5_MTT_PERM_WRITE = 1 << 1,
10784 MLX5_MTT_PERM_RW = MLX5_MTT_PERM_READ | MLX5_MTT_PERM_WRITE,
10785};
10786
10690#endif /* MLX5_IFC_H */10787#endif /* MLX5_IFC_H */
include/rdma/ib.h+2−29
@@ -1,36 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2010 Intel Corporation. All rights reserved.3 * Copyright (c) 2010 Intel Corporation. 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 */4 */
32 5
33#if !defined(_RDMA_IB_H)6#ifndef _RDMA_IB_H
34#define _RDMA_IB_H7#define _RDMA_IB_H
35 8
36#include <linux/types.h>9#include <linux/types.h>
include/rdma/ib_addr.h+2−29
@@ -1,37 +1,10 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2005 Voltaire Inc. All rights reserved.3 * Copyright (c) 2005 Voltaire Inc. All rights reserved.
3 * Copyright (c) 2005 Intel Corporation. All rights reserved.4 * Copyright (c) 2005 Intel Corporation. All rights reserved.
4 *
5 * This software is available to you under a choice of one of two
6 * licenses. You may choose to be licensed under the terms of the GNU
7 * General Public License (GPL) Version 2, available from the file
8 * COPYING in the main directory of this source tree, or the
9 * OpenIB.org BSD license below:
10 *
11 * Redistribution and use in source and binary forms, with or
12 * without modification, are permitted provided that the following
13 * conditions are met:
14 *
15 * - Redistributions of source code must retain the above
16 * copyright notice, this list of conditions and the following
17 * disclaimer.
18 *
19 * - Redistributions in binary form must reproduce the above
20 * copyright notice, this list of conditions and the following
21 * disclaimer in the documentation and/or other materials
22 * provided with the distribution.
23 *
24 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
25 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
26 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
27 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
28 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
29 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
30 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
31 * SOFTWARE.
32 */5 */
33 6
34#if !defined(IB_ADDR_H)7#ifndef IB_ADDR_H
35#define IB_ADDR_H8#define IB_ADDR_H
36 9
37#include <linux/in.h>10#include <linux/in.h>
include/rdma/ib_cache.h+1−28
@@ -1,35 +1,8 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2004 Topspin Communications. All rights reserved.3 * Copyright (c) 2004 Topspin Communications. All rights reserved.
3 * Copyright (c) 2005 Intel Corporation. All rights reserved.4 * Copyright (c) 2005 Intel Corporation. All rights reserved.
4 * Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved.5 * Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved.
5 *
6 * This software is available to you under a choice of one of two
7 * licenses. You may choose to be licensed under the terms of the GNU
8 * General Public License (GPL) Version 2, available from the file
9 * COPYING in the main directory of this source tree, or the
10 * OpenIB.org BSD license below:
11 *
12 * Redistribution and use in source and binary forms, with or
13 * without modification, are permitted provided that the following
14 * conditions are met:
15 *
16 * - Redistributions of source code must retain the above
17 * copyright notice, this list of conditions and the following
18 * disclaimer.
19 *
20 * - Redistributions in binary form must reproduce the above
21 * copyright notice, this list of conditions and the following
22 * disclaimer in the documentation and/or other materials
23 * provided with the distribution.
24 *
25 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
26 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
27 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
28 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
29 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
30 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
31 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
32 * SOFTWARE.
33 */6 */
34 7
35#ifndef _IB_CACHE_H8#ifndef _IB_CACHE_H
include/rdma/ib_cm.h+1−0
@@ -6,6 +6,7 @@ · 5 unmodified lines
6 * Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved.6 * Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved.
7 * Copyright (c) 2019, Mellanox Technologies inc. All rights reserved.7 * Copyright (c) 2019, Mellanox Technologies inc. All rights reserved.
8 */8 */
9
9#ifndef IB_CM_H10#ifndef IB_CM_H
10#define IB_CM_H11#define IB_CM_H
11 12
include/rdma/ib_hdrs.h+1−43
@@ -1,48 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
1/*2/*
2 * Copyright(c) 2016 - 2018 Intel Corporation.3 * Copyright(c) 2016 - 2018 Intel Corporation.
3 *
4 * This file is provided under a dual BSD/GPLv2 license. When using or
5 * redistributing this file, you may do so under either license.
6 *
7 * GPL LICENSE SUMMARY
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of version 2 of the GNU General Public License as
11 * published by the Free Software Foundation.
12 *
13 * This program is distributed in the hope that it will be useful, but
14 * WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * General Public License for more details.
17 *
18 * BSD LICENSE
19 *
20 * Redistribution and use in source and binary forms, with or without
21 * modification, are permitted provided that the following conditions
22 * are met:
23 *
24 * - Redistributions of source code must retain the above copyright
25 * notice, this list of conditions and the following disclaimer.
26 * - Redistributions in binary form must reproduce the above copyright
27 * notice, this list of conditions and the following disclaimer in
28 * the documentation and/or other materials provided with the
29 * distribution.
30 * - Neither the name of Intel Corporation nor the names of its
31 * contributors may be used to endorse or promote products derived
32 * from this software without specific prior written permission.
33 *
34 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
35 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
36 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
37 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
38 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
39 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
40 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
41 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
42 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
43 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
44 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
45 *
46 */4 */
47 5
48#ifndef IB_HDRS_H6#ifndef IB_HDRS_H
include/rdma/ib_mad.h+2−29
@@ -1,40 +1,13 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2004 Mellanox Technologies Ltd. All rights reserved.3 * Copyright (c) 2004 Mellanox Technologies Ltd. All rights reserved.
3 * Copyright (c) 2004 Infinicon Corporation. All rights reserved.4 * Copyright (c) 2004 Infinicon Corporation. All rights reserved.
4 * Copyright (c) 2004 Intel Corporation. All rights reserved.5 * Copyright (c) 2004 Intel Corporation. All rights reserved.
5 * Copyright (c) 2004 Topspin Corporation. All rights reserved.6 * Copyright (c) 2004 Topspin Corporation. All rights reserved.
6 * Copyright (c) 2004-2006 Voltaire Corporation. All rights reserved.7 * Copyright (c) 2004-2006 Voltaire Corporation. All rights reserved.
7 *
8 * This software is available to you under a choice of one of two
9 * licenses. You may choose to be licensed under the terms of the GNU
10 * General Public License (GPL) Version 2, available from the file
11 * COPYING in the main directory of this source tree, or the
12 * OpenIB.org BSD license below:
13 *
14 * Redistribution and use in source and binary forms, with or
15 * without modification, are permitted provided that the following
16 * conditions are met:
17 *
18 * - Redistributions of source code must retain the above
19 * copyright notice, this list of conditions and the following
20 * disclaimer.
21 *
22 * - Redistributions in binary form must reproduce the above
23 * copyright notice, this list of conditions and the following
24 * disclaimer in the documentation and/or other materials
25 * provided with the distribution.
26 *
27 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
28 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
29 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
30 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
31 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
32 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
33 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
34 * SOFTWARE.
35 */8 */
36 9
37#if !defined(IB_MAD_H)10#ifndef IB_MAD_H
38#define IB_MAD_H11#define IB_MAD_H
39 12
40#include <linux/list.h>13#include <linux/list.h>
include/rdma/ib_marshall.h+2−29
@@ -1,36 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2005-2006 Intel Corporation. All rights reserved.3 * Copyright (c) 2005-2006 Intel Corporation. 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 */4 */
32 5
33#if !defined(IB_USER_MARSHALL_H)6#ifndef IB_USER_MARSHALL_H
34#define IB_USER_MARSHALL_H7#define IB_USER_MARSHALL_H
35 8
36#include <rdma/ib_verbs.h>9#include <rdma/ib_verbs.h>
include/rdma/ib_pack.h+1−28
@@ -1,33 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2004 Topspin Corporation. All rights reserved.3 * Copyright (c) 2004 Topspin Corporation. 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 */4 */
32 5
33#ifndef IB_PACK_H6#ifndef IB_PACK_H
include/rdma/ib_pma.h+2−29
@@ -1,38 +1,11 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2006, 2007, 2008, 2009, 2010 QLogic Corporation.3 * Copyright (c) 2006, 2007, 2008, 2009, 2010 QLogic Corporation.
3 * All rights reserved.4 * All rights reserved.
4 * Copyright (c) 2005, 2006 PathScale, Inc. All rights reserved.5 * Copyright (c) 2005, 2006 PathScale, Inc. All rights reserved.
5 *
6 * This software is available to you under a choice of one of two
7 * licenses. You may choose to be licensed under the terms of the GNU
8 * General Public License (GPL) Version 2, available from the file
9 * COPYING in the main directory of this source tree, or the
10 * OpenIB.org BSD license below:
11 *
12 * Redistribution and use in source and binary forms, with or
13 * without modification, are permitted provided that the following
14 * conditions are met:
15 *
16 * - Redistributions of source code must retain the above
17 * copyright notice, this list of conditions and the following
18 * disclaimer.
19 *
20 * - Redistributions in binary form must reproduce the above
21 * copyright notice, this list of conditions and the following
22 * disclaimer in the documentation and/or other materials
23 * provided with the distribution.
24 *
25 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
26 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
27 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
28 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
29 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
30 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
31 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
32 * SOFTWARE.
33 */6 */
34 7
35#if !defined(IB_PMA_H)8#ifndef IB_PMA_H
36#define IB_PMA_H9#define IB_PMA_H
37 10
38#include <rdma/ib_mad.h>11#include <rdma/ib_mad.h>
include/rdma/ib_sa.h+1−28
@@ -1,35 +1,8 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2004 Topspin Communications. All rights reserved.3 * Copyright (c) 2004 Topspin Communications. All rights reserved.
3 * Copyright (c) 2005 Voltaire, Inc. All rights reserved.4 * Copyright (c) 2005 Voltaire, Inc. All rights reserved.
4 * Copyright (c) 2006 Intel Corporation. All rights reserved.5 * Copyright (c) 2006 Intel Corporation. All rights reserved.
5 *
6 * This software is available to you under a choice of one of two
7 * licenses. You may choose to be licensed under the terms of the GNU
8 * General Public License (GPL) Version 2, available from the file
9 * COPYING in the main directory of this source tree, or the
10 * OpenIB.org BSD license below:
11 *
12 * Redistribution and use in source and binary forms, with or
13 * without modification, are permitted provided that the following
14 * conditions are met:
15 *
16 * - Redistributions of source code must retain the above
17 * copyright notice, this list of conditions and the following
18 * disclaimer.
19 *
20 * - Redistributions in binary form must reproduce the above
21 * copyright notice, this list of conditions and the following
22 * disclaimer in the documentation and/or other materials
23 * provided with the distribution.
24 *
25 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
26 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
27 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
28 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
29 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
30 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
31 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
32 * SOFTWARE.
33 */6 */
34 7
35#ifndef IB_SA_H8#ifndef IB_SA_H
include/rdma/ib_smi.h+2−29
@@ -1,40 +1,13 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2004 Mellanox Technologies Ltd. All rights reserved.3 * Copyright (c) 2004 Mellanox Technologies Ltd. All rights reserved.
3 * Copyright (c) 2004 Infinicon Corporation. All rights reserved.4 * Copyright (c) 2004 Infinicon Corporation. All rights reserved.
4 * Copyright (c) 2004 Intel Corporation. All rights reserved.5 * Copyright (c) 2004 Intel Corporation. All rights reserved.
5 * Copyright (c) 2004 Topspin Corporation. All rights reserved.6 * Copyright (c) 2004 Topspin Corporation. All rights reserved.
6 * Copyright (c) 2004 Voltaire Corporation. All rights reserved.7 * Copyright (c) 2004 Voltaire Corporation. All rights reserved.
7 *
8 * This software is available to you under a choice of one of two
9 * licenses. You may choose to be licensed under the terms of the GNU
10 * General Public License (GPL) Version 2, available from the file
11 * COPYING in the main directory of this source tree, or the
12 * OpenIB.org BSD license below:
13 *
14 * Redistribution and use in source and binary forms, with or
15 * without modification, are permitted provided that the following
16 * conditions are met:
17 *
18 * - Redistributions of source code must retain the above
19 * copyright notice, this list of conditions and the following
20 * disclaimer.
21 *
22 * - Redistributions in binary form must reproduce the above
23 * copyright notice, this list of conditions and the following
24 * disclaimer in the documentation and/or other materials
25 * provided with the distribution.
26 *
27 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
28 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
29 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
30 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
31 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
32 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
33 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
34 * SOFTWARE.
35 */8 */
36 9
37#if !defined(IB_SMI_H)10#ifndef IB_SMI_H
38#define IB_SMI_H11#define IB_SMI_H
39 12
40#include <rdma/ib_mad.h>13#include <rdma/ib_mad.h>
include/rdma/ib_umem.h+1−28
@@ -1,33 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2007 Cisco Systems. All rights reserved.3 * Copyright (c) 2007 Cisco Systems. 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 */4 */
32 5
33#ifndef IB_UMEM_H6#ifndef IB_UMEM_H
include/rdma/ib_umem_odp.h+1−28
@@ -1,33 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2014 Mellanox Technologies. All rights reserved.3 * Copyright (c) 2014 Mellanox Technologies. 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 */4 */
32 5
33#ifndef IB_UMEM_ODP_H6#ifndef IB_UMEM_ODP_H
include/rdma/ib_verbs.h+31−69
@@ -1,3 +1,4 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2004 Mellanox Technologies Ltd. All rights reserved.3 * Copyright (c) 2004 Mellanox Technologies Ltd. All rights reserved.
3 * Copyright (c) 2004 Infinicon Corporation. All rights reserved.4 * Copyright (c) 2004 Infinicon Corporation. All rights reserved.
@@ -6,37 +7,9 @@ · 2 unmodified lines
6 * Copyright (c) 2004 Voltaire Corporation. All rights reserved.7 * Copyright (c) 2004 Voltaire Corporation. All rights reserved.
7 * Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved.8 * Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved.
8 * Copyright (c) 2005, 2006, 2007 Cisco Systems. All rights reserved.9 * Copyright (c) 2005, 2006, 2007 Cisco Systems. All rights reserved.
9 *
10 * This software is available to you under a choice of one of two
11 * licenses. You may choose to be licensed under the terms of the GNU
12 * General Public License (GPL) Version 2, available from the file
13 * COPYING in the main directory of this source tree, or the
14 * OpenIB.org BSD license below:
15 *
16 * Redistribution and use in source and binary forms, with or
17 * without modification, are permitted provided that the following
18 * conditions are met:
19 *
20 * - Redistributions of source code must retain the above
21 * copyright notice, this list of conditions and the following
22 * disclaimer.
23 *
24 * - Redistributions in binary form must reproduce the above
25 * copyright notice, this list of conditions and the following
26 * disclaimer in the documentation and/or other materials
27 * provided with the distribution.
28 *
29 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
30 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
31 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
32 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
33 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
34 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
35 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
36 * SOFTWARE.
37 */10 */
38 11
39#if !defined(IB_VERBS_H)12#ifndef IB_VERBS_H
40#define IB_VERBS_H13#define IB_VERBS_H
41 14
42#include <linux/types.h>15#include <linux/types.h>
@@ -75,6 +48,7 @@ struct ib_umem_odp; · 32 unmodified lines
75struct ib_uqp_object;48struct ib_uqp_object;
76struct ib_usrq_object;49struct ib_usrq_object;
77struct ib_uwq_object;50struct ib_uwq_object;
51struct rdma_cm_id;
78 52
79extern struct workqueue_struct *ib_wq;53extern struct workqueue_struct *ib_wq;
80extern struct workqueue_struct *ib_comp_wq;54extern struct workqueue_struct *ib_comp_wq;
@@ -1566,9 +1540,8 @@ struct ib_xrcd { · 1485 unmodified lines
1566 struct ib_device *device;1540 struct ib_device *device;
1567 atomic_t usecnt; /* count all exposed resources */1541 atomic_t usecnt; /* count all exposed resources */
1568 struct inode *inode;1542 struct inode *inode;
1569 1543 struct rw_semaphore tgt_qps_rwsem;
1570 struct mutex tgt_qp_mutex;1544 struct xarray tgt_qps;
1571 struct list_head tgt_qp_list;
1572};1545};
1573 1546
1574struct ib_ah {1547struct ib_ah {
@@ -2270,6 +2243,7 @@ struct rdma_netdev_alloc_params { · 695 unmodified lines
2270struct ib_odp_counters {2243struct ib_odp_counters {
2271 atomic64_t faults;2244 atomic64_t faults;
2272 atomic64_t invalidations;2245 atomic64_t invalidations;
2246 atomic64_t prefetch;
2273};2247};
2274 2248
2275struct ib_counters {2249struct ib_counters {
@@ -2476,7 +2450,7 @@ struct ib_device_ops { · 200 unmodified lines
2476 struct ib_pd *pd, struct ib_udata *udata);2450 struct ib_pd *pd, struct ib_udata *udata);
2477 int (*dereg_mr)(struct ib_mr *mr, struct ib_udata *udata);2451 int (*dereg_mr)(struct ib_mr *mr, struct ib_udata *udata);
2478 struct ib_mr *(*alloc_mr)(struct ib_pd *pd, enum ib_mr_type mr_type,2452 struct ib_mr *(*alloc_mr)(struct ib_pd *pd, enum ib_mr_type mr_type,
2479 u32 max_num_sg, struct ib_udata *udata);2453 u32 max_num_sg);
2480 struct ib_mr *(*alloc_mr_integrity)(struct ib_pd *pd,2454 struct ib_mr *(*alloc_mr_integrity)(struct ib_pd *pd,
2481 u32 max_num_data_sg,2455 u32 max_num_data_sg,
2482 u32 max_num_meta_sg);2456 u32 max_num_meta_sg);
@@ -2493,9 +2467,8 @@ struct ib_device_ops { · 10 unmodified lines
2493 int (*dealloc_mw)(struct ib_mw *mw);2467 int (*dealloc_mw)(struct ib_mw *mw);
2494 int (*attach_mcast)(struct ib_qp *qp, union ib_gid *gid, u16 lid);2468 int (*attach_mcast)(struct ib_qp *qp, union ib_gid *gid, u16 lid);
2495 int (*detach_mcast)(struct ib_qp *qp, union ib_gid *gid, u16 lid);2469 int (*detach_mcast)(struct ib_qp *qp, union ib_gid *gid, u16 lid);
2496 struct ib_xrcd *(*alloc_xrcd)(struct ib_device *device,2470 int (*alloc_xrcd)(struct ib_xrcd *xrcd, struct ib_udata *udata);
2497 struct ib_udata *udata);2471 void (*dealloc_xrcd)(struct ib_xrcd *xrcd, struct ib_udata *udata);
2498 int (*dealloc_xrcd)(struct ib_xrcd *xrcd, struct ib_udata *udata);
2499 struct ib_flow *(*create_flow)(struct ib_qp *qp,2472 struct ib_flow *(*create_flow)(struct ib_qp *qp,
2500 struct ib_flow_attr *flow_attr,2473 struct ib_flow_attr *flow_attr,
2501 int domain, struct ib_udata *udata);2474 int domain, struct ib_udata *udata);
@@ -2539,9 +2512,9 @@ struct ib_device_ops { · 37 unmodified lines
2539 struct ib_mr *(*reg_dm_mr)(struct ib_pd *pd, struct ib_dm *dm,2512 struct ib_mr *(*reg_dm_mr)(struct ib_pd *pd, struct ib_dm *dm,
2540 struct ib_dm_mr_attr *attr,2513 struct ib_dm_mr_attr *attr,
2541 struct uverbs_attr_bundle *attrs);2514 struct uverbs_attr_bundle *attrs);
2542 struct ib_counters *(*create_counters)(2515 int (*create_counters)(struct ib_counters *counters,
2543 struct ib_device *device, struct uverbs_attr_bundle *attrs);2516 struct uverbs_attr_bundle *attrs);
2544 int (*destroy_counters)(struct ib_counters *counters);2517 void (*destroy_counters)(struct ib_counters *counters);
2545 int (*read_counters)(struct ib_counters *counters,2518 int (*read_counters)(struct ib_counters *counters,
2546 struct ib_counters_read_attr *counters_read_attr,2519 struct ib_counters_read_attr *counters_read_attr,
2547 struct uverbs_attr_bundle *attrs);2520 struct uverbs_attr_bundle *attrs);
@@ -2581,8 +2554,13 @@ struct ib_device_ops { · 33 unmodified lines
2581 /**2554 /**
2582 * Allows rdma drivers to add their own restrack attributes.2555 * Allows rdma drivers to add their own restrack attributes.
2583 */2556 */
2584 int (*fill_res_entry)(struct sk_buff *msg,2557 int (*fill_res_mr_entry)(struct sk_buff *msg, struct ib_mr *ibmr);
2585 struct rdma_restrack_entry *entry);2558 int (*fill_res_mr_entry_raw)(struct sk_buff *msg, struct ib_mr *ibmr);
2559 int (*fill_res_cq_entry)(struct sk_buff *msg, struct ib_cq *ibcq);
2560 int (*fill_res_cq_entry_raw)(struct sk_buff *msg, struct ib_cq *ibcq);
2561 int (*fill_res_qp_entry)(struct sk_buff *msg, struct ib_qp *ibqp);
2562 int (*fill_res_qp_entry_raw)(struct sk_buff *msg, struct ib_qp *ibqp);
2563 int (*fill_res_cm_id_entry)(struct sk_buff *msg, struct rdma_cm_id *id);
2586 2564
2587 /* Device lifecycle callbacks */2565 /* Device lifecycle callbacks */
2588 /*2566 /*
@@ -2637,14 +2615,19 @@ struct ib_device_ops { · 48 unmodified lines
2637 * Allows rdma drivers to add their own restrack attributes2615 * Allows rdma drivers to add their own restrack attributes
2638 * dumped via 'rdma stat' iproute2 command.2616 * dumped via 'rdma stat' iproute2 command.
2639 */2617 */
2640 int (*fill_stat_entry)(struct sk_buff *msg,2618 int (*fill_stat_mr_entry)(struct sk_buff *msg, struct ib_mr *ibmr);
2641 struct rdma_restrack_entry *entry);2619
2620 /* query driver for its ucontext properties */
2621 int (*query_ucontext)(struct ib_ucontext *context,
2622 struct uverbs_attr_bundle *attrs);
2642 2623
2643 DECLARE_RDMA_OBJ_SIZE(ib_ah);2624 DECLARE_RDMA_OBJ_SIZE(ib_ah);
2625 DECLARE_RDMA_OBJ_SIZE(ib_counters);
2644 DECLARE_RDMA_OBJ_SIZE(ib_cq);2626 DECLARE_RDMA_OBJ_SIZE(ib_cq);
2645 DECLARE_RDMA_OBJ_SIZE(ib_pd);2627 DECLARE_RDMA_OBJ_SIZE(ib_pd);
2646 DECLARE_RDMA_OBJ_SIZE(ib_srq);2628 DECLARE_RDMA_OBJ_SIZE(ib_srq);
2647 DECLARE_RDMA_OBJ_SIZE(ib_ucontext);2629 DECLARE_RDMA_OBJ_SIZE(ib_ucontext);
2630 DECLARE_RDMA_OBJ_SIZE(ib_xrcd);
2648};2631};
2649 2632
2650struct ib_core_device {2633struct ib_core_device {
@@ -4263,14 +4246,8 @@ static inline int ib_dereg_mr(struct ib_mr *mr) · 1612 unmodified lines
4263 return ib_dereg_mr_user(mr, NULL);4246 return ib_dereg_mr_user(mr, NULL);
4264}4247}
4265 4248
4266struct ib_mr *ib_alloc_mr_user(struct ib_pd *pd, enum ib_mr_type mr_type,4249struct ib_mr *ib_alloc_mr(struct ib_pd *pd, enum ib_mr_type mr_type,
4267 u32 max_num_sg, struct ib_udata *udata);4250 u32 max_num_sg);
4268
4269static inline struct ib_mr *ib_alloc_mr(struct ib_pd *pd,
4270 enum ib_mr_type mr_type, u32 max_num_sg)
4271{
4272 return ib_alloc_mr_user(pd, mr_type, max_num_sg, NULL);
4273}
4274 4251
4275struct ib_mr *ib_alloc_mr_integrity(struct ib_pd *pd,4252struct ib_mr *ib_alloc_mr_integrity(struct ib_pd *pd,
4276 u32 max_num_data_sg,4253 u32 max_num_data_sg,
@@ -4321,21 +4298,9 @@ int ib_attach_mcast(struct ib_qp *qp, union ib_gid *gid, u16 lid); · 44 unmodified lines
4321 */4298 */
4322int ib_detach_mcast(struct ib_qp *qp, union ib_gid *gid, u16 lid);4299int ib_detach_mcast(struct ib_qp *qp, union ib_gid *gid, u16 lid);
4323 4300
4324/**4301struct ib_xrcd *ib_alloc_xrcd_user(struct ib_device *device,
4325 * ib_alloc_xrcd - Allocates an XRC domain.4302 struct inode *inode, struct ib_udata *udata);
4326 * @device: The device on which to allocate the XRC domain.4303int ib_dealloc_xrcd_user(struct ib_xrcd *xrcd, struct ib_udata *udata);
4327 * @caller: Module name for kernel consumers
4328 */
4329struct ib_xrcd *__ib_alloc_xrcd(struct ib_device *device, const char *caller);
4330#define ib_alloc_xrcd(device) \
4331 __ib_alloc_xrcd((device), KBUILD_MODNAME)
4332
4333/**
4334 * ib_dealloc_xrcd - Deallocates an XRC domain.
4335 * @xrcd: The XRC domain to deallocate.
4336 * @udata: Valid user data or NULL for kernel object
4337 */
4338int ib_dealloc_xrcd(struct ib_xrcd *xrcd, struct ib_udata *udata);
4339 4304
4340static inline int ib_check_mr_access(int flags)4305static inline int ib_check_mr_access(int flags)
4341{4306{
@@ -4417,9 +4382,6 @@ struct ib_wq *ib_create_wq(struct ib_pd *pd, · 75 unmodified lines
4417int ib_destroy_wq(struct ib_wq *wq, struct ib_udata *udata);4382int ib_destroy_wq(struct ib_wq *wq, struct ib_udata *udata);
4418int ib_modify_wq(struct ib_wq *wq, struct ib_wq_attr *attr,4383int ib_modify_wq(struct ib_wq *wq, struct ib_wq_attr *attr,
4419 u32 wq_attr_mask);4384 u32 wq_attr_mask);
4420struct ib_rwq_ind_table *ib_create_rwq_ind_table(struct ib_device *device,
4421 struct ib_rwq_ind_table_init_attr*
4422 wq_ind_table_init_attr);
4423int ib_destroy_rwq_ind_table(struct ib_rwq_ind_table *wq_ind_table);4385int ib_destroy_rwq_ind_table(struct ib_rwq_ind_table *wq_ind_table);
4424 4386
4425int ib_map_mr_sg(struct ib_mr *mr, struct scatterlist *sg, int sg_nents,4387int ib_map_mr_sg(struct ib_mr *mr, struct scatterlist *sg, int sg_nents,
include/rdma/iw_cm.h+2−28
@@ -1,35 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2005 Network Appliance, Inc. All rights reserved.3 * Copyright (c) 2005 Network Appliance, Inc. All rights reserved.
3 * Copyright (c) 2005 Open Grid Computing, Inc. All rights reserved.4 * Copyright (c) 2005 Open Grid Computing, Inc. All rights reserved.
4 *
5 * This software is available to you under a choice of one of two
6 * licenses. You may choose to be licensed under the terms of the GNU
7 * General Public License (GPL) Version 2, available from the file
8 * COPYING in the main directory of this source tree, or the
9 * OpenIB.org BSD license below:
10 *
11 * Redistribution and use in source and binary forms, with or
12 * without modification, are permitted provided that the following
13 * conditions are met:
14 *
15 * - Redistributions of source code must retain the above
16 * copyright notice, this list of conditions and the following
17 * disclaimer.
18 *
19 * - Redistributions in binary form must reproduce the above
20 * copyright notice, this list of conditions and the following
21 * disclaimer in the documentation and/or other materials
22 * provided with the distribution.
23 *
24 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
25 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
26 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
27 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
28 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
29 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
30 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
31 * SOFTWARE.
32 */5 */
6
33#ifndef IW_CM_H7#ifndef IW_CM_H
34#define IW_CM_H8#define IW_CM_H
35 9
include/rdma/iw_portmap.h+2−28
@@ -1,35 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2014 Intel Corporation. All rights reserved.3 * Copyright (c) 2014 Intel Corporation. All rights reserved.
3 * Copyright (c) 2014 Chelsio, Inc. All rights reserved.4 * Copyright (c) 2014 Chelsio, Inc. All rights reserved.
4 *
5 * This software is available to you under a choice of one of two
6 * licenses. You may choose to be licensed under the terms of the GNU
7 * General Public License (GPL) Version 2, available from the file
8 * COPYING in the main directory of this source tree, or the
9 * OpenIB.org BSD license below:
10 *
11 * Redistribution and use in source and binary forms, with or
12 * without modification, are permitted provided that the following
13 * conditions are met:
14 *
15 * - Redistributions of source code must retain the above
16 * copyright notice, this list of conditions and the following
17 * disclaimer.
18 *
19 * - Redistributions in binary form must reproduce the above
20 * copyright notice, this list of conditions and the following
21 * disclaimer in the documentation and/or other materials
22 * provided with the distribution.
23 *
24 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
25 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
26 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
27 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
28 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
29 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
30 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
31 * SOFTWARE.
32 */5 */
6
33#ifndef _IW_PORTMAP_H7#ifndef _IW_PORTMAP_H
34#define _IW_PORTMAP_H8#define _IW_PORTMAP_H
35 9
include/rdma/opa_addr.h+1−43
@@ -1,48 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
1/*2/*
2 * Copyright(c) 2017 Intel Corporation.3 * Copyright(c) 2017 Intel Corporation.
3 *
4 * This file is provided under a dual BSD/GPLv2 license. When using or
5 * redistributing this file, you may do so under either license.
6 *
7 * GPL LICENSE SUMMARY
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of version 2 of the GNU General Public License as
11 * published by the Free Software Foundation.
12 *
13 * This program is distributed in the hope that it will be useful, but
14 * WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * General Public License for more details.
17 *
18 * BSD LICENSE
19 *
20 * Redistribution and use in source and binary forms, with or without
21 * modification, are permitted provided that the following conditions
22 * are met:
23 *
24 * - Redistributions of source code must retain the above copyright
25 * notice, this list of conditions and the following disclaimer.
26 * - Redistributions in binary form must reproduce the above copyright
27 * notice, this list of conditions and the following disclaimer in
28 * the documentation and/or other materials provided with the
29 * distribution.
30 * - Neither the name of Intel Corporation nor the names of its
31 * contributors may be used to endorse or promote products derived
32 * from this software without specific prior written permission.
33 *
34 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
35 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
36 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
37 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
38 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
39 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
40 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
41 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
42 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
43 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
44 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
45 *
46 */4 */
47 5
48#ifndef OPA_ADDR_H6#ifndef OPA_ADDR_H
include/rdma/opa_port_info.h+2−29
@@ -1,36 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2014-2020 Intel Corporation. All rights reserved.3 * Copyright (c) 2014-2020 Intel Corporation. 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 */4 */
32 5
33#if !defined(OPA_PORT_INFO_H)6#ifndef OPA_PORT_INFO_H
34#define OPA_PORT_INFO_H7#define OPA_PORT_INFO_H
35 8
36#include <rdma/opa_smi.h>9#include <rdma/opa_smi.h>
include/rdma/opa_smi.h+2−29
@@ -1,36 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2014 Intel Corporation. All rights reserved.3 * Copyright (c) 2014 Intel Corporation. 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 */4 */
32 5
33#if !defined(OPA_SMI_H)6#ifndef OPA_SMI_H
34#define OPA_SMI_H7#define OPA_SMI_H
35 8
36#include <rdma/ib_mad.h>9#include <rdma/ib_mad.h>
include/rdma/opa_vnic.h+4−45
@@ -1,52 +1,11 @@
1#ifndef _OPA_VNIC_H1/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
2#define _OPA_VNIC_H
3/*2/*
4 * Copyright(c) 2017 - 2020 Intel Corporation.3 * Copyright(c) 2017 - 2020 Intel Corporation.
5 *
6 * This file is provided under a dual BSD/GPLv2 license. When using or
7 * redistributing this file, you may do so under either license.
8 *
9 * GPL LICENSE SUMMARY
10 *
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of version 2 of the GNU General Public License as
13 * published by the Free Software Foundation.
14 *
15 * This program is distributed in the hope that it will be useful, but
16 * WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 * General Public License for more details.
19 *
20 * BSD LICENSE
21 *
22 * Redistribution and use in source and binary forms, with or without
23 * modification, are permitted provided that the following conditions
24 * are met:
25 *
26 * - Redistributions of source code must retain the above copyright
27 * notice, this list of conditions and the following disclaimer.
28 * - Redistributions in binary form must reproduce the above copyright
29 * notice, this list of conditions and the following disclaimer in
30 * the documentation and/or other materials provided with the
31 * distribution.
32 * - Neither the name of Intel Corporation nor the names of its
33 * contributors may be used to endorse or promote products derived
34 * from this software without specific prior written permission.
35 *
36 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
37 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
38 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
39 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
40 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
41 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
42 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
43 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
44 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
45 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
46 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
47 *
48 */4 */
49 5
6#ifndef _OPA_VNIC_H
7#define _OPA_VNIC_H
8
50/*9/*
51 * This file contains Intel Omni-Path (OPA) Virtual Network Interface10 * This file contains Intel Omni-Path (OPA) Virtual Network Interface
52 * Controller (VNIC) specific declarations.11 * Controller (VNIC) specific declarations.
include/rdma/rdma_cm.h+2−29
@@ -1,37 +1,10 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2005 Voltaire Inc. All rights reserved.3 * Copyright (c) 2005 Voltaire Inc. All rights reserved.
3 * Copyright (c) 2005 Intel Corporation. All rights reserved.4 * Copyright (c) 2005 Intel Corporation. All rights reserved.
4 *
5 * This software is available to you under a choice of one of two
6 * licenses. You may choose to be licensed under the terms of the GNU
7 * General Public License (GPL) Version 2, available from the file
8 * COPYING in the main directory of this source tree, or the
9 * OpenIB.org BSD license below:
10 *
11 * Redistribution and use in source and binary forms, with or
12 * without modification, are permitted provided that the following
13 * conditions are met:
14 *
15 * - Redistributions of source code must retain the above
16 * copyright notice, this list of conditions and the following
17 * disclaimer.
18 *
19 * - Redistributions in binary form must reproduce the above
20 * copyright notice, this list of conditions and the following
21 * disclaimer in the documentation and/or other materials
22 * provided with the distribution.
23 *
24 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
25 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
26 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
27 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
28 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
29 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
30 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
31 * SOFTWARE.
32 */5 */
33 6
34#if !defined(RDMA_CM_H)7#ifndef RDMA_CM_H
35#define RDMA_CM_H8#define RDMA_CM_H
36 9
37#include <linux/socket.h>10#include <linux/socket.h>
include/rdma/rdma_cm_ib.h+2−29
@@ -1,36 +1,9 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2006 Intel Corporation. All rights reserved.3 * Copyright (c) 2006 Intel Corporation. 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 */4 */
32 5
33#if !defined(RDMA_CM_IB_H)6#ifndef RDMA_CM_IB_H
34#define RDMA_CM_IB_H7#define RDMA_CM_IB_H
35 8
36#include <rdma/rdma_cm.h>9#include <rdma/rdma_cm.h>
include/rdma/rdma_netlink.h+1−1
@@ -1,8 +1,8 @@
1/* SPDX-License-Identifier: GPL-2.0 */1/* SPDX-License-Identifier: GPL-2.0 */
2
2#ifndef _RDMA_NETLINK_H3#ifndef _RDMA_NETLINK_H
3#define _RDMA_NETLINK_H4#define _RDMA_NETLINK_H
4 5
5
6#include <linux/netlink.h>6#include <linux/netlink.h>
7#include <uapi/rdma/rdma_netlink.h>7#include <uapi/rdma/rdma_netlink.h>
8 8
include/rdma/rdma_vt.h+4−46
@@ -1,53 +1,11 @@
1#ifndef DEF_RDMA_VT_H1/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
2#define DEF_RDMA_VT_H
3
4/*2/*
5 * Copyright(c) 2016 - 2019 Intel Corporation.3 * Copyright(c) 2016 - 2019 Intel Corporation.
6 *
7 * This file is provided under a dual BSD/GPLv2 license. When using or
8 * redistributing this file, you may do so under either license.
9 *
10 * GPL LICENSE SUMMARY
11 *
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of version 2 of the GNU General Public License as
14 * published by the Free Software Foundation.
15 *
16 * This program is distributed in the hope that it will be useful, but
17 * WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 * General Public License for more details.
20 *
21 * BSD LICENSE
22 *
23 * Redistribution and use in source and binary forms, with or without
24 * modification, are permitted provided that the following conditions
25 * are met:
26 *
27 * - Redistributions of source code must retain the above copyright
28 * notice, this list of conditions and the following disclaimer.
29 * - Redistributions in binary form must reproduce the above copyright
30 * notice, this list of conditions and the following disclaimer in
31 * the documentation and/or other materials provided with the
32 * distribution.
33 * - Neither the name of Intel Corporation nor the names of its
34 * contributors may be used to endorse or promote products derived
35 * from this software without specific prior written permission.
36 *
37 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
38 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
39 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
40 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
41 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
42 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
43 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
44 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
45 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
46 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
47 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
48 *
49 */4 */
50 5
6#ifndef DEF_RDMA_VT_H
7#define DEF_RDMA_VT_H
8
51/*9/*
52 * Structure that low level drivers will populate in order to register with the10 * Structure that low level drivers will populate in order to register with the
53 * rdmavt layer.11 * rdmavt layer.
include/rdma/rdmavt_cq.h+4−49
@@ -1,56 +1,11 @@
1#ifndef DEF_RDMAVT_INCCQ_H1/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
2#define DEF_RDMAVT_INCCQ_H
3
4/*2/*
5 *
6 * This file is provided under a dual BSD/GPLv2 license. When using or
7 * redistributing this file, you may do so under either license.
8 *
9 * GPL LICENSE SUMMARY
10 *
11 * Copyright(c) 2016 - 2018 Intel Corporation.3 * Copyright(c) 2016 - 2018 Intel Corporation.
12 *
13 * This program is free software; you can redistribute it and/or modify
14 * it under the terms of version 2 of the GNU General Public License as
15 * published by the Free Software Foundation.
16 *
17 * This program is distributed in the hope that it will be useful, but
18 * WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20 * General Public License for more details.
21 *
22 * BSD LICENSE
23 *
24 * Copyright(c) 2015 Intel Corporation.
25 *
26 * Redistribution and use in source and binary forms, with or without
27 * modification, are permitted provided that the following conditions
28 * are met:
29 *
30 * - Redistributions of source code must retain the above copyright
31 * notice, this list of conditions and the following disclaimer.
32 * - Redistributions in binary form must reproduce the above copyright
33 * notice, this list of conditions and the following disclaimer in
34 * the documentation and/or other materials provided with the
35 * distribution.
36 * - Neither the name of Intel Corporation nor the names of its
37 * contributors may be used to endorse or promote products derived
38 * from this software without specific prior written permission.
39 *
40 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
41 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
42 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
43 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
44 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
45 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
46 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
47 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
48 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
49 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
50 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
51 *
52 */4 */
53 5
6#ifndef DEF_RDMAVT_INCCQ_H
7#define DEF_RDMAVT_INCCQ_H
8
54#include <linux/kthread.h>9#include <linux/kthread.h>
55#include <rdma/ib_user_verbs.h>10#include <rdma/ib_user_verbs.h>
56#include <rdma/ib_verbs.h>11#include <rdma/ib_verbs.h>
include/rdma/rdmavt_mr.h+4−46
@@ -1,53 +1,11 @@
1#ifndef DEF_RDMAVT_INCMR_H1/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
2#define DEF_RDMAVT_INCMR_H
3
4/*2/*
5 * Copyright(c) 2016 Intel Corporation.3 * Copyright(c) 2016 Intel Corporation.
6 *
7 * This file is provided under a dual BSD/GPLv2 license. When using or
8 * redistributing this file, you may do so under either license.
9 *
10 * GPL LICENSE SUMMARY
11 *
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of version 2 of the GNU General Public License as
14 * published by the Free Software Foundation.
15 *
16 * This program is distributed in the hope that it will be useful, but
17 * WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 * General Public License for more details.
20 *
21 * BSD LICENSE
22 *
23 * Redistribution and use in source and binary forms, with or without
24 * modification, are permitted provided that the following conditions
25 * are met:
26 *
27 * - Redistributions of source code must retain the above copyright
28 * notice, this list of conditions and the following disclaimer.
29 * - Redistributions in binary form must reproduce the above copyright
30 * notice, this list of conditions and the following disclaimer in
31 * the documentation and/or other materials provided with the
32 * distribution.
33 * - Neither the name of Intel Corporation nor the names of its
34 * contributors may be used to endorse or promote products derived
35 * from this software without specific prior written permission.
36 *
37 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
38 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
39 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
40 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
41 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
42 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
43 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
44 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
45 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
46 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
47 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
48 *
49 */4 */
50 5
6#ifndef DEF_RDMAVT_INCMR_H
7#define DEF_RDMAVT_INCMR_H
8
51/*9/*
52 * For Memory Regions. This stuff should probably be moved into rdmavt/mr.h once10 * For Memory Regions. This stuff should probably be moved into rdmavt/mr.h once
53 * drivers no longer need access to the MR directly.11 * drivers no longer need access to the MR directly.
include/rdma/rdmavt_qp.h+4−46
@@ -1,53 +1,11 @@
1#ifndef DEF_RDMAVT_INCQP_H1/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
2#define DEF_RDMAVT_INCQP_H
3
4/*2/*
5 * Copyright(c) 2016 - 2020 Intel Corporation.3 * Copyright(c) 2016 - 2020 Intel Corporation.
6 *
7 * This file is provided under a dual BSD/GPLv2 license. When using or
8 * redistributing this file, you may do so under either license.
9 *
10 * GPL LICENSE SUMMARY
11 *
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of version 2 of the GNU General Public License as
14 * published by the Free Software Foundation.
15 *
16 * This program is distributed in the hope that it will be useful, but
17 * WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 * General Public License for more details.
20 *
21 * BSD LICENSE
22 *
23 * Redistribution and use in source and binary forms, with or without
24 * modification, are permitted provided that the following conditions
25 * are met:
26 *
27 * - Redistributions of source code must retain the above copyright
28 * notice, this list of conditions and the following disclaimer.
29 * - Redistributions in binary form must reproduce the above copyright
30 * notice, this list of conditions and the following disclaimer in
31 * the documentation and/or other materials provided with the
32 * distribution.
33 * - Neither the name of Intel Corporation nor the names of its
34 * contributors may be used to endorse or promote products derived
35 * from this software without specific prior written permission.
36 *
37 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
38 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
39 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
40 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
41 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
42 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
43 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
44 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
45 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
46 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
47 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
48 *
49 */4 */
50 5
6#ifndef DEF_RDMAVT_INCQP_H
7#define DEF_RDMAVT_INCQP_H
8
51#include <rdma/rdma_vt.h>9#include <rdma/rdma_vt.h>
52#include <rdma/ib_pack.h>10#include <rdma/ib_pack.h>
53#include <rdma/ib_verbs.h>11#include <rdma/ib_verbs.h>
include/rdma/uverbs_ioctl.h+2−28
@@ -1,33 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2017, Mellanox Technologies inc. All rights reserved.3 * 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 */4 */
32 5
33#ifndef _UVERBS_IOCTL_6#ifndef _UVERBS_IOCTL_
@@ -652,6 +625,7 @@ struct uverbs_attr_bundle { · 618 unmodified lines
652 struct ib_udata ucore;625 struct ib_udata ucore;
653 struct ib_uverbs_file *ufile;626 struct ib_uverbs_file *ufile;
654 struct ib_ucontext *context;627 struct ib_ucontext *context;
628 struct ib_uobject *uobject;
655 DECLARE_BITMAP(attr_present, UVERBS_API_ATTR_BKEY_LEN);629 DECLARE_BITMAP(attr_present, UVERBS_API_ATTR_BKEY_LEN);
656 struct uverbs_attr attrs[];630 struct uverbs_attr attrs[];
657};631};
include/rdma/uverbs_named_ioctl.h+1−28
@@ -1,33 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2018, Mellanox Technologies inc. All rights reserved.3 * Copyright (c) 2018, 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 */4 */
32 5
33#ifndef _UVERBS_NAMED_IOCTL_6#ifndef _UVERBS_NAMED_IOCTL_
include/rdma/uverbs_std_types.h+15−28
@@ -1,33 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2017, Mellanox Technologies inc. All rights reserved.3 * 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 */4 */
32 5
33#ifndef _UVERBS_STD_TYPES__6#ifndef _UVERBS_STD_TYPES__
@@ -110,6 +83,20 @@ static inline void uobj_alloc_abort(struct ib_uobject *uobj, · 76 unmodified lines
110 rdma_alloc_abort_uobject(uobj, attrs, false);83 rdma_alloc_abort_uobject(uobj, attrs, false);
111}84}
112 85
86static inline void uobj_finalize_uobj_create(struct ib_uobject *uobj,
87 struct uverbs_attr_bundle *attrs)
88{
89 /*
90 * Tell the core code that the write() handler has completed
91 * initializing the object and that the core should commit or
92 * abort this object based upon the return code from the write()
93 * method. Similar to what uverbs_finalize_uobj_create() does for
94 * ioctl()
95 */
96 WARN_ON(attrs->uobject);
97 attrs->uobject = uobj;
98}
99
113static inline struct ib_uobject *100static inline struct ib_uobject *
114__uobj_alloc(const struct uverbs_api_object *obj,101__uobj_alloc(const struct uverbs_api_object *obj,
115 struct uverbs_attr_bundle *attrs, struct ib_device **ib_dev)102 struct uverbs_attr_bundle *attrs, struct ib_device **ib_dev)
include/rdma/uverbs_types.h+1−28
@@ -1,33 +1,6 @@
1/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
1/*2/*
2 * Copyright (c) 2017, Mellanox Technologies inc. All rights reserved.3 * 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 */4 */
32 5
33#ifndef _UVERBS_TYPES_6#ifndef _UVERBS_TYPES_
include/uapi/rdma/efa-abi.h+14−1
@@ -1,6 +1,6 @@
1/* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-2-Clause) */1/* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-2-Clause) */
2/*2/*
3 * Copyright 2018-2019 Amazon.com, Inc. or its affiliates. All rights reserved.3 * Copyright 2018-2020 Amazon.com, Inc. or its affiliates. All rights reserved.
4 */4 */
5 5
6#ifndef EFA_ABI_USER_H6#ifndef EFA_ABI_USER_H
@@ -20,6 +20,16 @@ · 13 unmodified lines
20 * hex bit offset of the field.20 * hex bit offset of the field.
21 */21 */
22 22
23enum {
24 EFA_ALLOC_UCONTEXT_CMD_COMP_TX_BATCH = 1 << 0,
25 EFA_ALLOC_UCONTEXT_CMD_COMP_MIN_SQ_WR = 1 << 1,
26};
27
28struct efa_ibv_alloc_ucontext_cmd {
29 __u32 comp_mask;
30 __u8 reserved_20[4];
31};
32
23enum efa_ibv_user_cmds_supp_udata {33enum efa_ibv_user_cmds_supp_udata {
24 EFA_USER_CMDS_SUPP_UDATA_QUERY_DEVICE = 1 << 0,34 EFA_USER_CMDS_SUPP_UDATA_QUERY_DEVICE = 1 << 0,
25 EFA_USER_CMDS_SUPP_UDATA_CREATE_AH = 1 << 1,35 EFA_USER_CMDS_SUPP_UDATA_CREATE_AH = 1 << 1,
@@ -31,6 +41,9 @@ struct efa_ibv_alloc_ucontext_resp { · 5 unmodified lines
31 __u16 sub_cqs_per_cq;41 __u16 sub_cqs_per_cq;
32 __u16 inline_buf_size;42 __u16 inline_buf_size;
33 __u32 max_llq_size; /* bytes */43 __u32 max_llq_size; /* bytes */
44 __u16 max_tx_batch; /* units of 64 bytes */
45 __u16 min_sq_wr;
46 __u8 reserved_a0[4];
34};47};
35 48
36struct efa_ibv_alloc_pd_resp {49struct efa_ibv_alloc_pd_resp {
include/uapi/rdma/ib_user_ioctl_cmds.h+15−0
@@ -69,6 +69,7 @@ enum uverbs_methods_device { · 68 unmodified lines
69 UVERBS_METHOD_INFO_HANDLES,69 UVERBS_METHOD_INFO_HANDLES,
70 UVERBS_METHOD_QUERY_PORT,70 UVERBS_METHOD_QUERY_PORT,
71 UVERBS_METHOD_GET_CONTEXT,71 UVERBS_METHOD_GET_CONTEXT,
72 UVERBS_METHOD_QUERY_CONTEXT,
72};73};
73 74
74enum uverbs_attrs_invoke_write_cmd_attr_ids {75enum uverbs_attrs_invoke_write_cmd_attr_ids {
@@ -87,6 +88,11 @@ enum uverbs_attrs_get_context_attr_ids { · 12 unmodified lines
87 UVERBS_ATTR_GET_CONTEXT_CORE_SUPPORT,88 UVERBS_ATTR_GET_CONTEXT_CORE_SUPPORT,
88};89};
89 90
91enum uverbs_attrs_query_context_attr_ids {
92 UVERBS_ATTR_QUERY_CONTEXT_NUM_COMP_VECTORS,
93 UVERBS_ATTR_QUERY_CONTEXT_CORE_SUPPORT,
94};
95
90enum uverbs_attrs_create_cq_cmd_attr_ids {96enum uverbs_attrs_create_cq_cmd_attr_ids {
91 UVERBS_ATTR_CREATE_CQ_HANDLE,97 UVERBS_ATTR_CREATE_CQ_HANDLE,
92 UVERBS_ATTR_CREATE_CQ_CQE,98 UVERBS_ATTR_CREATE_CQ_CQE,
@@ -242,6 +248,7 @@ enum uverbs_methods_mr { · 149 unmodified lines
242 UVERBS_METHOD_DM_MR_REG,248 UVERBS_METHOD_DM_MR_REG,
243 UVERBS_METHOD_MR_DESTROY,249 UVERBS_METHOD_MR_DESTROY,
244 UVERBS_METHOD_ADVISE_MR,250 UVERBS_METHOD_ADVISE_MR,
251 UVERBS_METHOD_QUERY_MR,
245};252};
246 253
247enum uverbs_attrs_mr_destroy_ids {254enum uverbs_attrs_mr_destroy_ids {
@@ -255,6 +262,14 @@ enum uverbs_attrs_advise_mr_cmd_attr_ids { · 7 unmodified lines
255 UVERBS_ATTR_ADVISE_MR_SGE_LIST,262 UVERBS_ATTR_ADVISE_MR_SGE_LIST,
256};263};
257 264
265enum uverbs_attrs_query_mr_cmd_attr_ids {
266 UVERBS_ATTR_QUERY_MR_HANDLE,
267 UVERBS_ATTR_QUERY_MR_RESP_LKEY,
268 UVERBS_ATTR_QUERY_MR_RESP_RKEY,
269 UVERBS_ATTR_QUERY_MR_RESP_LENGTH,
270 UVERBS_ATTR_QUERY_MR_RESP_IOVA,
271};
272
258enum uverbs_attrs_create_counters_cmd_attr_ids {273enum uverbs_attrs_create_counters_cmd_attr_ids {
259 UVERBS_ATTR_CREATE_COUNTERS_HANDLE,274 UVERBS_ATTR_CREATE_COUNTERS_HANDLE,
260};275};
include/uapi/rdma/mlx5_user_ioctl_cmds.h+15−1
@@ -228,6 +228,10 @@ enum mlx5_ib_flow_matcher_methods { · 227 unmodified lines
228 MLX5_IB_METHOD_FLOW_MATCHER_DESTROY,228 MLX5_IB_METHOD_FLOW_MATCHER_DESTROY,
229};229};
230 230
231enum mlx5_ib_device_query_context_attrs {
232 MLX5_IB_ATTR_QUERY_CONTEXT_RESP_UCTX = (1U << UVERBS_ID_NS_SHIFT),
233};
234
231#define MLX5_IB_DW_MATCH_PARAM 0x80235#define MLX5_IB_DW_MATCH_PARAM 0x80
232 236
233struct mlx5_ib_match_params {237struct mlx5_ib_match_params {
@@ -259,7 +263,7 @@ enum mlx5_ib_create_flow_attrs { · 25 unmodified lines
259 MLX5_IB_ATTR_CREATE_FLOW_FLAGS,263 MLX5_IB_ATTR_CREATE_FLOW_FLAGS,
260};264};
261 265
262enum mlx5_ib_destoy_flow_attrs {266enum mlx5_ib_destroy_flow_attrs {
263 MLX5_IB_ATTR_DESTROY_FLOW_HANDLE = (1U << UVERBS_ID_NS_SHIFT),267 MLX5_IB_ATTR_DESTROY_FLOW_HANDLE = (1U << UVERBS_ID_NS_SHIFT),
264};268};
265 269
@@ -286,4 +290,14 @@ enum mlx5_ib_create_flow_action_create_packet_reformat_attrs { · 20 unmodified lines
286 MLX5_IB_ATTR_CREATE_PACKET_REFORMAT_DATA_BUF,290 MLX5_IB_ATTR_CREATE_PACKET_REFORMAT_DATA_BUF,
287};291};
288 292
293enum mlx5_ib_query_pd_attrs {
294 MLX5_IB_ATTR_QUERY_PD_HANDLE = (1U << UVERBS_ID_NS_SHIFT),
295 MLX5_IB_ATTR_QUERY_PD_RESP_PDN,
296};
297
298enum mlx5_ib_pd_methods {
299 MLX5_IB_METHOD_PD_QUERY = (1U << UVERBS_ID_NS_SHIFT),
300
301};
302
289#endif303#endif
include/uapi/rdma/qedr-abi.h+7−3
@@ -39,8 +39,9 @@ · 38 unmodified lines
39 39
40/* user kernel communication data structures. */40/* user kernel communication data structures. */
41enum qedr_alloc_ucontext_flags {41enum qedr_alloc_ucontext_flags {
42 QEDR_ALLOC_UCTX_RESERVED = 1 << 0,42 QEDR_ALLOC_UCTX_EDPM_MODE = 1 << 0,
43 QEDR_ALLOC_UCTX_DB_REC = 1 << 143 QEDR_ALLOC_UCTX_DB_REC = 1 << 1,
44 QEDR_SUPPORT_DPM_SIZES = 1 << 2,
44};45};
45 46
46struct qedr_alloc_ucontext_req {47struct qedr_alloc_ucontext_req {
@@ -50,13 +51,14 @@ struct qedr_alloc_ucontext_req { · 3 unmodified lines
50 51
51#define QEDR_LDPM_MAX_SIZE (8192)52#define QEDR_LDPM_MAX_SIZE (8192)
52#define QEDR_EDPM_TRANS_SIZE (64)53#define QEDR_EDPM_TRANS_SIZE (64)
54#define QEDR_EDPM_MAX_SIZE (ROCE_REQ_MAX_INLINE_DATA_SIZE)
53 55
54enum qedr_rdma_dpm_type {56enum qedr_rdma_dpm_type {
55 QEDR_DPM_TYPE_NONE = 0,57 QEDR_DPM_TYPE_NONE = 0,
56 QEDR_DPM_TYPE_ROCE_ENHANCED = 1 << 0,58 QEDR_DPM_TYPE_ROCE_ENHANCED = 1 << 0,
57 QEDR_DPM_TYPE_ROCE_LEGACY = 1 << 1,59 QEDR_DPM_TYPE_ROCE_LEGACY = 1 << 1,
58 QEDR_DPM_TYPE_IWARP_LEGACY = 1 << 2,60 QEDR_DPM_TYPE_IWARP_LEGACY = 1 << 2,
59 QEDR_DPM_TYPE_RESERVED = 1 << 3,61 QEDR_DPM_TYPE_ROCE_EDPM_MODE = 1 << 3,
60 QEDR_DPM_SIZES_SET = 1 << 4,62 QEDR_DPM_SIZES_SET = 1 << 4,
61};63};
62 64
@@ -77,6 +79,8 @@ struct qedr_alloc_ucontext_resp { · 14 unmodified lines
77 __u16 ldpm_limit_size;79 __u16 ldpm_limit_size;
78 __u8 edpm_trans_size;80 __u8 edpm_trans_size;
79 __u8 reserved;81 __u8 reserved;
82 __u16 edpm_limit_size;
83 __u8 padding[6];
80};84};
81 85
82struct qedr_alloc_pd_ureq {86struct qedr_alloc_pd_ureq {
include/uapi/rdma/rdma_netlink.h+9−0
@@ -287,6 +287,12 @@ enum rdma_nldev_command { · 286 unmodified lines
287 287
288 RDMA_NLDEV_CMD_STAT_DEL,288 RDMA_NLDEV_CMD_STAT_DEL,
289 289
290 RDMA_NLDEV_CMD_RES_QP_GET_RAW,
291
292 RDMA_NLDEV_CMD_RES_CQ_GET_RAW,
293
294 RDMA_NLDEV_CMD_RES_MR_GET_RAW,
295
290 RDMA_NLDEV_NUM_OPS296 RDMA_NLDEV_NUM_OPS
291};297};
292 298
@@ -525,6 +531,8 @@ enum rdma_nldev_attr { · 232 unmodified lines
525 */531 */
526 RDMA_NLDEV_ATTR_DEV_DIM, /* u8 */532 RDMA_NLDEV_ATTR_DEV_DIM, /* u8 */
527 533
534 RDMA_NLDEV_ATTR_RES_RAW, /* binary */
535
528 /*536 /*
529 * Always the end537 * Always the end
530 */538 */
@@ -561,5 +569,6 @@ enum rdma_nl_counter_mode { · 30 unmodified lines
561 */569 */
562enum rdma_nl_counter_mask {570enum rdma_nl_counter_mask {
563 RDMA_COUNTER_MASK_QP_TYPE = 1,571 RDMA_COUNTER_MASK_QP_TYPE = 1,
572 RDMA_COUNTER_MASK_PID = 1 << 1,
564};573};
565#endif /* _UAPI_RDMA_NETLINK_H */574#endif /* _UAPI_RDMA_NETLINK_H */
include/uapi/rdma/rdma_user_ioctl.h+1−1
@@ -43,7 +43,7 @@ · 42 unmodified lines
43 43
44/*44/*
45 * General blocks assignments45 * General blocks assignments
46 * It is closed on purpose do not expose it it user space46 * It is closed on purpose - do not expose it to user space
47 * #define MAD_CMD_BASE 0x0047 * #define MAD_CMD_BASE 0x00
48 * #define HFI1_CMD_BAS 0xE048 * #define HFI1_CMD_BAS 0xE0
49 */49 */

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t