diff options
author | Alexei Starovoitov <ast@kernel.org> | 2020-07-13 15:32:56 -0700 |
---|---|---|
committer | Alexei Starovoitov <ast@kernel.org> | 2020-07-13 15:33:48 -0700 |
commit | 7c4bf5fe55ccd106e9c87553e95ea46dcc04c854 (patch) | |
tree | e623617e4cb293fd0a0c98047493c580de65f9a6 /tools | |
parent | Merge branch 'resolve_btfids' (diff) | |
parent | xsk: Add xdp statistics to xsk_diag (diff) | |
download | linux-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.h | 5 |
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 { |