mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-04-15 17:43:12 -04:00
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. Link: https://lore.kernel.org/all/cover.1701871118.git.leon@kernel.org Signed-off-by: Leon Romanovsky <leon@kernel.org>
This commit is contained in:
@@ -219,6 +219,22 @@
|
||||
*/
|
||||
#define BTRFS_METADATA_ITEM_KEY 169
|
||||
|
||||
/*
|
||||
* Special inline ref key which stores the id of the subvolume which originally
|
||||
* created the extent. This subvolume owns the extent permanently from the
|
||||
* perspective of simple quotas. Needed to know which subvolume to free quota
|
||||
* usage from when the extent is deleted.
|
||||
*
|
||||
* Stored as an inline ref rather to avoid wasting space on a separate item on
|
||||
* top of the existing extent item. However, unlike the other inline refs,
|
||||
* there is one one owner ref per extent rather than one per extent.
|
||||
*
|
||||
* Because of this, it goes at the front of the list of inline refs, and thus
|
||||
* must have a lower type value than any other inline ref type (to satisfy the
|
||||
* disk format rule that inline refs have non-decreasing type).
|
||||
*/
|
||||
#define BTRFS_EXTENT_OWNER_REF_KEY 172
|
||||
|
||||
#define BTRFS_TREE_BLOCK_REF_KEY 176
|
||||
|
||||
#define BTRFS_EXTENT_DATA_REF_KEY 178
|
||||
@@ -233,14 +249,6 @@
|
||||
|
||||
#define BTRFS_SHARED_DATA_REF_KEY 184
|
||||
|
||||
/*
|
||||
* Special inline ref key which stores the id of the subvolume which originally
|
||||
* created the extent. This subvolume owns the extent permanently from the
|
||||
* perspective of simple quotas. Needed to know which subvolume to free quota
|
||||
* usage from when the extent is deleted.
|
||||
*/
|
||||
#define BTRFS_EXTENT_OWNER_REF_KEY 188
|
||||
|
||||
/*
|
||||
* block groups give us hints into the extent allocation trees. Which
|
||||
* blocks are free etc etc
|
||||
|
||||
@@ -116,5 +116,8 @@
|
||||
#define AT_HANDLE_FID AT_REMOVEDIR /* file handle is needed to
|
||||
compare object identity and may not
|
||||
be usable to open_by_handle_at(2) */
|
||||
#if defined(__KERNEL__)
|
||||
#define AT_GETATTR_NOSEC 0x80000000
|
||||
#endif
|
||||
|
||||
#endif /* _UAPI_LINUX_FCNTL_H */
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
union { \
|
||||
struct { MEMBERS } ATTRS; \
|
||||
struct TAG { MEMBERS } ATTRS NAME; \
|
||||
}
|
||||
} ATTRS
|
||||
|
||||
#ifdef __cplusplus
|
||||
/* sizeof(struct{}) is 1 in C++, not 0, can't use C version of the macro. */
|
||||
|
||||
@@ -239,7 +239,7 @@ struct v4l2_subdev_routing {
|
||||
* set (which is the default), the 'stream' fields will be forced to 0 by the
|
||||
* kernel.
|
||||
*/
|
||||
#define V4L2_SUBDEV_CLIENT_CAP_STREAMS (1U << 0)
|
||||
#define V4L2_SUBDEV_CLIENT_CAP_STREAMS (1ULL << 0)
|
||||
|
||||
/**
|
||||
* struct v4l2_subdev_client_capability - Capabilities of the client accessing
|
||||
|
||||
@@ -166,6 +166,17 @@ struct virtio_pci_common_cfg {
|
||||
__le32 queue_used_hi; /* read-write */
|
||||
};
|
||||
|
||||
/*
|
||||
* Warning: do not use sizeof on this: use offsetofend for
|
||||
* specific fields you need.
|
||||
*/
|
||||
struct virtio_pci_modern_common_cfg {
|
||||
struct virtio_pci_common_cfg cfg;
|
||||
|
||||
__le16 queue_notify_data; /* read-write */
|
||||
__le16 queue_reset; /* read-write */
|
||||
};
|
||||
|
||||
/* Fields in VIRTIO_PCI_CAP_PCI_CFG: */
|
||||
struct virtio_pci_cfg_cap {
|
||||
struct virtio_pci_cap cap;
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
#include <linux/types.h>
|
||||
#include <linux/if_ether.h> /* For ETH_ALEN. */
|
||||
#include <rdma/ib_user_ioctl_verbs.h>
|
||||
#include <rdma/mlx5_user_ioctl_verbs.h>
|
||||
|
||||
enum {
|
||||
MLX5_QP_FLAG_SIGNATURE = 1 << 0,
|
||||
@@ -275,6 +276,7 @@ struct mlx5_ib_query_device_resp {
|
||||
__u32 tunnel_offloads_caps; /* enum mlx5_ib_tunnel_offloads */
|
||||
struct mlx5_ib_dci_streams_caps dci_streams_caps;
|
||||
__u16 reserved;
|
||||
struct mlx5_ib_uapi_reg reg_c0;
|
||||
};
|
||||
|
||||
enum mlx5_ib_create_cq_flags {
|
||||
|
||||
@@ -64,6 +64,7 @@ enum mlx5_ib_uapi_dm_type {
|
||||
MLX5_IB_UAPI_DM_TYPE_STEERING_SW_ICM,
|
||||
MLX5_IB_UAPI_DM_TYPE_HEADER_MODIFY_SW_ICM,
|
||||
MLX5_IB_UAPI_DM_TYPE_HEADER_MODIFY_PATTERN_SW_ICM,
|
||||
MLX5_IB_UAPI_DM_TYPE_ENCAP_SW_ICM,
|
||||
};
|
||||
|
||||
enum mlx5_ib_uapi_devx_create_event_channel_flags {
|
||||
|
||||
Reference in New Issue
Block a user