]> git.droids-corp.org - dpdk.git/commitdiff
net/mlx5: wrap flow domain sync per OS
authorTal Shnaiderman <talshn@nvidia.com>
Mon, 28 Dec 2020 12:33:00 +0000 (14:33 +0200)
committerFerruh Yigit <ferruh.yigit@intel.com>
Fri, 8 Jan 2021 15:03:08 +0000 (16:03 +0100)
use OS functions for flow_dv_sync_domain to compile
Windows.

mlx5_os_flow_dr_sync_domain is unsupported for Windows.

Signed-off-by: Tal Shnaiderman <talshn@nvidia.com>
Acked-by: Matan Azrad <matan@nvidia.com>
drivers/net/mlx5/linux/mlx5_flow_os.h
drivers/net/mlx5/mlx5_flow_dv.c
drivers/net/mlx5/windows/mlx5_flow_os.h

index 6f3b7324ff5a9b4e9882724101b6874ccef93a15..45b7b9f00160061558b6277a90ac07cba36c8e65 100644 (file)
@@ -427,4 +427,10 @@ mlx5_os_flow_adjust_priority(struct rte_eth_dev *dev, int32_t priority,
 {
        return mlx5_flow_adjust_priority(dev, priority, subpriority);
 }
+
+static inline int
+mlx5_os_flow_dr_sync_domain(void *domain, uint32_t flags)
+{
+       return mlx5_glue->dr_sync_domain(domain, flags);
+}
 #endif /* RTE_PMD_MLX5_FLOW_OS_H_ */
index a7d6a92b86bb9cfbdd110dddfe66919884c07cd7..f628268344d0821ccb3eba8bebf1daf1ff184c7c 100644 (file)
@@ -12633,18 +12633,18 @@ flow_dv_sync_domain(struct rte_eth_dev *dev, uint32_t domains, uint32_t flags)
        int ret = 0;
 
        if ((domains & MLX5_DOMAIN_BIT_NIC_RX) && priv->sh->rx_domain != NULL) {
-               ret = mlx5_glue->dr_sync_domain(priv->sh->rx_domain,
+               ret = mlx5_os_flow_dr_sync_domain(priv->sh->rx_domain,
                                                flags);
                if (ret != 0)
                        return ret;
        }
        if ((domains & MLX5_DOMAIN_BIT_NIC_TX) && priv->sh->tx_domain != NULL) {
-               ret = mlx5_glue->dr_sync_domain(priv->sh->tx_domain, flags);
+               ret = mlx5_os_flow_dr_sync_domain(priv->sh->tx_domain, flags);
                if (ret != 0)
                        return ret;
        }
        if ((domains & MLX5_DOMAIN_BIT_FDB) && priv->sh->fdb_domain != NULL) {
-               ret = mlx5_glue->dr_sync_domain(priv->sh->fdb_domain, flags);
+               ret = mlx5_os_flow_dr_sync_domain(priv->sh->fdb_domain, flags);
                if (ret != 0)
                        return ret;
        }
index 50185669cf5aeea9f5278408b8809177e05e3fb0..630b2148b944a31eeb4a027ecf3fc6a675f41031 100644 (file)
@@ -345,6 +345,15 @@ mlx5_os_flow_adjust_priority(struct rte_eth_dev *dev, int32_t priority,
        return 0;
 }
 
+static inline int
+mlx5_os_flow_dr_sync_domain(void *domain, uint32_t flags)
+{
+       RTE_SET_USED(domain);
+       RTE_SET_USED(flags);
+       errno = ENOTSUP;
+       return errno;
+}
+
 int mlx5_flow_os_validate_flow_attributes(struct rte_eth_dev *dev,
                                        const struct rte_flow_attr *attributes,
                                        bool external,