net/mlx5: remove Netlink flow driver
Netlink based E-Switch flow engine will be migrated to the new flow engine. nl_flow will be renamed to flow_tcf as it goes through Linux TC flower interface. Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
This commit is contained in:
parent
0c76d1c9a1
commit
40c9ccf9e9
@ -35,7 +35,6 @@ SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5_flow_dv.c
|
||||
SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5_flow_verbs.c
|
||||
SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5_socket.c
|
||||
SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5_nl.c
|
||||
SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5_nl_flow.c
|
||||
|
||||
ifeq ($(CONFIG_RTE_LIBRTE_MLX5_DLOPEN_DEPS),y)
|
||||
INSTALL-$(CONFIG_RTE_LIBRTE_MLX5_PMD)-lib += $(LIB_GLUE)
|
||||
|
@ -36,7 +36,6 @@ if build
|
||||
'mlx5_mac.c',
|
||||
'mlx5_mr.c',
|
||||
'mlx5_nl.c',
|
||||
'mlx5_nl_flow.c',
|
||||
'mlx5_rss.c',
|
||||
'mlx5_rxmode.c',
|
||||
'mlx5_rxq.c',
|
||||
|
@ -286,8 +286,6 @@ mlx5_dev_close(struct rte_eth_dev *dev)
|
||||
close(priv->nl_socket_route);
|
||||
if (priv->nl_socket_rdma >= 0)
|
||||
close(priv->nl_socket_rdma);
|
||||
if (priv->mnl_socket)
|
||||
mlx5_nl_flow_socket_destroy(priv->mnl_socket);
|
||||
ret = mlx5_hrxq_ibv_verify(dev);
|
||||
if (ret)
|
||||
DRV_LOG(WARNING, "port %u some hash Rx queue still remain",
|
||||
@ -1139,34 +1137,6 @@ mlx5_dev_spawn(struct rte_device *dpdk_dev,
|
||||
claim_zero(mlx5_mac_addr_add(eth_dev, &mac, 0, 0));
|
||||
if (vf && config.vf_nl_en)
|
||||
mlx5_nl_mac_addr_sync(eth_dev);
|
||||
priv->mnl_socket = mlx5_nl_flow_socket_create();
|
||||
if (!priv->mnl_socket) {
|
||||
err = -rte_errno;
|
||||
DRV_LOG(WARNING,
|
||||
"flow rules relying on switch offloads will not be"
|
||||
" supported: cannot open libmnl socket: %s",
|
||||
strerror(rte_errno));
|
||||
} else {
|
||||
struct rte_flow_error error;
|
||||
unsigned int ifindex = mlx5_ifindex(eth_dev);
|
||||
|
||||
if (!ifindex) {
|
||||
err = -rte_errno;
|
||||
error.message =
|
||||
"cannot retrieve network interface index";
|
||||
} else {
|
||||
err = mlx5_nl_flow_init(priv->mnl_socket, ifindex,
|
||||
&error);
|
||||
}
|
||||
if (err) {
|
||||
DRV_LOG(WARNING,
|
||||
"flow rules relying on switch offloads will"
|
||||
" not be supported: %s: %s",
|
||||
error.message, strerror(rte_errno));
|
||||
mlx5_nl_flow_socket_destroy(priv->mnl_socket);
|
||||
priv->mnl_socket = NULL;
|
||||
}
|
||||
}
|
||||
TAILQ_INIT(&priv->flows);
|
||||
TAILQ_INIT(&priv->ctrl_flows);
|
||||
/* Hint libmlx5 to use PMD allocator for data plane resources */
|
||||
@ -1219,8 +1189,6 @@ mlx5_dev_spawn(struct rte_device *dpdk_dev,
|
||||
close(priv->nl_socket_route);
|
||||
if (priv->nl_socket_rdma >= 0)
|
||||
close(priv->nl_socket_rdma);
|
||||
if (priv->mnl_socket)
|
||||
mlx5_nl_flow_socket_destroy(priv->mnl_socket);
|
||||
if (own_domain_id)
|
||||
claim_zero(rte_eth_switch_domain_free(priv->domain_id));
|
||||
rte_free(priv);
|
||||
|
@ -158,12 +158,6 @@ struct mlx5_drop {
|
||||
struct mlx5_rxq_ibv *rxq; /* Verbs Rx queue. */
|
||||
};
|
||||
|
||||
/** DPDK port to network interface index (ifindex) conversion. */
|
||||
struct mlx5_nl_flow_ptoi {
|
||||
uint16_t port_id; /**< DPDK port ID. */
|
||||
unsigned int ifindex; /**< Network interface index. */
|
||||
};
|
||||
|
||||
struct mnl_socket;
|
||||
|
||||
struct priv {
|
||||
@ -399,23 +393,4 @@ unsigned int mlx5_nl_ifindex(int nl, const char *name);
|
||||
int mlx5_nl_switch_info(int nl, unsigned int ifindex,
|
||||
struct mlx5_switch_info *info);
|
||||
|
||||
/* mlx5_nl_flow.c */
|
||||
|
||||
int mlx5_nl_flow_transpose(void *buf,
|
||||
size_t size,
|
||||
const struct mlx5_nl_flow_ptoi *ptoi,
|
||||
const struct rte_flow_attr *attr,
|
||||
const struct rte_flow_item *pattern,
|
||||
const struct rte_flow_action *actions,
|
||||
struct rte_flow_error *error);
|
||||
void mlx5_nl_flow_brand(void *buf, uint32_t handle);
|
||||
int mlx5_nl_flow_create(struct mnl_socket *nl, void *buf,
|
||||
struct rte_flow_error *error);
|
||||
int mlx5_nl_flow_destroy(struct mnl_socket *nl, void *buf,
|
||||
struct rte_flow_error *error);
|
||||
int mlx5_nl_flow_init(struct mnl_socket *nl, unsigned int ifindex,
|
||||
struct rte_flow_error *error);
|
||||
struct mnl_socket *mlx5_nl_flow_socket_create(void);
|
||||
void mlx5_nl_flow_socket_destroy(struct mnl_socket *nl);
|
||||
|
||||
#endif /* RTE_PMD_MLX5_H_ */
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user