Message ID | 20210730083441.7465-1-olivier.matz@6wind.com (mailing list archive) |
---|---|
State | Accepted, archived |
Delegated to: | Ferruh Yigit |
Headers | show |
Series | [v2] net/ena: enable multi segment in Tx offload flags | expand |
Context | Check | Description |
---|---|---|
ci/iol-abi-testing | success | Testing PASS |
ci/iol-testing | fail | Testing issues |
ci/iol-mellanox-Performance | success | Performance Testing PASS |
ci/iol-intel-Performance | success | Performance Testing PASS |
ci/iol-intel-Functional | success | Functional Testing PASS |
ci/intel-Testing | success | Testing PASS |
ci/Intel-compilation | success | Compilation OK |
ci/github-robot | success | github build: passed |
ci/checkpatch | success | coding style OK |
pt., 30 lip 2021 o 10:35 Olivier Matz <olivier.matz@6wind.com> napisał(a): > > From: Ghalem Boudour <ghalem.boudour@6wind.com> > > The DPDK ENA driver does not provide multi-segment tx offload capability. > Let's add DEV_TX_OFFLOAD_MULTI_SEGS to ports offload capability by > default, and always set it in dev->data->dev_conf.txmode.offload. > > This flag in not listed in doc/guides/nics/features/default.ini, so > ena.ini does not need to be updated. > > Fixes: 1173fca25af9 ("ena: add polling-mode driver") > Cc: stable@dpdk.org > > Signed-off-by: Ghalem Boudour <ghalem.boudour@6wind.com> > Signed-off-by: Olivier Matz <olivier.matz@6wind.com> Acked-by: Michal Krawczyk <mk@semihalf.com> > --- > > v2 > * set DEV_TX_OFFLOAD_MULTI_SEGS in dev->data->dev_conf.txmode.offload > * add Fixes and Cc stable > > drivers/net/ena/ena_ethdev.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/net/ena/ena_ethdev.c b/drivers/net/ena/ena_ethdev.c > index dfe68279fa..b59451034c 100644 > --- a/drivers/net/ena/ena_ethdev.c > +++ b/drivers/net/ena/ena_ethdev.c > @@ -1981,6 +1981,7 @@ static int ena_dev_configure(struct rte_eth_dev *dev) > > if (dev->data->dev_conf.rxmode.mq_mode & ETH_MQ_RX_RSS_FLAG) > dev->data->dev_conf.rxmode.offloads |= DEV_RX_OFFLOAD_RSS_HASH; > + dev->data->dev_conf.txmode.offloads |= DEV_TX_OFFLOAD_MULTI_SEGS; > > adapter->tx_selected_offloads = dev->data->dev_conf.txmode.offloads; > adapter->rx_selected_offloads = dev->data->dev_conf.rxmode.offloads; > @@ -2055,6 +2056,7 @@ static int ena_infos_get(struct rte_eth_dev *dev, > DEV_RX_OFFLOAD_TCP_CKSUM; > > rx_feat |= DEV_RX_OFFLOAD_JUMBO_FRAME; > + tx_feat |= DEV_TX_OFFLOAD_MULTI_SEGS; > > /* Inform framework about available features */ > dev_info->rx_offload_capa = rx_feat; > -- > 2.29.2 >
30/07/2021 11:37, Michał Krawczyk: > pt., 30 lip 2021 o 10:35 Olivier Matz <olivier.matz@6wind.com> napisał(a): > > > > From: Ghalem Boudour <ghalem.boudour@6wind.com> > > > > The DPDK ENA driver does not provide multi-segment tx offload capability. > > Let's add DEV_TX_OFFLOAD_MULTI_SEGS to ports offload capability by > > default, and always set it in dev->data->dev_conf.txmode.offload. > > > > This flag in not listed in doc/guides/nics/features/default.ini, so > > ena.ini does not need to be updated. > > > > Fixes: 1173fca25af9 ("ena: add polling-mode driver") > > Cc: stable@dpdk.org > > > > Signed-off-by: Ghalem Boudour <ghalem.boudour@6wind.com> > > Signed-off-by: Olivier Matz <olivier.matz@6wind.com> > Acked-by: Michal Krawczyk <mk@semihalf.com> Applied, thanks.
diff --git a/drivers/net/ena/ena_ethdev.c b/drivers/net/ena/ena_ethdev.c index dfe68279fa..b59451034c 100644 --- a/drivers/net/ena/ena_ethdev.c +++ b/drivers/net/ena/ena_ethdev.c @@ -1981,6 +1981,7 @@ static int ena_dev_configure(struct rte_eth_dev *dev) if (dev->data->dev_conf.rxmode.mq_mode & ETH_MQ_RX_RSS_FLAG) dev->data->dev_conf.rxmode.offloads |= DEV_RX_OFFLOAD_RSS_HASH; + dev->data->dev_conf.txmode.offloads |= DEV_TX_OFFLOAD_MULTI_SEGS; adapter->tx_selected_offloads = dev->data->dev_conf.txmode.offloads; adapter->rx_selected_offloads = dev->data->dev_conf.rxmode.offloads; @@ -2055,6 +2056,7 @@ static int ena_infos_get(struct rte_eth_dev *dev, DEV_RX_OFFLOAD_TCP_CKSUM; rx_feat |= DEV_RX_OFFLOAD_JUMBO_FRAME; + tx_feat |= DEV_TX_OFFLOAD_MULTI_SEGS; /* Inform framework about available features */ dev_info->rx_offload_capa = rx_feat;