Trying to access xstats_names after "if (stats_names == NULL)" is obviously wrong, which would result to a crash while running "show port xstats 0" in testpmd with virtio PMD.
The fix is also straightforward: just revese the check. Fixes: baf91c395b18 ("net/virtio: fetch extended statistics with integer ids") Cc: Remy Horton <remy.horton at intel.com> Signed-off-by: Yuanhan Liu <yuanhan.liu at linux.intel.com> --- drivers/net/virtio/virtio_ethdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/virtio/virtio_ethdev.c index 19d5d8a..12fa640 100644 --- a/drivers/net/virtio/virtio_ethdev.c +++ b/drivers/net/virtio/virtio_ethdev.c @@ -776,7 +776,7 @@ static int virtio_dev_xstats_get_names(struct rte_eth_dev *dev, unsigned nstats = dev->data->nb_tx_queues * VIRTIO_NB_TXQ_XSTATS + dev->data->nb_rx_queues * VIRTIO_NB_RXQ_XSTATS; - if (xstats_names == NULL) { + if (xstats_names != NULL) { /* Note: limit checked in rte_eth_xstats_names() */ for (i = 0; i < dev->data->nb_rx_queues; i++) { -- 1.9.0