mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-04 04:04:19 +00:00
net: use consume_skb() in place of kfree_skb()
Remove some dropwatch/drop_monitor false positives. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
4aea39c11c
commit
5d0ba55b64
@ -231,9 +231,11 @@ static netdev_tx_t lec_start_xmit(struct sk_buff *skb,
|
|||||||
if (skb_headroom(skb) < 2) {
|
if (skb_headroom(skb) < 2) {
|
||||||
pr_debug("reallocating skb\n");
|
pr_debug("reallocating skb\n");
|
||||||
skb2 = skb_realloc_headroom(skb, LEC_HEADER_LEN);
|
skb2 = skb_realloc_headroom(skb, LEC_HEADER_LEN);
|
||||||
kfree_skb(skb);
|
if (unlikely(!skb2)) {
|
||||||
if (skb2 == NULL)
|
kfree_skb(skb);
|
||||||
return NETDEV_TX_OK;
|
return NETDEV_TX_OK;
|
||||||
|
}
|
||||||
|
consume_skb(skb);
|
||||||
skb = skb2;
|
skb = skb2;
|
||||||
}
|
}
|
||||||
skb_push(skb, 2);
|
skb_push(skb, 2);
|
||||||
|
@ -283,7 +283,7 @@ static int pppoatm_send(struct ppp_channel *chan, struct sk_buff *skb)
|
|||||||
kfree_skb(n);
|
kfree_skb(n);
|
||||||
goto nospace;
|
goto nospace;
|
||||||
}
|
}
|
||||||
kfree_skb(skb);
|
consume_skb(skb);
|
||||||
skb = n;
|
skb = n;
|
||||||
if (skb == NULL)
|
if (skb == NULL)
|
||||||
return DROP_PACKET;
|
return DROP_PACKET;
|
||||||
|
@ -350,7 +350,7 @@ void ax25_transmit_buffer(ax25_cb *ax25, struct sk_buff *skb, int type)
|
|||||||
if (skb->sk != NULL)
|
if (skb->sk != NULL)
|
||||||
skb_set_owner_w(skbn, skb->sk);
|
skb_set_owner_w(skbn, skb->sk);
|
||||||
|
|
||||||
kfree_skb(skb);
|
consume_skb(skb);
|
||||||
skb = skbn;
|
skb = skbn;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -474,7 +474,7 @@ struct sk_buff *ax25_rt_build_path(struct sk_buff *skb, ax25_address *src,
|
|||||||
if (skb->sk != NULL)
|
if (skb->sk != NULL)
|
||||||
skb_set_owner_w(skbn, skb->sk);
|
skb_set_owner_w(skbn, skb->sk);
|
||||||
|
|
||||||
kfree_skb(skb);
|
consume_skb(skb);
|
||||||
|
|
||||||
skb = skbn;
|
skb = skbn;
|
||||||
}
|
}
|
||||||
|
@ -240,7 +240,7 @@ static int dn_long_output(struct neighbour *neigh, struct sk_buff *skb)
|
|||||||
kfree_skb(skb);
|
kfree_skb(skb);
|
||||||
return -ENOBUFS;
|
return -ENOBUFS;
|
||||||
}
|
}
|
||||||
kfree_skb(skb);
|
consume_skb(skb);
|
||||||
skb = skb2;
|
skb = skb2;
|
||||||
net_info_ratelimited("dn_long_output: Increasing headroom\n");
|
net_info_ratelimited("dn_long_output: Increasing headroom\n");
|
||||||
}
|
}
|
||||||
@ -283,7 +283,7 @@ static int dn_short_output(struct neighbour *neigh, struct sk_buff *skb)
|
|||||||
kfree_skb(skb);
|
kfree_skb(skb);
|
||||||
return -ENOBUFS;
|
return -ENOBUFS;
|
||||||
}
|
}
|
||||||
kfree_skb(skb);
|
consume_skb(skb);
|
||||||
skb = skb2;
|
skb = skb2;
|
||||||
net_info_ratelimited("dn_short_output: Increasing headroom\n");
|
net_info_ratelimited("dn_short_output: Increasing headroom\n");
|
||||||
}
|
}
|
||||||
@ -322,7 +322,7 @@ static int dn_phase3_output(struct neighbour *neigh, struct sk_buff *skb)
|
|||||||
kfree_skb(skb);
|
kfree_skb(skb);
|
||||||
return -ENOBUFS;
|
return -ENOBUFS;
|
||||||
}
|
}
|
||||||
kfree_skb(skb);
|
consume_skb(skb);
|
||||||
skb = skb2;
|
skb = skb2;
|
||||||
net_info_ratelimited("dn_phase3_output: Increasing headroom\n");
|
net_info_ratelimited("dn_phase3_output: Increasing headroom\n");
|
||||||
}
|
}
|
||||||
|
@ -200,7 +200,7 @@ static inline int ip_finish_output2(struct sk_buff *skb)
|
|||||||
}
|
}
|
||||||
if (skb->sk)
|
if (skb->sk)
|
||||||
skb_set_owner_w(skb2, skb->sk);
|
skb_set_owner_w(skb2, skb->sk);
|
||||||
kfree_skb(skb);
|
consume_skb(skb);
|
||||||
skb = skb2;
|
skb = skb2;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -709,7 +709,7 @@ int ip_fragment(struct sk_buff *skb, int (*output)(struct sk_buff *))
|
|||||||
|
|
||||||
IP_INC_STATS(dev_net(dev), IPSTATS_MIB_FRAGCREATES);
|
IP_INC_STATS(dev_net(dev), IPSTATS_MIB_FRAGCREATES);
|
||||||
}
|
}
|
||||||
kfree_skb(skb);
|
consume_skb(skb);
|
||||||
IP_INC_STATS(dev_net(dev), IPSTATS_MIB_FRAGOKS);
|
IP_INC_STATS(dev_net(dev), IPSTATS_MIB_FRAGOKS);
|
||||||
return err;
|
return err;
|
||||||
|
|
||||||
|
@ -823,7 +823,7 @@ ip_vs_tunnel_xmit(struct sk_buff *skb, struct ip_vs_conn *cp,
|
|||||||
IP_VS_ERR_RL("%s(): no memory\n", __func__);
|
IP_VS_ERR_RL("%s(): no memory\n", __func__);
|
||||||
return NF_STOLEN;
|
return NF_STOLEN;
|
||||||
}
|
}
|
||||||
kfree_skb(skb);
|
consume_skb(skb);
|
||||||
skb = new_skb;
|
skb = new_skb;
|
||||||
old_iph = ip_hdr(skb);
|
old_iph = ip_hdr(skb);
|
||||||
}
|
}
|
||||||
@ -942,7 +942,7 @@ ip_vs_tunnel_xmit_v6(struct sk_buff *skb, struct ip_vs_conn *cp,
|
|||||||
IP_VS_ERR_RL("%s(): no memory\n", __func__);
|
IP_VS_ERR_RL("%s(): no memory\n", __func__);
|
||||||
return NF_STOLEN;
|
return NF_STOLEN;
|
||||||
}
|
}
|
||||||
kfree_skb(skb);
|
consume_skb(skb);
|
||||||
skb = new_skb;
|
skb = new_skb;
|
||||||
old_iph = ipv6_hdr(skb);
|
old_iph = ipv6_hdr(skb);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user