patch 'net/mlx5: fix flex item availability' has been queued to stable release 21.11.1
Kevin Traynor
ktraynor at redhat.com
Mon Mar 21 18:02:54 CET 2022
Hi,
On 10/03/2022 12:11, Kevin Traynor wrote:
> Hi,
>
> FYI, your patch has been queued to stable release 21.11.1
>
This patch seems to be causing a build failure [0] in the CI [1] with
meson on Windows. Probably there is some piece of a dependent patch that
is needed.
Can you take a look? thanks.
[0]
[531/617] Compiling C object
drivers/a715181@@tmp_rte_net_mlx5 at sta/net_mlx5_mlx5_flow.c.obj.
FAILED: drivers/a715181@@tmp_rte_net_mlx5 at sta/net_mlx5_mlx5_flow.c.obj
clang @drivers/a715181@@tmp_rte_net_mlx5 at sta/net_mlx5_mlx5_flow.c.obj.rsp
../drivers/net/mlx5/mlx5_flow.c:9867:23: error: incomplete definition of
type 'struct rte_pci_device'
switch (priv->pci_dev->id.device_id) {
~~~~~~~~~~~~~^
..\drivers\net/mlx5/mlx5.h:154:9: note: forward declaration of 'struct
rte_pci_device'
struct rte_pci_device *pci_dev; /**< Backend PCI device. */
^
1 error generated.
[1] https://lab.dpdk.org/results/dashboard/tarballs/19198/#env-27
> Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
> It will be pushed if I get no objections before 03/14/22. So please
> shout if anyone has objections.
>
> Also note that after the patch there's a diff of the upstream commit vs the
> patch applied to the branch. This will indicate if there was any rebasing
> needed to apply to the stable branch. If there were code changes for rebasing
> (ie: not only metadata diffs), please double check that the rebase was
> correctly done.
>
> Queued patches are on a temporary branch at:
> https://github.com/kevintraynor/dpdk-stable
>
> This queued commit can be viewed at:
> https://github.com/kevintraynor/dpdk-stable/commit/48fe9efaf2fb974e3f805eb7c54440ec3818a4b6
>
> Thanks.
>
> Kevin
>
> ---
> From 48fe9efaf2fb974e3f805eb7c54440ec3818a4b6 Mon Sep 17 00:00:00 2001
> From: Gregory Etelson <getelson at nvidia.com>
> Date: Wed, 2 Mar 2022 13:06:42 +0200
> Subject: [PATCH] net/mlx5: fix flex item availability
>
> [ upstream commit 71adf25dbfb3a60731bd922342cc0f171714db81 ]
>
> Flex item availability is restricted to BlueField-2 and BlueField-3
> PF ports.
>
> The patch validates port type compliance before proceeding to
> flex item creation.
>
> Fixes: db25cadc0887 ("net/mlx5: add flex item operations")
>
> Signed-off-by: Gregory Etelson <getelson at nvidia.com>
> Acked-by: Viacheslav Ovsiienko <viacheslavo at nvidia.com>
> ---
> drivers/common/mlx5/linux/mlx5_common_os.h | 1 +
> drivers/net/mlx5/mlx5_flow.c | 17 +++++++++++++++++
> 2 files changed, 18 insertions(+)
>
> diff --git a/drivers/common/mlx5/linux/mlx5_common_os.h b/drivers/common/mlx5/linux/mlx5_common_os.h
> index 83066e752d..2e4ac09bbf 100644
> --- a/drivers/common/mlx5/linux/mlx5_common_os.h
> +++ b/drivers/common/mlx5/linux/mlx5_common_os.h
> @@ -10,4 +10,5 @@
>
> #include <rte_pci.h>
> +#include <rte_bus_pci.h>
> #include <rte_debug.h>
> #include <rte_atomic.h>
> diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c
> index 5b36cfa042..41a648ff3f 100644
> --- a/drivers/net/mlx5/mlx5_flow.c
> +++ b/drivers/net/mlx5/mlx5_flow.c
> @@ -9854,8 +9854,25 @@ mlx5_flow_flex_item_create(struct rte_eth_dev *dev,
> {
> static const char err_msg[] = "flex item creation unsupported";
> + struct mlx5_priv *priv = dev->data->dev_private;
> struct rte_flow_attr attr = { .transfer = 0 };
> const struct mlx5_flow_driver_ops *fops =
> flow_get_drv_ops(flow_get_drv_type(dev, &attr));
>
> + if (!priv->pci_dev) {
> + rte_flow_error_set(error, ENOTSUP,
> + RTE_FLOW_ERROR_TYPE_UNSPECIFIED, NULL,
> + "create flex item on PF only");
> + return NULL;
> + }
> + switch (priv->pci_dev->id.device_id) {
> + case PCI_DEVICE_ID_MELLANOX_CONNECTX6DXBF:
> + case PCI_DEVICE_ID_MELLANOX_CONNECTX7BF:
> + break;
> + default:
> + rte_flow_error_set(error, ENOTSUP,
> + RTE_FLOW_ERROR_TYPE_UNSPECIFIED, NULL,
> + "flex item available on BlueField ports only");
> + return NULL;
> + }
> if (!fops->item_create) {
> DRV_LOG(ERR, "port %u %s.", dev->data->port_id, err_msg);
More information about the stable
mailing list