diff options
author | Stephen Hemminger <shemminger@vyatta.com> | 2008-11-01 21:01:09 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-11-01 21:01:09 -0700 |
commit | d1a203eac0ec13cd1c0ba610fe7a55c9bc40473b (patch) | |
tree | 38fcd14da889f021d18346c5f3595591b5051f83 /net | |
parent | 920da6923cf03c8a78fbaffa408f8ab37f6abfc1 (diff) | |
download | kernel-crypto-d1a203eac0ec13cd1c0ba610fe7a55c9bc40473b.tar.gz kernel-crypto-d1a203eac0ec13cd1c0ba610fe7a55c9bc40473b.tar.xz kernel-crypto-d1a203eac0ec13cd1c0ba610fe7a55c9bc40473b.zip |
net: add documentation for skb recycling
Commit 04a4bb55bcf35b63d40fd2725e58599ff8310dd7 ("net: add
skb_recycle_check() to enable netdriver skb recycling") added a
method for network drivers to recycle skbuffs, but while use of
this mechanism was documented in the commit message, it should
really have been added as a docbook comment as well -- this
patch does that.
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/core/skbuff.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/net/core/skbuff.c b/net/core/skbuff.c index 4e22e3a3535..ebb6b94f8af 100644 --- a/net/core/skbuff.c +++ b/net/core/skbuff.c @@ -449,6 +449,18 @@ void kfree_skb(struct sk_buff *skb) __kfree_skb(skb); } +/** + * skb_recycle_check - check if skb can be reused for receive + * @skb: buffer + * @skb_size: minimum receive buffer size + * + * Checks that the skb passed in is not shared or cloned, and + * that it is linear and its head portion at least as large as + * skb_size so that it can be recycled as a receive buffer. + * If these conditions are met, this function does any necessary + * reference count dropping and cleans up the skbuff as if it + * just came from __alloc_skb(). + */ int skb_recycle_check(struct sk_buff *skb, int skb_size) { struct skb_shared_info *shinfo; |