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 ...
Showing the changes to include (40 of 166 files). Show all
Unified · Split
| @@ -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 | ||
| 282 | enum { | 284 | enum { |
| @@ -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 | ||
| 1013 | struct mlx5_mkey_seg { | 1014 | struct 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)\ |
| @@ -975,6 +975,7 @@ void mlx5_register_debugfs(void); · 974 unmodified lines | |||
| 975 | void mlx5_unregister_debugfs(void); | 975 | void mlx5_unregister_debugfs(void); |
| 976 | 976 | ||
| 977 | void mlx5_fill_page_array(struct mlx5_frag_buf *buf, __be64 *pas); | 977 | void mlx5_fill_page_array(struct mlx5_frag_buf *buf, __be64 *pas); |
| 978 | void mlx5_fill_page_frag_array_perm(struct mlx5_frag_buf *buf, __be64 *pas, u8 perm); | ||
| 978 | void mlx5_fill_page_frag_array(struct mlx5_frag_buf *frag_buf, __be64 *pas); | 979 | void mlx5_fill_page_frag_array(struct mlx5_frag_buf *frag_buf, __be64 *pas); |
| 979 | int mlx5_vector2eqn(struct mlx5_core_dev *dev, int vector, int *eqn, | 980 | int 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 | |||
| 1057 | enum { | 1058 | enum { |
| 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 | ||
| 1062 | struct mlx5_interface { | 1064 | struct mlx5_interface { |
| @@ -93,6 +93,7 @@ enum { · 92 unmodified lines | |||
| 93 | 93 | ||
| 94 | enum { | 94 | enum { |
| 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 | ||
| 988 | struct mlx5_ifc_device_virtio_emulation_cap_bits { | 989 | struct 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 | ||
| 1001 | enum { | 1025 | enum { |
| @@ -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 | ||
| 3304 | struct mlx5_ifc_rqtc_bits { | 3335 | struct 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 | ||
| 7093 | struct mlx5_ifc_destroy_mkey_in_bits { | 7127 | struct 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 | ||
| 7789 | struct mlx5_ifc_create_mkey_in_bits { | 7825 | struct 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 | ||
| 10385 | struct 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 | |||
| 10397 | struct 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 | |||
| 10410 | struct 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 | |||
| 10349 | struct mlx5_ifc_create_uctx_in_bits { | 10419 | struct 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 | ||
| 10431 | struct 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 | |||
| 10361 | struct mlx5_ifc_destroy_uctx_in_bits { | 10443 | struct 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 | ||
| 10456 | struct 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 | |||
| 10374 | struct mlx5_ifc_create_sw_icm_in_bits { | 10465 | struct 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 | ||
| 10781 | enum { | ||
| 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 */ |
| @@ -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_H | 7 | #define _RDMA_IB_H |
| 35 | 8 | ||
| 36 | #include <linux/types.h> | 9 | #include <linux/types.h> |
| @@ -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_H | 8 | #define IB_ADDR_H |
| 36 | 9 | ||
| 37 | #include <linux/in.h> | 10 | #include <linux/in.h> |
| @@ -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_H | 8 | #ifndef _IB_CACHE_H |
| @@ -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_H | 10 | #ifndef IB_CM_H |
| 10 | #define IB_CM_H | 11 | #define IB_CM_H |
| 11 | 12 | ||
| @@ -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_H | 6 | #ifndef IB_HDRS_H |
| @@ -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_H | 11 | #define IB_MAD_H |
| 39 | 12 | ||
| 40 | #include <linux/list.h> | 13 | #include <linux/list.h> |
| @@ -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_H | 7 | #define IB_USER_MARSHALL_H |
| 35 | 8 | ||
| 36 | #include <rdma/ib_verbs.h> | 9 | #include <rdma/ib_verbs.h> |
| @@ -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_H | 6 | #ifndef IB_PACK_H |
| @@ -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_H | 9 | #define IB_PMA_H |
| 37 | 10 | ||
| 38 | #include <rdma/ib_mad.h> | 11 | #include <rdma/ib_mad.h> |
| @@ -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_H | 8 | #ifndef IB_SA_H |
| @@ -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_H | 11 | #define IB_SMI_H |
| 39 | 12 | ||
| 40 | #include <rdma/ib_mad.h> | 13 | #include <rdma/ib_mad.h> |
| @@ -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_H | 6 | #ifndef IB_UMEM_H |
| @@ -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_H | 6 | #ifndef IB_UMEM_ODP_H |
| @@ -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_H | 13 | #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 | |||
| 75 | struct ib_uqp_object; | 48 | struct ib_uqp_object; |
| 76 | struct ib_usrq_object; | 49 | struct ib_usrq_object; |
| 77 | struct ib_uwq_object; | 50 | struct ib_uwq_object; |
| 51 | struct rdma_cm_id; | ||
| 78 | 52 | ||
| 79 | extern struct workqueue_struct *ib_wq; | 53 | extern struct workqueue_struct *ib_wq; |
| 80 | extern struct workqueue_struct *ib_comp_wq; | 54 | extern 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 | ||
| 1574 | struct ib_ah { | 1547 | struct ib_ah { |
| @@ -2270,6 +2243,7 @@ struct rdma_netdev_alloc_params { · 695 unmodified lines | |||
| 2270 | struct ib_odp_counters { | 2243 | struct 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 | ||
| 2275 | struct ib_counters { | 2249 | struct 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 attributes | 2615 | * 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 | ||
| 2650 | struct ib_core_device { | 2633 | struct 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 | ||
| 4266 | struct ib_mr *ib_alloc_mr_user(struct ib_pd *pd, enum ib_mr_type mr_type, | 4249 | struct 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 | |||
| 4269 | static 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 | ||
| 4275 | struct ib_mr *ib_alloc_mr_integrity(struct ib_pd *pd, | 4252 | struct 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 | */ |
| 4322 | int ib_detach_mcast(struct ib_qp *qp, union ib_gid *gid, u16 lid); | 4299 | int ib_detach_mcast(struct ib_qp *qp, union ib_gid *gid, u16 lid); |
| 4323 | 4300 | ||
| 4324 | /** | 4301 | struct 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. | 4303 | int ib_dealloc_xrcd_user(struct ib_xrcd *xrcd, struct ib_udata *udata); |
| 4327 | * @caller: Module name for kernel consumers | ||
| 4328 | */ | ||
| 4329 | struct 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 | */ | ||
| 4338 | int ib_dealloc_xrcd(struct ib_xrcd *xrcd, struct ib_udata *udata); | ||
| 4339 | 4304 | ||
| 4340 | static inline int ib_check_mr_access(int flags) | 4305 | static 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 | |||
| 4417 | int ib_destroy_wq(struct ib_wq *wq, struct ib_udata *udata); | 4382 | int ib_destroy_wq(struct ib_wq *wq, struct ib_udata *udata); |
| 4418 | int ib_modify_wq(struct ib_wq *wq, struct ib_wq_attr *attr, | 4383 | int ib_modify_wq(struct ib_wq *wq, struct ib_wq_attr *attr, |
| 4419 | u32 wq_attr_mask); | 4384 | u32 wq_attr_mask); |
| 4420 | struct 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); | ||
| 4423 | int ib_destroy_rwq_ind_table(struct ib_rwq_ind_table *wq_ind_table); | 4385 | int ib_destroy_rwq_ind_table(struct ib_rwq_ind_table *wq_ind_table); |
| 4424 | 4386 | ||
| 4425 | int ib_map_mr_sg(struct ib_mr *mr, struct scatterlist *sg, int sg_nents, | 4387 | int ib_map_mr_sg(struct ib_mr *mr, struct scatterlist *sg, int sg_nents, |
| @@ -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_H | 7 | #ifndef IW_CM_H |
| 34 | #define IW_CM_H | 8 | #define IW_CM_H |
| 35 | 9 | ||
| @@ -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_H | 7 | #ifndef _IW_PORTMAP_H |
| 34 | #define _IW_PORTMAP_H | 8 | #define _IW_PORTMAP_H |
| 35 | 9 | ||
| @@ -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_H | 6 | #ifndef OPA_ADDR_H |
| @@ -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_H | 7 | #define OPA_PORT_INFO_H |
| 35 | 8 | ||
| 36 | #include <rdma/opa_smi.h> | 9 | #include <rdma/opa_smi.h> |
| @@ -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_H | 7 | #define OPA_SMI_H |
| 35 | 8 | ||
| 36 | #include <rdma/ib_mad.h> | 9 | #include <rdma/ib_mad.h> |
| @@ -1,52 +1,11 @@ | |||
| 1 | #ifndef _OPA_VNIC_H | 1 | /* 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 Interface | 10 | * This file contains Intel Omni-Path (OPA) Virtual Network Interface |
| 52 | * Controller (VNIC) specific declarations. | 11 | * Controller (VNIC) specific declarations. |
| @@ -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_H | 8 | #define RDMA_CM_H |
| 36 | 9 | ||
| 37 | #include <linux/socket.h> | 10 | #include <linux/socket.h> |
| @@ -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_H | 7 | #define RDMA_CM_IB_H |
| 35 | 8 | ||
| 36 | #include <rdma/rdma_cm.h> | 9 | #include <rdma/rdma_cm.h> |
| @@ -1,8 +1,8 @@ | |||
| 1 | /* SPDX-License-Identifier: GPL-2.0 */ | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
| 2 | |||
| 2 | #ifndef _RDMA_NETLINK_H | 3 | #ifndef _RDMA_NETLINK_H |
| 3 | #define _RDMA_NETLINK_H | 4 | #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 | ||
| @@ -1,53 +1,11 @@ | |||
| 1 | #ifndef DEF_RDMA_VT_H | 1 | /* 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 the | 10 | * Structure that low level drivers will populate in order to register with the |
| 53 | * rdmavt layer. | 11 | * rdmavt layer. |
| @@ -1,56 +1,11 @@ | |||
| 1 | #ifndef DEF_RDMAVT_INCCQ_H | 1 | /* 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> |
| @@ -1,53 +1,11 @@ | |||
| 1 | #ifndef DEF_RDMAVT_INCMR_H | 1 | /* 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 once | 10 | * 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. |
| @@ -1,53 +1,11 @@ | |||
| 1 | #ifndef DEF_RDMAVT_INCQP_H | 1 | /* 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> |
| @@ -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 | }; |
| @@ -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_ |
| @@ -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 | ||
| 86 | static 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 | |||
| 113 | static inline struct ib_uobject * | 100 | static 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) |
| @@ -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_ |
| @@ -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_H | 6 | #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 | ||
| 23 | enum { | ||
| 24 | EFA_ALLOC_UCONTEXT_CMD_COMP_TX_BATCH = 1 << 0, | ||
| 25 | EFA_ALLOC_UCONTEXT_CMD_COMP_MIN_SQ_WR = 1 << 1, | ||
| 26 | }; | ||
| 27 | |||
| 28 | struct efa_ibv_alloc_ucontext_cmd { | ||
| 29 | __u32 comp_mask; | ||
| 30 | __u8 reserved_20[4]; | ||
| 31 | }; | ||
| 32 | |||
| 23 | enum efa_ibv_user_cmds_supp_udata { | 33 | enum 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 | ||
| 36 | struct efa_ibv_alloc_pd_resp { | 49 | struct efa_ibv_alloc_pd_resp { |
| @@ -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 | ||
| 74 | enum uverbs_attrs_invoke_write_cmd_attr_ids { | 75 | enum 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 | ||
| 91 | enum uverbs_attrs_query_context_attr_ids { | ||
| 92 | UVERBS_ATTR_QUERY_CONTEXT_NUM_COMP_VECTORS, | ||
| 93 | UVERBS_ATTR_QUERY_CONTEXT_CORE_SUPPORT, | ||
| 94 | }; | ||
| 95 | |||
| 90 | enum uverbs_attrs_create_cq_cmd_attr_ids { | 96 | enum 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 | ||
| 247 | enum uverbs_attrs_mr_destroy_ids { | 254 | enum 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 | ||
| 265 | enum 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 | |||
| 258 | enum uverbs_attrs_create_counters_cmd_attr_ids { | 273 | enum uverbs_attrs_create_counters_cmd_attr_ids { |
| 259 | UVERBS_ATTR_CREATE_COUNTERS_HANDLE, | 274 | UVERBS_ATTR_CREATE_COUNTERS_HANDLE, |
| 260 | }; | 275 | }; |
| @@ -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 | ||
| 231 | enum 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 0x80 | 235 | #define MLX5_IB_DW_MATCH_PARAM 0x80 |
| 232 | 236 | ||
| 233 | struct mlx5_ib_match_params { | 237 | struct 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 | ||
| 262 | enum mlx5_ib_destoy_flow_attrs { | 266 | enum 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 | ||
| 293 | enum 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 | |||
| 298 | enum mlx5_ib_pd_methods { | ||
| 299 | MLX5_IB_METHOD_PD_QUERY = (1U << UVERBS_ID_NS_SHIFT), | ||
| 300 | |||
| 301 | }; | ||
| 302 | |||
| 289 | #endif | 303 | #endif |
| @@ -39,8 +39,9 @@ · 38 unmodified lines | |||
| 39 | 39 | ||
| 40 | /* user kernel communication data structures. */ | 40 | /* user kernel communication data structures. */ |
| 41 | enum qedr_alloc_ucontext_flags { | 41 | enum 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 << 1 | 43 | QEDR_ALLOC_UCTX_DB_REC = 1 << 1, |
| 44 | QEDR_SUPPORT_DPM_SIZES = 1 << 2, | ||
| 44 | }; | 45 | }; |
| 45 | 46 | ||
| 46 | struct qedr_alloc_ucontext_req { | 47 | struct 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 | ||
| 54 | enum qedr_rdma_dpm_type { | 56 | enum 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 | ||
| 82 | struct qedr_alloc_pd_ureq { | 86 | struct qedr_alloc_pd_ureq { |
| @@ -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_OPS | 296 | 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 end | 537 | * Always the end |
| 530 | */ | 538 | */ |
| @@ -561,5 +569,6 @@ enum rdma_nl_counter_mode { · 30 unmodified lines | |||
| 561 | */ | 569 | */ |
| 562 | enum rdma_nl_counter_mask { | 570 | enum 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 */ |
| @@ -43,7 +43,7 @@ · 42 unmodified lines | |||
| 43 | 43 | ||
| 44 | /* | 44 | /* |
| 45 | * General blocks assignments | 45 | * General blocks assignments |
| 46 | * It is closed on purpose do not expose it it user space | 46 | * It is closed on purpose - do not expose it to user space |
| 47 | * #define MAD_CMD_BASE 0x00 | 47 | * #define MAD_CMD_BASE 0x00 |
| 48 | * #define HFI1_CMD_BAS 0xE0 | 48 | * #define HFI1_CMD_BAS 0xE0 |
| 49 | */ | 49 | */ |