Skip to content

Commit

Permalink
net: use consume_skb() in place of kfree_skb()
Browse files Browse the repository at this point in the history
Remove some dropwatch/drop_monitor false positives.

Signed-off-by: Eric Dumazet <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
  • Loading branch information
Eric Dumazet authored and davem330 committed Jun 4, 2012
1 parent 4aea39c commit 5d0ba55
Show file tree
Hide file tree
Showing 7 changed files with 14 additions and 12 deletions.
6 changes: 4 additions & 2 deletions net/atm/lec.c
Original file line number Diff line number Diff line change
Expand Up @@ -231,9 +231,11 @@ static netdev_tx_t lec_start_xmit(struct sk_buff *skb,
if (skb_headroom(skb) < 2) {
pr_debug("reallocating skb\n");
skb2 = skb_realloc_headroom(skb, LEC_HEADER_LEN);
kfree_skb(skb);
if (skb2 == NULL)
if (unlikely(!skb2)) {
kfree_skb(skb);
return NETDEV_TX_OK;
}
consume_skb(skb);
skb = skb2;
}
skb_push(skb, 2);
Expand Down
2 changes: 1 addition & 1 deletion net/atm/pppoatm.c
Original file line number Diff line number Diff line change
Expand Up @@ -283,7 +283,7 @@ static int pppoatm_send(struct ppp_channel *chan, struct sk_buff *skb)
kfree_skb(n);
goto nospace;
}
kfree_skb(skb);
consume_skb(skb);
skb = n;
if (skb == NULL)
return DROP_PACKET;
Expand Down
2 changes: 1 addition & 1 deletion net/ax25/ax25_out.c
Original file line number Diff line number Diff line change
Expand Up @@ -350,7 +350,7 @@ void ax25_transmit_buffer(ax25_cb *ax25, struct sk_buff *skb, int type)
if (skb->sk != NULL)
skb_set_owner_w(skbn, skb->sk);

kfree_skb(skb);
consume_skb(skb);
skb = skbn;
}

Expand Down
2 changes: 1 addition & 1 deletion net/ax25/ax25_route.c
Original file line number Diff line number Diff line change
Expand Up @@ -474,7 +474,7 @@ struct sk_buff *ax25_rt_build_path(struct sk_buff *skb, ax25_address *src,
if (skb->sk != NULL)
skb_set_owner_w(skbn, skb->sk);

kfree_skb(skb);
consume_skb(skb);

skb = skbn;
}
Expand Down
6 changes: 3 additions & 3 deletions net/decnet/dn_neigh.c
Original file line number Diff line number Diff line change
Expand Up @@ -240,7 +240,7 @@ static int dn_long_output(struct neighbour *neigh, struct sk_buff *skb)
kfree_skb(skb);
return -ENOBUFS;
}
kfree_skb(skb);
consume_skb(skb);
skb = skb2;
net_info_ratelimited("dn_long_output: Increasing headroom\n");
}
Expand Down Expand Up @@ -283,7 +283,7 @@ static int dn_short_output(struct neighbour *neigh, struct sk_buff *skb)
kfree_skb(skb);
return -ENOBUFS;
}
kfree_skb(skb);
consume_skb(skb);
skb = skb2;
net_info_ratelimited("dn_short_output: Increasing headroom\n");
}
Expand Down Expand Up @@ -322,7 +322,7 @@ static int dn_phase3_output(struct neighbour *neigh, struct sk_buff *skb)
kfree_skb(skb);
return -ENOBUFS;
}
kfree_skb(skb);
consume_skb(skb);
skb = skb2;
net_info_ratelimited("dn_phase3_output: Increasing headroom\n");
}
Expand Down
4 changes: 2 additions & 2 deletions net/ipv4/ip_output.c
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,7 @@ static inline int ip_finish_output2(struct sk_buff *skb)
}
if (skb->sk)
skb_set_owner_w(skb2, skb->sk);
kfree_skb(skb);
consume_skb(skb);
skb = skb2;
}

Expand Down Expand Up @@ -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);
}
kfree_skb(skb);
consume_skb(skb);
IP_INC_STATS(dev_net(dev), IPSTATS_MIB_FRAGOKS);
return err;

Expand Down
4 changes: 2 additions & 2 deletions net/netfilter/ipvs/ip_vs_xmit.c
Original file line number Diff line number Diff line change
Expand Up @@ -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__);
return NF_STOLEN;
}
kfree_skb(skb);
consume_skb(skb);
skb = new_skb;
old_iph = ip_hdr(skb);
}
Expand Down Expand Up @@ -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__);
return NF_STOLEN;
}
kfree_skb(skb);
consume_skb(skb);
skb = new_skb;
old_iph = ipv6_hdr(skb);
}
Expand Down

0 comments on commit 5d0ba55

Please sign in to comment.