[dpdk-dev] [PATCH] ethdev: distinguish between drop and error stats

Jay Rolette rolette at infiniteio.com
Fri Oct 2 15:25:27 CEST 2015


Can you improve the comments on these counters? If you didn't happen to
follow this thread, there's no way to reasonably figure out what the
difference is from looking at the code without chasing it all the way down
and cross-referencing the NIC datasheet.

Thanks,
Jay

On Fri, Oct 2, 2015 at 7:47 AM, Maryam Tahhan <maryam.tahhan at intel.com>
wrote:

> Make a distniction between dropped packets and error statistics to allow
> a higher level fault management entity to interact with DPDK and take
> appropriate measures when errors are detected. It will also provide
> valuable information for any applications that collects/extracts DPDK
> stats, such applications include Open vSwitch.
> After this patch the distinction is:
> ierrors = Total number of packets dropped by hardware (malformed
> packets, ...) Where the # of drops can ONLY be <=  the packets received
> (without overlap between registers).
> Rx_pkt_errors = Total number of erroneous received packets. Where the #
> of errors can be >= the packets received (without overlap between
> registers), this is because there may be multiple errors associated with
> a packet.
>
> Signed-off-by: Maryam Tahhan <maryam.tahhan at intel.com>
> ---
>  lib/librte_ether/rte_ethdev.h | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h
> index 8a8c82b..53dd55d 100644
> --- a/lib/librte_ether/rte_ethdev.h
> +++ b/lib/librte_ether/rte_ethdev.h
> @@ -200,8 +200,9 @@ struct rte_eth_stats {
>         /**< Deprecated; Total of RX packets with CRC error. */
>         uint64_t ibadlen;
>         /**< Deprecated; Total of RX packets with bad length. */
> -       uint64_t ierrors;   /**< Total number of erroneous received
> packets. */
> +       uint64_t ierrors;   /**< Total number of dropped received packets.
> */
>         uint64_t oerrors;   /**< Total number of failed transmitted
> packets. */
> +       uint64_t ipkterrors;   /**< Total number of erroneous received
> packets. */
>         uint64_t imcasts;
>         /**< Deprecated; Total number of multicast received packets. */
>         uint64_t rx_nombuf; /**< Total number of RX mbuf allocation
> failures. */
> --
> 2.4.3
>
>


More information about the dev mailing list