summaryrefslogtreecommitdiff
path: root/include/net/xdp_sock.h
diff options
context:
space:
mode:
authorYafang Shao <laoar.shao@gmail.com>2023-03-05 15:46:13 +0300
committerAlexei Starovoitov <ast@kernel.org>2023-03-07 20:33:43 +0300
commitb4fd0d672bca001632d7291b5b162b08e065b815 (patch)
treeaae302ce6e01d5c2d8caf9847f7da0b5ebd62ea6 /include/net/xdp_sock.h
parent73d2c61919e9aeffad1b826ec23b1a4a07c1e0dd (diff)
downloadlinux-b4fd0d672bca001632d7291b5b162b08e065b815.tar.xz
bpf, net: xskmap memory usage
A new helper is introduced to calculate xskmap memory usage. The xfsmap memory usage can be dynamically changed when we add or remove a xsk_map_node. Hence we need to track the count of xsk_map_node to get its memory usage. The result as follows, - before 10: xskmap name count_map flags 0x0 key 4B value 4B max_entries 65536 memlock 524288B - after 10: xskmap name count_map flags 0x0 <<< no elements case key 4B value 4B max_entries 65536 memlock 524608B Signed-off-by: Yafang Shao <laoar.shao@gmail.com> Link: https://lore.kernel.org/r/20230305124615.12358-17-laoar.shao@gmail.com Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'include/net/xdp_sock.h')
-rw-r--r--include/net/xdp_sock.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/net/xdp_sock.h b/include/net/xdp_sock.h
index 3057e1a4a11c..e96a1151ec75 100644
--- a/include/net/xdp_sock.h
+++ b/include/net/xdp_sock.h
@@ -38,6 +38,7 @@ struct xdp_umem {
struct xsk_map {
struct bpf_map map;
spinlock_t lock; /* Synchronize map updates */
+ atomic_t count;
struct xdp_sock __rcu *xsk_map[];
};