On 5/3/2022 8:14 PM, Long Li wrote:
Subject: Re: [Patch v2] net/netvsc: report correct stats values

On 5/3/2022 7:18 PM, Long Li wrote:
Subject: Re: [Patch v2] net/netvsc: report correct stats values

On Tue, 26 Apr 2022 22:56:14 +0100
Ferruh Yigit <ferruh.yi...@xilinx.com> wrote:

                if (i < RTE_ETHDEV_QUEUE_STAT_CNTRS) {
-                       stats->q_opackets[i] = txq->stats.packets;
-                       stats->q_obytes[i] = txq->stats.bytes;
+                       stats->q_opackets[i] += txq->stats.packets;
+                       stats->q_obytes[i] += txq->stats.bytes;

This is per queue stats, 'stats->q_opackets[i]', in next iteration
of the loop, 'i' will be increased and 'txq' will be updated, so as
far as I can see the above change has no affect.

Agree, that is why it was just assignment originally.

The condition here is a little different. NETVSC is a master device with
another PMD running as a slave. When reporting stats values, it needs to add
the values from the slave PMD. The original code just overwrites the values
from its slave PMD.

Where the initial values are coming from, 'hn_vf_stats_get()'?

If 'hn_vf_stats_get()' fills the stats, what are the values kept in 
'txq->stats.*'
in above updated loop?

Yes, hn_vf_stats_get() fills in the stats from the slave PMD. txq->stats values 
are from the master PMD. Those values are different and accounted separated from 
the values from the slave PMD.

I see, since this is a little different than what most of the PMDs do, can you please put a little more info to the commit log? Or perhaps can add some comments to the code.

And still 'stats->rx_nombuf' change is not required right? If so can you remove it in the next version?

Reply via email to