[3/3] net/cnxk: reduce Tx queue release time
Checks
Commit Message
Invoked newly added roc API to disable
SQB aura FC during TX queue start and TX queue
stop. This fix reduces ethdev teardown time
Signed-off-by: Rakesh Kudurumalla <rkudurumalla@marvell.com>
---
drivers/net/cnxk/cnxk_ethdev.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
Comments
On Tue, Dec 5, 2023 at 3:39 PM Rakesh Kudurumalla
<rkudurumalla@marvell.com> wrote:
>
> Invoked newly added roc API to disable
> SQB aura FC during TX queue start and TX queue
> stop. This fix reduces ethdev teardown time
>
> Signed-off-by: Rakesh Kudurumalla <rkudurumalla@marvell.com>
> ---
Updated the git commit as follows and Series applied to
dpdk-next-net-mrvl/for-main. Thanks
commit 48e0c652ed7116df61db6a0d1cf3f0b450faec79 (HEAD -> for-main)
Author: Rakesh Kudurumalla <rkudurumalla@marvell.com>
Date: Tue Dec 5 15:30:48 2023 +0530
net/cnxk: reduce Tx queue release time
Invoked newly added roc API to disable SQB aura FC
during TX queue start and TX queue stop.
This fix reduces ethdev teardown time
Signed-off-by: Rakesh Kudurumalla <rkudurumalla@marvell.com>
commit 3f2604b698e530c8296030de3be60d242d7fc761
Author: Rakesh Kudurumalla <rkudurumalla@marvell.com>
Date: Tue Dec 5 15:30:47 2023 +0530
common/cnxk: support to enable disable SQ
Added a new ROC API to disable SQB aura FC and update SQ state
to disabled state in TX queue stop.
The same SQ status is verified during sq flush to enable or
disable SQB aura FC during ethdev teardown.
This fix reduces teardown time by 90%.
Signed-off-by: Rakesh Kudurumalla <rkudurumalla@marvell.com>
commit 6ed4c08ec7023a119e181b8e29442c3cc95c48ce
Author: Rakesh Kudurumalla <rkudurumalla@marvell.com>
Date: Tue Dec 5 15:30:46 2023 +0530
common/cnxk: optimize ethdev teardown time
API mbox_alloc_msg_npa_aq_enq() mbox is called if SQ needs
to be updated from mbox response else mbox call to kernel
is bypassed reducing the time taken to complete
roc_nix_tm_sq_aura_fc() function.
This reduces ethdev teardown time by 20%.
Signed-off-by: Rakesh Kudurumalla <rkudurumalla@marvell.com>
@@ -1521,7 +1521,7 @@ cnxk_nix_tx_queue_start(struct rte_eth_dev *eth_dev, uint16_t qid)
if (data->tx_queue_state[qid] == RTE_ETH_QUEUE_STATE_STARTED)
return 0;
- rc = roc_nix_tm_sq_aura_fc(sq, true);
+ rc = roc_nix_sq_ena_dis(sq, true);
if (rc) {
plt_err("Failed to enable sq aura fc, txq=%u, rc=%d", qid, rc);
goto done;
@@ -1543,7 +1543,7 @@ cnxk_nix_tx_queue_stop(struct rte_eth_dev *eth_dev, uint16_t qid)
if (data->tx_queue_state[qid] == RTE_ETH_QUEUE_STATE_STOPPED)
return 0;
- rc = roc_nix_tm_sq_aura_fc(sq, false);
+ rc = roc_nix_sq_ena_dis(sq, false);
if (rc) {
plt_err("Failed to disable sqb aura fc, txq=%u, rc=%d", qid,
rc);