ethdev: fix overwriting driver-specific stats
After doing a driver callout to fill in the driver specific
parts of struct rte_eth_stats, rte_eth_stats_get() overwrites
the rx_nombuf member regardless of whether the driver itself
has assigned a value. Any driver-assigned value should take
priority.
Fixes: af75078fec
("first public release")
Signed-off-by: Remy Horton <remy.horton@intel.com>
This commit is contained in:
parent
6262b92eaa
commit
53ecfa24fb
@ -1490,8 +1490,8 @@ rte_eth_stats_get(uint8_t port_id, struct rte_eth_stats *stats)
|
||||
memset(stats, 0, sizeof(*stats));
|
||||
|
||||
RTE_FUNC_PTR_OR_ERR_RET(*dev->dev_ops->stats_get, -ENOTSUP);
|
||||
(*dev->dev_ops->stats_get)(dev, stats);
|
||||
stats->rx_nombuf = dev->data->rx_mbuf_alloc_failed;
|
||||
(*dev->dev_ops->stats_get)(dev, stats);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user