summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorBreno Leitao <leitao@debian.org>2025-11-20 14:56:54 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-11-24 10:30:10 +0100
commitdc67d67a995ec3ed630c0619ab03725b1057f781 (patch)
treed7abbfc0f838455eb2769b7bb8f51782711354d8 /include/linux
parente9ab9dec36bb6d573783628134665b6588b93fd8 (diff)
downloadlinux-dc67d67a995ec3ed630c0619ab03725b1057f781.tar.gz
linux-dc67d67a995ec3ed630c0619ab03725b1057f781.tar.bz2
linux-dc67d67a995ec3ed630c0619ab03725b1057f781.zip
net: netpoll: Individualize the skb pool
[ Upstream commit 221a9c1df790fa711d65daf5ba05d0addc279153 ] The current implementation of the netpoll system uses a global skb pool, which can lead to inefficient memory usage and waste when targets are disabled or no longer in use. This can result in a significant amount of memory being unnecessarily allocated and retained, potentially causing performance issues and limiting the availability of resources for other system components. Modify the netpoll system to assign a skb pool to each target instead of using a global one. This approach allows for more fine-grained control over memory allocation and deallocation, ensuring that resources are only allocated and retained as needed. Signed-off-by: Breno Leitao <leitao@debian.org> Link: https://patch.msgid.link/20241114-skb_buffers_v2-v3-1-9be9f52a8b69@debian.org Signed-off-by: Jakub Kicinski <kuba@kernel.org> Stable-dep-of: 49c8d2c1f94c ("net: netpoll: fix incorrect refcount handling causing incorrect cleanup") Signed-off-by: Sasha Levin <sashal@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/netpoll.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/netpoll.h b/include/linux/netpoll.h
index 3ddf205b7e2c..f0dddb885280 100644
--- a/include/linux/netpoll.h
+++ b/include/linux/netpoll.h
@@ -32,6 +32,7 @@ struct netpoll {
bool ipv6;
u16 local_port, remote_port;
u8 remote_mac[ETH_ALEN];
+ struct sk_buff_head skb_pool;
};
struct netpoll_info {