History

Expose c0 and SW encap ICM for RDMA

These two series from Mark and Shun extend RDMA mlx5 API. Mark's series provides c0 register used to match egress traffic sent by local device. Shun's series adds new type for ICM area.

Leon Romanovsky committed 2 years ago

Commit afcda192 parents 07f830a d727d271114 files · +14511 −10957Browse files

Showing the changes to include/uapi (7 of 1114 files). Show all

Unified · Split

7 files
  1. include/uapi/linux/btrfs_tree.h +16 −8
  2. include/uapi/linux/fcntl.h +3 −0
  3. include/uapi/linux/stddef.h +1 −1
  4. include/uapi/linux/v4l2-subdev.h +1 −1
  5. include/uapi/linux/virtio_pci.h +11 −0
  6. include/uapi/rdma/mlx5-abi.h +2 −0
  7. include/uapi/rdma/mlx5_user_ioctl_verbs.h +1 −0
include/uapi/linux/btrfs_tree.h+16−8
@@ -219,6 +219,22 @@ · 218 unmodified lines
219 */219 */
220#define BTRFS_METADATA_ITEM_KEY 169220#define BTRFS_METADATA_ITEM_KEY 169
221 221
222/*
223 * Special inline ref key which stores the id of the subvolume which originally
224 * created the extent. This subvolume owns the extent permanently from the
225 * perspective of simple quotas. Needed to know which subvolume to free quota
226 * usage from when the extent is deleted.
227 *
228 * Stored as an inline ref rather to avoid wasting space on a separate item on
229 * top of the existing extent item. However, unlike the other inline refs,
230 * there is one one owner ref per extent rather than one per extent.
231 *
232 * Because of this, it goes at the front of the list of inline refs, and thus
233 * must have a lower type value than any other inline ref type (to satisfy the
234 * disk format rule that inline refs have non-decreasing type).
235 */
236#define BTRFS_EXTENT_OWNER_REF_KEY 172
237
222#define BTRFS_TREE_BLOCK_REF_KEY 176238#define BTRFS_TREE_BLOCK_REF_KEY 176
223 239
224#define BTRFS_EXTENT_DATA_REF_KEY 178240#define BTRFS_EXTENT_DATA_REF_KEY 178
@@ -233,14 +249,6 @@ · 8 unmodified lines
233 249
234#define BTRFS_SHARED_DATA_REF_KEY 184250#define BTRFS_SHARED_DATA_REF_KEY 184
235 251
236/*
237 * Special inline ref key which stores the id of the subvolume which originally
238 * created the extent. This subvolume owns the extent permanently from the
239 * perspective of simple quotas. Needed to know which subvolume to free quota
240 * usage from when the extent is deleted.
241 */
242#define BTRFS_EXTENT_OWNER_REF_KEY 188
243
244/*252/*
245 * block groups give us hints into the extent allocation trees. Which253 * block groups give us hints into the extent allocation trees. Which
246 * blocks are free etc etc254 * blocks are free etc etc
include/uapi/linux/fcntl.h+3−0
@@ -116,5 +116,8 @@ · 115 unmodified lines
116#define AT_HANDLE_FID AT_REMOVEDIR /* file handle is needed to116#define AT_HANDLE_FID AT_REMOVEDIR /* file handle is needed to
117 compare object identity and may not117 compare object identity and may not
118 be usable to open_by_handle_at(2) */118 be usable to open_by_handle_at(2) */
119#if defined(__KERNEL__)
120#define AT_GETATTR_NOSEC 0x80000000
121#endif
119 122
120#endif /* _UAPI_LINUX_FCNTL_H */123#endif /* _UAPI_LINUX_FCNTL_H */
include/uapi/linux/stddef.h+1−1
@@ -27,7 +27,7 @@ · 26 unmodified lines
27 union { \27 union { \
28 struct { MEMBERS } ATTRS; \28 struct { MEMBERS } ATTRS; \
29 struct TAG { MEMBERS } ATTRS NAME; \29 struct TAG { MEMBERS } ATTRS NAME; \
30 }30 } ATTRS
31 31
32#ifdef __cplusplus32#ifdef __cplusplus
33/* sizeof(struct{}) is 1 in C++, not 0, can't use C version of the macro. */33/* sizeof(struct{}) is 1 in C++, not 0, can't use C version of the macro. */
include/uapi/linux/v4l2-subdev.h+1−1
@@ -239,7 +239,7 @@ struct v4l2_subdev_routing { · 238 unmodified lines
239 * set (which is the default), the 'stream' fields will be forced to 0 by the239 * set (which is the default), the 'stream' fields will be forced to 0 by the
240 * kernel.240 * kernel.
241 */241 */
242 #define V4L2_SUBDEV_CLIENT_CAP_STREAMS (1U << 0)242 #define V4L2_SUBDEV_CLIENT_CAP_STREAMS (1ULL << 0)
243 243
244/**244/**
245 * struct v4l2_subdev_client_capability - Capabilities of the client accessing245 * struct v4l2_subdev_client_capability - Capabilities of the client accessing
include/uapi/linux/virtio_pci.h+11−0
@@ -166,6 +166,17 @@ struct virtio_pci_common_cfg { · 165 unmodified lines
166 __le32 queue_used_hi; /* read-write */166 __le32 queue_used_hi; /* read-write */
167};167};
168 168
169/*
170 * Warning: do not use sizeof on this: use offsetofend for
171 * specific fields you need.
172 */
173struct virtio_pci_modern_common_cfg {
174 struct virtio_pci_common_cfg cfg;
175
176 __le16 queue_notify_data; /* read-write */
177 __le16 queue_reset; /* read-write */
178};
179
169/* Fields in VIRTIO_PCI_CAP_PCI_CFG: */180/* Fields in VIRTIO_PCI_CAP_PCI_CFG: */
170struct virtio_pci_cfg_cap {181struct virtio_pci_cfg_cap {
171 struct virtio_pci_cap cap;182 struct virtio_pci_cap cap;
include/uapi/rdma/mlx5-abi.h+2−0
@@ -37,6 +37,7 @@ · 36 unmodified lines
37#include <linux/types.h>37#include <linux/types.h>
38#include <linux/if_ether.h> /* For ETH_ALEN. */38#include <linux/if_ether.h> /* For ETH_ALEN. */
39#include <rdma/ib_user_ioctl_verbs.h>39#include <rdma/ib_user_ioctl_verbs.h>
40#include <rdma/mlx5_user_ioctl_verbs.h>
40 41
41enum {42enum {
42 MLX5_QP_FLAG_SIGNATURE = 1 << 0,43 MLX5_QP_FLAG_SIGNATURE = 1 << 0,
@@ -275,6 +276,7 @@ struct mlx5_ib_query_device_resp { · 232 unmodified lines
275 __u32 tunnel_offloads_caps; /* enum mlx5_ib_tunnel_offloads */276 __u32 tunnel_offloads_caps; /* enum mlx5_ib_tunnel_offloads */
276 struct mlx5_ib_dci_streams_caps dci_streams_caps;277 struct mlx5_ib_dci_streams_caps dci_streams_caps;
277 __u16 reserved;278 __u16 reserved;
279 struct mlx5_ib_uapi_reg reg_c0;
278};280};
279 281
280enum mlx5_ib_create_cq_flags {282enum mlx5_ib_create_cq_flags {
include/uapi/rdma/mlx5_user_ioctl_verbs.h+1−0
@@ -64,6 +64,7 @@ enum mlx5_ib_uapi_dm_type { · 63 unmodified lines
64 MLX5_IB_UAPI_DM_TYPE_STEERING_SW_ICM,64 MLX5_IB_UAPI_DM_TYPE_STEERING_SW_ICM,
65 MLX5_IB_UAPI_DM_TYPE_HEADER_MODIFY_SW_ICM,65 MLX5_IB_UAPI_DM_TYPE_HEADER_MODIFY_SW_ICM,
66 MLX5_IB_UAPI_DM_TYPE_HEADER_MODIFY_PATTERN_SW_ICM,66 MLX5_IB_UAPI_DM_TYPE_HEADER_MODIFY_PATTERN_SW_ICM,
67 MLX5_IB_UAPI_DM_TYPE_ENCAP_SW_ICM,
67};68};
68 69
69enum mlx5_ib_uapi_devx_create_event_channel_flags {70enum mlx5_ib_uapi_devx_create_event_channel_flags {

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

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

Repository code

Go to file
t