diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 07:10:00 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 07:10:00 +0000 |
commit | 4ba2b326284765e942044db13a7f0dae702bec93 (patch) | |
tree | cbdfaec33eed4f3a970c54cd10e8ddfe3003b3b1 /lib/util/stats.h | |
parent | Initial commit. (diff) | |
download | xdp-tools-4ba2b326284765e942044db13a7f0dae702bec93.tar.xz xdp-tools-4ba2b326284765e942044db13a7f0dae702bec93.zip |
Adding upstream version 1.3.1.upstream/1.3.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | lib/util/stats.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/lib/util/stats.h b/lib/util/stats.h new file mode 100644 index 0000000..9ee0cad --- /dev/null +++ b/lib/util/stats.h @@ -0,0 +1,26 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +#ifndef __STATS_H +#define __STATS_H + +#include <bpf/libbpf.h> + +#include "xdp/xdp_stats_kern_user.h" + +struct record { + __u64 timestamp; + bool enabled; + struct xdp_stats_record total; /* defined in common_kern_user.h */ +}; + +struct stats_record { + struct record stats[XDP_ACTION_MAX]; +}; + +int stats_print_one(struct stats_record *stats_rec); +int stats_print(struct stats_record *stats_rec, + struct stats_record *stats_prev); +int stats_collect(int map_fd, __u32 map_type, struct stats_record *stats_rec); +int stats_poll(int map_fd, int interval, bool *exit, const char *pin_dir, const char *map_name); + +#endif |