aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorAlexei Starovoitov <ast@kernel.org>2020-07-13 15:32:56 -0700
committerAlexei Starovoitov <ast@kernel.org>2020-07-13 15:33:48 -0700
commit7c4bf5fe55ccd106e9c87553e95ea46dcc04c854 (patch)
treee623617e4cb293fd0a0c98047493c580de65f9a6 /tools
parentMerge branch 'resolve_btfids' (diff)
parentxsk: Add xdp statistics to xsk_diag (diff)
downloadlinux-dev-7c4bf5fe55ccd106e9c87553e95ea46dcc04c854.tar.xz
linux-dev-7c4bf5fe55ccd106e9c87553e95ea46dcc04c854.zip
Merge branch 'af_xdp-stats'
Ciara Loftus says: ==================== This series introduces new statistics for af_xdp: 1. drops due to rx ring being full 2. drops due to fill ring being empty 3. failures pulling an item from the tx ring These statistics should assist users debugging and troubleshooting peformance issues and packet drops. The statistics are made available though the getsockopt and xsk_diag interfaces, and the ability to dump these extended statistics is made available in the xdpsock application via the --extra-stats or -x flag. A separate patch which will add ss/iproute2 support will follow. ==================== Acked-by: Björn Töpel <bjorn.topel@intel.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'tools')
-rw-r--r--tools/include/uapi/linux/if_xdp.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/tools/include/uapi/linux/if_xdp.h b/tools/include/uapi/linux/if_xdp.h
index be328c59389d..a78a8096f4ce 100644
--- a/tools/include/uapi/linux/if_xdp.h
+++ b/tools/include/uapi/linux/if_xdp.h
@@ -73,9 +73,12 @@ struct xdp_umem_reg {
};
struct xdp_statistics {
- __u64 rx_dropped; /* Dropped for reasons other than invalid desc */
+ __u64 rx_dropped; /* Dropped for other reasons */
__u64 rx_invalid_descs; /* Dropped due to invalid descriptor */
__u64 tx_invalid_descs; /* Dropped due to invalid descriptor */
+ __u64 rx_ring_full; /* Dropped due to rx ring being full */
+ __u64 rx_fill_ring_empty_descs; /* Failed to retrieve item from fill ring */
+ __u64 tx_ring_empty_descs; /* Failed to retrieve item from tx ring */
};
struct xdp_options {