net/hns3: support trace Rx/Tx burst function

Message ID 1617964003-62711-1-git-send-email-humin29@huawei.com (mailing list archive)
State Accepted, archived
Delegated to: Ferruh Yigit
Headers
Series net/hns3: support trace Rx/Tx burst function |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/travis-robot success travis build: passed
ci/Intel-compilation success Compilation OK
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-abi-testing success Testing PASS
ci/iol-testing success Testing PASS
ci/intel-Testing success Testing PASS

Commit Message

humin (Q) April 9, 2021, 10:26 a.m. UTC
  From: Chengwen Feng <fengchengwen@huawei.com>

This patch adds debug info for Rx/Tx burst function which was choosing.

Signed-off-by: Chengwen Feng <fengchengwen@huawei.com>
Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
---
 drivers/net/hns3/hns3_rxtx.c | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)
  

Comments

Ferruh Yigit April 13, 2021, 8:36 a.m. UTC | #1
On 4/9/2021 11:26 AM, Min Hu (Connor) wrote:
> From: Chengwen Feng <fengchengwen@huawei.com>
> 
> This patch adds debug info for Rx/Tx burst function which was choosing.
> 
> Signed-off-by: Chengwen Feng <fengchengwen@huawei.com>
> Signed-off-by: Min Hu (Connor) <humin29@huawei.com>

Applied to dpdk-next-net/main, thanks.
  
David Marchand April 13, 2021, 9:03 a.m. UTC | #2
On Tue, Apr 13, 2021 at 10:37 AM Ferruh Yigit <ferruh.yigit@intel.com> wrote:
>
> On 4/9/2021 11:26 AM, Min Hu (Connor) wrote:
> > From: Chengwen Feng <fengchengwen@huawei.com>
> >
> > This patch adds debug info for Rx/Tx burst function which was choosing.
> >
> > Signed-off-by: Chengwen Feng <fengchengwen@huawei.com>
> > Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
>
> Applied to dpdk-next-net/main, thanks.

Can we avoid mentioning "trace" in the title?
This is to avoid confusion with rte_trace.
  
Ferruh Yigit April 13, 2021, 9:13 a.m. UTC | #3
On 4/13/2021 10:03 AM, David Marchand wrote:
> On Tue, Apr 13, 2021 at 10:37 AM Ferruh Yigit <ferruh.yigit@intel.com> wrote:
>>
>> On 4/9/2021 11:26 AM, Min Hu (Connor) wrote:
>>> From: Chengwen Feng <fengchengwen@huawei.com>
>>>
>>> This patch adds debug info for Rx/Tx burst function which was choosing.
>>>
>>> Signed-off-by: Chengwen Feng <fengchengwen@huawei.com>
>>> Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
>>
>> Applied to dpdk-next-net/main, thanks.
> 
> Can we avoid mentioning "trace" in the title?
> This is to avoid confusion with rte_trace.
> 

Indeed, I also though if it is adding rte_trace support when I first see the 
title, I will update it to:
"net/hns3: log selected datapath"
  
humin (Q) April 13, 2021, 11:42 a.m. UTC | #4
在 2021/4/13 17:13, Ferruh Yigit 写道:
> On 4/13/2021 10:03 AM, David Marchand wrote:
>> On Tue, Apr 13, 2021 at 10:37 AM Ferruh Yigit <ferruh.yigit@intel.com> 
>> wrote:
>>>
>>> On 4/9/2021 11:26 AM, Min Hu (Connor) wrote:
>>>> From: Chengwen Feng <fengchengwen@huawei.com>
>>>>
>>>> This patch adds debug info for Rx/Tx burst function which was choosing.
>>>>
>>>> Signed-off-by: Chengwen Feng <fengchengwen@huawei.com>
>>>> Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
>>>
>>> Applied to dpdk-next-net/main, thanks.
>>
>> Can we avoid mentioning "trace" in the title?
>> This is to avoid confusion with rte_trace.
>>
> 
> Indeed, I also though if it is adding rte_trace support when I first see 
> the title, I will update it to:
> "net/hns3: log selected datapath"
OK, thanks Ferruh and David.
> .
  

Patch

diff --git a/drivers/net/hns3/hns3_rxtx.c b/drivers/net/hns3/hns3_rxtx.c
index b45afcd..19adf00 100644
--- a/drivers/net/hns3/hns3_rxtx.c
+++ b/drivers/net/hns3/hns3_rxtx.c
@@ -4205,6 +4205,22 @@  hns3_dummy_rxtx_burst(void *dpdk_txq __rte_unused,
 	return 0;
 }
 
+static void
+hns3_trace_rxtx_function(struct rte_eth_dev *dev)
+{
+	struct hns3_hw *hw = HNS3_DEV_PRIVATE_TO_HW(dev->data->dev_private);
+	struct rte_eth_burst_mode rx_mode;
+	struct rte_eth_burst_mode tx_mode;
+
+	memset(&rx_mode, 0, sizeof(rx_mode));
+	memset(&tx_mode, 0, sizeof(tx_mode));
+	(void)hns3_rx_burst_mode_get(dev, 0, &rx_mode);
+	(void)hns3_tx_burst_mode_get(dev, 0, &tx_mode);
+
+	hns3_dbg(hw, "using rx_pkt_burst: %s, tx_pkt_burst: %s.",
+		 rx_mode.info, tx_mode.info);
+}
+
 void hns3_set_rxtx_function(struct rte_eth_dev *eth_dev)
 {
 	struct hns3_adapter *hns = eth_dev->data->dev_private;
@@ -4217,6 +4233,7 @@  void hns3_set_rxtx_function(struct rte_eth_dev *eth_dev)
 		eth_dev->tx_pkt_burst = hns3_get_tx_function(eth_dev, &prep);
 		eth_dev->tx_pkt_prepare = prep;
 		eth_dev->tx_descriptor_status = hns3_dev_tx_descriptor_status;
+		hns3_trace_rxtx_function(eth_dev);
 	} else {
 		eth_dev->rx_pkt_burst = hns3_dummy_rxtx_burst;
 		eth_dev->tx_pkt_burst = hns3_dummy_rxtx_burst;