From d517244ac25df6b18799ce724cc2be3df68eaa84 Mon Sep 17 00:00:00 2001 From: hkk Date: Thu, 11 Jul 2024 11:50:19 +0800 Subject: [PATCH] sync some patches from upstream about bond4 --- 0433-fix-mode4-with-dedicated-queues.patch | 60 ++++++++++++++++++++++ dpdk.spec | 9 +++- 2 files changed, 68 insertions(+), 1 deletion(-) create mode 100644 0433-fix-mode4-with-dedicated-queues.patch diff --git a/0433-fix-mode4-with-dedicated-queues.patch b/0433-fix-mode4-with-dedicated-queues.patch new file mode 100644 index 0000000..3a7f371 --- /dev/null +++ b/0433-fix-mode4-with-dedicated-queues.patch @@ -0,0 +1,60 @@ +From 49c1abe125853e4515bec6fefdd2b726dcb81344 Mon Sep 17 00:00:00 2001 +From: Usman Tanveer +Date: Thu, 11 Jul 2024 13:09:24 +0800 +Subject: [PATCH] fix mode4 with dedicated queues + +--- + drivers/net/bonding/rte_eth_bond_pmd.c | 26 +++++++++++++++++--------- + 1 file changed, 17 insertions(+), 9 deletions(-) + +diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c b/drivers/net/bonding/rte_eth_bond_pmd.c +index 0f2b21a..446a80b 100644 +--- a/drivers/net/bonding/rte_eth_bond_pmd.c ++++ b/drivers/net/bonding/rte_eth_bond_pmd.c +@@ -1843,19 +1843,15 @@ slave_configure(struct rte_eth_dev *bonded_eth_dev, + return errval; + } + +- if (internals->mode4.dedicated_queues.flow[slave_eth_dev->data->port_id] != NULL) +- rte_flow_destroy(slave_eth_dev->data->port_id, ++ if (internals->mode4.dedicated_queues.flow[slave_eth_dev->data->port_id] != NULL) { ++ errval = rte_flow_destroy(slave_eth_dev->data->port_id, + internals->mode4.dedicated_queues.flow[slave_eth_dev->data->port_id], + &flow_error); +- +- errval = bond_ethdev_8023ad_flow_set(bonded_eth_dev, +- slave_eth_dev->data->port_id); +- if (errval != 0) { +- RTE_BOND_LOG(ERR, +- "bond_ethdev_8023ad_flow_set: port=%d, err (%d)", ++ RTE_BOND_LOG(ERR, "bond_ethdev_8023ad_flow_destroy: port=%d, err (%d)", + slave_eth_dev->data->port_id, errval); +- return errval; + } ++ ++ + } + + /* Start device */ +@@ -1866,6 +1862,18 @@ slave_configure(struct rte_eth_dev *bonded_eth_dev, + return -1; + } + ++ if (internals->mode == BONDING_MODE_8023AD && ++ internals->mode4.dedicated_queues.enabled == 1) { ++ errval = bond_ethdev_8023ad_flow_set(bonded_eth_dev, ++ slave_eth_dev->data->port_id); ++ if (errval != 0) { ++ RTE_BOND_LOG(ERR, ++ "bond_ethdev_8023ad_flow_set: port=%d, err (%d)", ++ slave_eth_dev->data->port_id, errval); ++ return errval; ++ } ++ } ++ + /* If RSS is enabled for bonding, synchronize RETA */ + if (bonded_eth_dev->data->dev_conf.rxmode.mq_mode & RTE_ETH_MQ_RX_RSS) { + int i; +-- +2.33.0 + diff --git a/dpdk.spec b/dpdk.spec index 42defa3..29fa1c6 100644 --- a/dpdk.spec +++ b/dpdk.spec @@ -1,6 +1,6 @@ Name: dpdk Version: 21.11 -Release: 67 +Release: 68 Packager: packaging@6wind.com URL: http://dpdk.org %global source_version 21.11 @@ -466,6 +466,8 @@ Patch6429: 0430-app-testpmd-fix-crash-in-multi-process-forwarding.patch Patch6430: 0431-dma-hisilicon-remove-support-for-HIP09-platform.patch Patch6431: 0432-net-hns3-support-new-device.patch +patch6432: 0433-fix-mode4-with-dedicated-queues.patch + Summary: Data Plane Development Kit core Group: System Environment/Libraries @@ -622,6 +624,11 @@ strip -g $RPM_BUILD_ROOT/lib/modules/%{kern_devel_ver}/extra/dpdk/igb_uio.ko /usr/sbin/depmod %changelog +* Thu Jul 11 2024 hankangknag - 21.11-68 + Sync some patches from upstream about bugfix, modifies + are as follow: + - mlx5: device should be started to set the flow + * Mon Jun 3 2024 chenyi - 21.11-67 Sync some patches from upstream about bugfix, modifies are as follow: -- Gitee