[DPDK/ethdev Bug 1836] bnxt underreporting stats when queue count > RTE_ETHDEV_QUEUE_STAT_CNTRS

bugzilla at dpdk.org bugzilla at dpdk.org
Wed Nov 26 18:05:36 CET 2025


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: dev at dpdk.org
          Reporter: oleksandrn at interfacemasters.com
  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.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the dev mailing list