Skip to contentSkip to conversation

bnxt underreporting stats when queue count > RTE_ETHDEV_QUEUE_STAT_CNTRS

DPDK/ethdev Bug 1836 [email protected] 1 participant 1 message Nov 26, 2025

lore
Share & tools
lore
#0 lore raw

http://bugs.dpdk.org/show_bug.cgi?id=1836

            Bug ID: 1836
           Summary: bnxt underreporting stats when queue count >
                    RTE_ETHDEV_QUEUE_STAT_CNTRS
           Product: DPDK
           Version: 24.07
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: ethdev
          Assignee: [email protected]
          Reporter: [email protected]

Target Milestone: ---

Basically, if you have more than RTE_ETHDEV_QUEUE_STAT_CNTRS queues, it will underreport counters, specifically, ipacket, ibytes, and so on, so like total port stats, not per queue ones.

I did a little bit of investigation:

bnxt_stats_get_op/bnxt_stats_get_ext both have this line

num_q_stats = RTE_MIN(bp->rx_cp_nr_rings,

              (unsigned int)RTE_ETHDEV_QUEUE_STAT_CNTRS);

Then, in the loop, bnxt_hwrm_ring_stats is called to retrieve stats for the queue, and bnxt_fill_rte_eth_stats is used to aggregate results and actually add values to ipacket/ibytes; however, if rx_cp_nr_rings > RTE_ETHDEV_QUEUE_STAT_CNTRS, it means that some queues are never checked.

Maybe there are hardware limitations I'm not aware of, but it seems like a bug to me.

Originally saw this on 24.07, and now we are moving to 25, but just from the code, it seems like 25 will have the same problem, but I haven't tried with traffic yet on 25.

Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.