ixgbe: fix mbuf failure statistics in vector Rx
authorBalazs Nemeth <balazs.nemeth@intel.com>
Fri, 28 Nov 2014 09:21:45 +0000 (09:21 +0000)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Fri, 28 Nov 2014 15:19:25 +0000 (16:19 +0100)
The statistics that is reported through the rx_nombuf fields in struct
rte_eth_stats was not set when the vector PMD was used. The statistics
should report the number of mbufs that could _not_ be allocated during
rearm of the RX queue. The non-vector PMD reports it correctly. The
use of either vector PMD or non-vector PMD depends on runtime
configuration. Hence it is possible that a change in configuration
would disable this statistics. To prevent this from happening, the
statistics should be reported by both implementations.

Signed-off-by: Balazs Nemeth <balazs.nemeth@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c

index 42c0f60..579bc46 100644 (file)
@@ -71,6 +71,8 @@ ixgbe_rxq_rearm(struct igb_rx_queue *rxq)
                                                dma_addr0);
                        }
                }
+               rte_eth_devices[rxq->port_id].data->rx_mbuf_alloc_failed +=
+                       RTE_IXGBE_RXQ_REARM_THRESH;
                return;
        }