All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] net/i40e: fix queue offload initialize
@ 2018-05-02  2:43 Qi Zhang
  2018-05-02  2:43 ` [PATCH 2/2] net/i40e: remove dependence on Tx queue flags Qi Zhang
  0 siblings, 1 reply; 3+ messages in thread
From: Qi Zhang @ 2018-05-02  2:43 UTC (permalink / raw)
  To: ferruh.yigit, konstantin.ananyev; +Cc: dev, beilei.xing, Qi Zhang

Add missing queue offload initialization.

Fixes: 7497d3e2f777 ("net/i40e: convert to new Tx offloads API")
Fixes: c3ac7c5b0b8a ("net/i40e: convert to new Rx offloads API")

Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
---
 drivers/net/i40e/i40e_ethdev.c         | 1 +
 drivers/net/i40e/i40e_ethdev_vf.c      | 1 +
 drivers/net/i40e/i40e_rxtx.c           | 2 ++
 drivers/net/i40e/i40e_vf_representor.c | 1 +
 4 files changed, 5 insertions(+)

diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index 284e9cb64..a001d5b99 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -3345,6 +3345,7 @@ i40e_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
 		.tx_rs_thresh = I40E_DEFAULT_TX_RSBIT_THRESH,
 		.txq_flags = ETH_TXQ_FLAGS_NOMULTSEGS |
 				ETH_TXQ_FLAGS_NOOFFLOADS,
+		.offloads = 0,
 	};
 
 	dev_info->rx_desc_lim = (struct rte_eth_desc_lim) {
diff --git a/drivers/net/i40e/i40e_ethdev_vf.c b/drivers/net/i40e/i40e_ethdev_vf.c
index 48e7ac21e..de5f460e9 100644
--- a/drivers/net/i40e/i40e_ethdev_vf.c
+++ b/drivers/net/i40e/i40e_ethdev_vf.c
@@ -2238,6 +2238,7 @@ i40evf_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
 		.tx_rs_thresh = I40E_DEFAULT_TX_RSBIT_THRESH,
 		.txq_flags = ETH_TXQ_FLAGS_NOMULTSEGS |
 				ETH_TXQ_FLAGS_NOOFFLOADS,
+		.offloads = 0,
 	};
 
 	dev_info->rx_desc_lim = (struct rte_eth_desc_lim) {
diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c
index 006f5b846..755109ee5 100644
--- a/drivers/net/i40e/i40e_rxtx.c
+++ b/drivers/net/i40e/i40e_rxtx.c
@@ -1857,6 +1857,7 @@ i40e_dev_rx_queue_setup(struct rte_eth_dev *dev,
 	rxq->drop_en = rx_conf->rx_drop_en;
 	rxq->vsi = vsi;
 	rxq->rx_deferred_start = rx_conf->rx_deferred_start;
+	rxq->offloads = rx_conf->offloads;
 
 	/* Allocate the maximun number of RX ring hardware descriptor. */
 	len = I40E_MAX_RING_DESC;
@@ -2297,6 +2298,7 @@ i40e_dev_tx_queue_setup(struct rte_eth_dev *dev,
 	txq->reg_idx = reg_idx;
 	txq->port_id = dev->data->port_id;
 	txq->txq_flags = tx_conf->txq_flags;
+	txq->offloads = tx_conf->offloads;
 	txq->vsi = vsi;
 	txq->tx_deferred_start = tx_conf->tx_deferred_start;
 
diff --git a/drivers/net/i40e/i40e_vf_representor.c b/drivers/net/i40e/i40e_vf_representor.c
index a8aa0115d..7b67e23ae 100644
--- a/drivers/net/i40e/i40e_vf_representor.c
+++ b/drivers/net/i40e/i40e_vf_representor.c
@@ -81,6 +81,7 @@ i40e_vf_representor_dev_infos_get(struct rte_eth_dev *ethdev,
 		.tx_rs_thresh = I40E_DEFAULT_TX_RSBIT_THRESH,
 		.txq_flags = ETH_TXQ_FLAGS_NOMULTSEGS |
 				ETH_TXQ_FLAGS_NOOFFLOADS,
+		.offloads = 0,
 	};
 
 	dev_info->rx_desc_lim = (struct rte_eth_desc_lim) {
-- 
2.13.6

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 2/2] net/i40e: remove dependence on Tx queue flags
  2018-05-02  2:43 [PATCH 1/2] net/i40e: fix queue offload initialize Qi Zhang
@ 2018-05-02  2:43 ` Qi Zhang
  2018-05-02  3:05   ` Zhang, Qi Z
  0 siblings, 1 reply; 3+ messages in thread
From: Qi Zhang @ 2018-05-02  2:43 UTC (permalink / raw)
  To: ferruh.yigit, konstantin.ananyev; +Cc: dev, beilei.xing, Qi Zhang

Since we move to new offload APIs, txq_flags is no long needed.
This patch remove the dependence on that.

Fixes: 7497d3e2f777 ("net/i40e: convert to new Tx offloads API")
Fixes: c3ac7c5b0b8a ("net/i40e: convert to new Rx offloads API")

Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
---
 drivers/net/i40e/i40e_ethdev.c         | 2 --
 drivers/net/i40e/i40e_ethdev_vf.c      | 2 --
 drivers/net/i40e/i40e_rxtx.c           | 4 +---
 drivers/net/i40e/i40e_rxtx.h           | 1 -
 drivers/net/i40e/i40e_vf_representor.c | 2 --
 5 files changed, 1 insertion(+), 10 deletions(-)

diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index a001d5b99..92ee6c5ae 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -3343,8 +3343,6 @@ i40e_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
 		},
 		.tx_free_thresh = I40E_DEFAULT_TX_FREE_THRESH,
 		.tx_rs_thresh = I40E_DEFAULT_TX_RSBIT_THRESH,
-		.txq_flags = ETH_TXQ_FLAGS_NOMULTSEGS |
-				ETH_TXQ_FLAGS_NOOFFLOADS,
 		.offloads = 0,
 	};
 
diff --git a/drivers/net/i40e/i40e_ethdev_vf.c b/drivers/net/i40e/i40e_ethdev_vf.c
index de5f460e9..b9dea2e5b 100644
--- a/drivers/net/i40e/i40e_ethdev_vf.c
+++ b/drivers/net/i40e/i40e_ethdev_vf.c
@@ -2236,8 +2236,6 @@ i40evf_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
 		},
 		.tx_free_thresh = I40E_DEFAULT_TX_FREE_THRESH,
 		.tx_rs_thresh = I40E_DEFAULT_TX_RSBIT_THRESH,
-		.txq_flags = ETH_TXQ_FLAGS_NOMULTSEGS |
-				ETH_TXQ_FLAGS_NOOFFLOADS,
 		.offloads = 0,
 	};
 
diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c
index 755109ee5..62985c3a9 100644
--- a/drivers/net/i40e/i40e_rxtx.c
+++ b/drivers/net/i40e/i40e_rxtx.c
@@ -1237,7 +1237,7 @@ i40e_tx_free_bufs(struct i40e_tx_queue *txq)
 	for (i = 0; i < txq->tx_rs_thresh; i++)
 		rte_prefetch0((txep + i)->mbuf);
 
-	if (txq->txq_flags & (uint32_t)ETH_TXQ_FLAGS_NOREFCOUNT) {
+	if (txq->offloads & DEV_TX_OFFLOAD_MBUF_FAST_FREE) {
 		for (i = 0; i < txq->tx_rs_thresh; ++i, ++txep) {
 			rte_mempool_put(txep->mbuf->pool, txep->mbuf);
 			txep->mbuf = NULL;
@@ -2297,7 +2297,6 @@ i40e_dev_tx_queue_setup(struct rte_eth_dev *dev,
 	txq->queue_id = queue_idx;
 	txq->reg_idx = reg_idx;
 	txq->port_id = dev->data->port_id;
-	txq->txq_flags = tx_conf->txq_flags;
 	txq->offloads = tx_conf->offloads;
 	txq->vsi = vsi;
 	txq->tx_deferred_start = tx_conf->tx_deferred_start;
@@ -2951,7 +2950,6 @@ i40e_txq_info_get(struct rte_eth_dev *dev, uint16_t queue_id,
 
 	qinfo->conf.tx_free_thresh = txq->tx_free_thresh;
 	qinfo->conf.tx_rs_thresh = txq->tx_rs_thresh;
-	qinfo->conf.txq_flags = txq->txq_flags;
 	qinfo->conf.tx_deferred_start = txq->tx_deferred_start;
 }
 
diff --git a/drivers/net/i40e/i40e_rxtx.h b/drivers/net/i40e/i40e_rxtx.h
index 10feec4a2..ea73a8a1b 100644
--- a/drivers/net/i40e/i40e_rxtx.h
+++ b/drivers/net/i40e/i40e_rxtx.h
@@ -142,7 +142,6 @@ struct i40e_tx_queue {
 	uint16_t port_id; /**< Device port identifier. */
 	uint16_t queue_id; /**< TX queue index. */
 	uint16_t reg_idx;
-	uint32_t txq_flags;
 	struct i40e_vsi *vsi; /**< the VSI this queue belongs to */
 	uint16_t tx_next_dd;
 	uint16_t tx_next_rs;
diff --git a/drivers/net/i40e/i40e_vf_representor.c b/drivers/net/i40e/i40e_vf_representor.c
index 7b67e23ae..068404f75 100644
--- a/drivers/net/i40e/i40e_vf_representor.c
+++ b/drivers/net/i40e/i40e_vf_representor.c
@@ -79,8 +79,6 @@ i40e_vf_representor_dev_infos_get(struct rte_eth_dev *ethdev,
 		},
 		.tx_free_thresh = I40E_DEFAULT_TX_FREE_THRESH,
 		.tx_rs_thresh = I40E_DEFAULT_TX_RSBIT_THRESH,
-		.txq_flags = ETH_TXQ_FLAGS_NOMULTSEGS |
-				ETH_TXQ_FLAGS_NOOFFLOADS,
 		.offloads = 0,
 	};
 
-- 
2.13.6

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH 2/2] net/i40e: remove dependence on Tx queue flags
  2018-05-02  2:43 ` [PATCH 2/2] net/i40e: remove dependence on Tx queue flags Qi Zhang
@ 2018-05-02  3:05   ` Zhang, Qi Z
  0 siblings, 0 replies; 3+ messages in thread
From: Zhang, Qi Z @ 2018-05-02  3:05 UTC (permalink / raw)
  To: Yigit, Ferruh, Ananyev, Konstantin; +Cc: dev, Xing, Beilei

Hi Ferruh:

> -----Original Message-----
> From: Zhang, Qi Z
> Sent: Wednesday, May 2, 2018 10:44 AM
> To: Yigit, Ferruh <ferruh.yigit@intel.com>; Ananyev, Konstantin
> <konstantin.ananyev@intel.com>
> Cc: dev@dpdk.org; Xing, Beilei <beilei.xing@intel.com>; Zhang, Qi Z
> <qi.z.zhang@intel.com>
> Subject: [PATCH 2/2] net/i40e: remove dependence on Tx queue flags
> 
> Since we move to new offload APIs, txq_flags is no long needed.
> This patch remove the dependence on that.
> 
> Fixes: 7497d3e2f777 ("net/i40e: convert to new Tx offloads API")
> Fixes: c3ac7c5b0b8a ("net/i40e: convert to new Rx offloads API")

The above fix line or RX should be removed, if no other issue for the patch, Would you capture this when apply?

Thanks
Qi

> 
> Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
> ---
>  drivers/net/i40e/i40e_ethdev.c         | 2 --
>  drivers/net/i40e/i40e_ethdev_vf.c      | 2 --
>  drivers/net/i40e/i40e_rxtx.c           | 4 +---
>  drivers/net/i40e/i40e_rxtx.h           | 1 -
>  drivers/net/i40e/i40e_vf_representor.c | 2 --
>  5 files changed, 1 insertion(+), 10 deletions(-)
> 
> diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
> index a001d5b99..92ee6c5ae 100644
> --- a/drivers/net/i40e/i40e_ethdev.c
> +++ b/drivers/net/i40e/i40e_ethdev.c
> @@ -3343,8 +3343,6 @@ i40e_dev_info_get(struct rte_eth_dev *dev, struct
> rte_eth_dev_info *dev_info)
>  		},
>  		.tx_free_thresh = I40E_DEFAULT_TX_FREE_THRESH,
>  		.tx_rs_thresh = I40E_DEFAULT_TX_RSBIT_THRESH,
> -		.txq_flags = ETH_TXQ_FLAGS_NOMULTSEGS |
> -				ETH_TXQ_FLAGS_NOOFFLOADS,
>  		.offloads = 0,
>  	};
> 
> diff --git a/drivers/net/i40e/i40e_ethdev_vf.c
> b/drivers/net/i40e/i40e_ethdev_vf.c
> index de5f460e9..b9dea2e5b 100644
> --- a/drivers/net/i40e/i40e_ethdev_vf.c
> +++ b/drivers/net/i40e/i40e_ethdev_vf.c
> @@ -2236,8 +2236,6 @@ i40evf_dev_info_get(struct rte_eth_dev *dev,
> struct rte_eth_dev_info *dev_info)
>  		},
>  		.tx_free_thresh = I40E_DEFAULT_TX_FREE_THRESH,
>  		.tx_rs_thresh = I40E_DEFAULT_TX_RSBIT_THRESH,
> -		.txq_flags = ETH_TXQ_FLAGS_NOMULTSEGS |
> -				ETH_TXQ_FLAGS_NOOFFLOADS,
>  		.offloads = 0,
>  	};
> 
> diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c index
> 755109ee5..62985c3a9 100644
> --- a/drivers/net/i40e/i40e_rxtx.c
> +++ b/drivers/net/i40e/i40e_rxtx.c
> @@ -1237,7 +1237,7 @@ i40e_tx_free_bufs(struct i40e_tx_queue *txq)
>  	for (i = 0; i < txq->tx_rs_thresh; i++)
>  		rte_prefetch0((txep + i)->mbuf);
> 
> -	if (txq->txq_flags & (uint32_t)ETH_TXQ_FLAGS_NOREFCOUNT) {
> +	if (txq->offloads & DEV_TX_OFFLOAD_MBUF_FAST_FREE) {
>  		for (i = 0; i < txq->tx_rs_thresh; ++i, ++txep) {
>  			rte_mempool_put(txep->mbuf->pool, txep->mbuf);
>  			txep->mbuf = NULL;
> @@ -2297,7 +2297,6 @@ i40e_dev_tx_queue_setup(struct rte_eth_dev
> *dev,
>  	txq->queue_id = queue_idx;
>  	txq->reg_idx = reg_idx;
>  	txq->port_id = dev->data->port_id;
> -	txq->txq_flags = tx_conf->txq_flags;
>  	txq->offloads = tx_conf->offloads;
>  	txq->vsi = vsi;
>  	txq->tx_deferred_start = tx_conf->tx_deferred_start; @@ -2951,7
> +2950,6 @@ i40e_txq_info_get(struct rte_eth_dev *dev, uint16_t queue_id,
> 
>  	qinfo->conf.tx_free_thresh = txq->tx_free_thresh;
>  	qinfo->conf.tx_rs_thresh = txq->tx_rs_thresh;
> -	qinfo->conf.txq_flags = txq->txq_flags;
>  	qinfo->conf.tx_deferred_start = txq->tx_deferred_start;  }
> 
> diff --git a/drivers/net/i40e/i40e_rxtx.h b/drivers/net/i40e/i40e_rxtx.h index
> 10feec4a2..ea73a8a1b 100644
> --- a/drivers/net/i40e/i40e_rxtx.h
> +++ b/drivers/net/i40e/i40e_rxtx.h
> @@ -142,7 +142,6 @@ struct i40e_tx_queue {
>  	uint16_t port_id; /**< Device port identifier. */
>  	uint16_t queue_id; /**< TX queue index. */
>  	uint16_t reg_idx;
> -	uint32_t txq_flags;
>  	struct i40e_vsi *vsi; /**< the VSI this queue belongs to */
>  	uint16_t tx_next_dd;
>  	uint16_t tx_next_rs;
> diff --git a/drivers/net/i40e/i40e_vf_representor.c
> b/drivers/net/i40e/i40e_vf_representor.c
> index 7b67e23ae..068404f75 100644
> --- a/drivers/net/i40e/i40e_vf_representor.c
> +++ b/drivers/net/i40e/i40e_vf_representor.c
> @@ -79,8 +79,6 @@ i40e_vf_representor_dev_infos_get(struct rte_eth_dev
> *ethdev,
>  		},
>  		.tx_free_thresh = I40E_DEFAULT_TX_FREE_THRESH,
>  		.tx_rs_thresh = I40E_DEFAULT_TX_RSBIT_THRESH,
> -		.txq_flags = ETH_TXQ_FLAGS_NOMULTSEGS |
> -				ETH_TXQ_FLAGS_NOOFFLOADS,
>  		.offloads = 0,
>  	};
> 
> --
> 2.13.6

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-05-02  3:05 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-02  2:43 [PATCH 1/2] net/i40e: fix queue offload initialize Qi Zhang
2018-05-02  2:43 ` [PATCH 2/2] net/i40e: remove dependence on Tx queue flags Qi Zhang
2018-05-02  3:05   ` Zhang, Qi Z

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.