projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
c718ea4
)
net: __pskb_pull_tail() & pskb_carve_frag_list() drop_monitor friends
author
Eric Dumazet
<edumazet@google.com>
Sun, 20 Feb 2022 15:40:52 +0000
(07:40 -0800)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Wed, 2 Mar 2022 10:47:56 +0000
(11:47 +0100)
commit
ef527f968ae05c6717c39f49c8709a7e2c19183a
upstream.
Whenever one of these functions pull all data from an skb in a frag_list,
use consume_skb() instead of kfree_skb() to avoid polluting drop
monitoring.
Fixes: 6fa01ccd8830 ("skbuff: Add pskb_extract() helper function")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Link:
https://lore.kernel.org/r/20220220154052.1308469-1-eric.dumazet@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/core/skbuff.c
patch
|
blob
|
history
diff --git
a/net/core/skbuff.c
b/net/core/skbuff.c
index f7e003571a3563d111d46be435d5189d53d8f21a..bb4dce8fd0405149adc169d8b4ceeee5249b8ce2 100644
(file)
--- a/
net/core/skbuff.c
+++ b/
net/core/skbuff.c
@@
-2254,7
+2254,7
@@
void *__pskb_pull_tail(struct sk_buff *skb, int delta)
/* Free pulled out fragments. */
while ((list = skb_shinfo(skb)->frag_list) != insp) {
skb_shinfo(skb)->frag_list = list->next;
-
kfre
e_skb(list);
+
consum
e_skb(list);
}
/* And insert new clone at head. */
if (clone) {
@@
-6220,7
+6220,7
@@
static int pskb_carve_frag_list(struct sk_buff *skb,
/* Free pulled out fragments. */
while ((list = shinfo->frag_list) != insp) {
shinfo->frag_list = list->next;
-
kfre
e_skb(list);
+
consum
e_skb(list);
}
/* And insert new clone at head. */
if (clone) {