diff options
-rw-r--r-- | net/core/pktgen.c | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/net/core/pktgen.c b/net/core/pktgen.c index 65498483325a..32d419f5ac98 100644 --- a/net/core/pktgen.c +++ b/net/core/pktgen.c | |||
@@ -3275,8 +3275,7 @@ static void pktgen_stop(struct pktgen_thread *t) | |||
3275 | 3275 | ||
3276 | list_for_each_entry(pkt_dev, &t->if_list, list) { | 3276 | list_for_each_entry(pkt_dev, &t->if_list, list) { |
3277 | pktgen_stop_device(pkt_dev); | 3277 | pktgen_stop_device(pkt_dev); |
3278 | if (pkt_dev->skb) | 3278 | kfree_skb(pkt_dev->skb); |
3279 | kfree_skb(pkt_dev->skb); | ||
3280 | 3279 | ||
3281 | pkt_dev->skb = NULL; | 3280 | pkt_dev->skb = NULL; |
3282 | } | 3281 | } |
@@ -3303,8 +3302,7 @@ static void pktgen_rem_one_if(struct pktgen_thread *t) | |||
3303 | if (!cur->removal_mark) | 3302 | if (!cur->removal_mark) |
3304 | continue; | 3303 | continue; |
3305 | 3304 | ||
3306 | if (cur->skb) | 3305 | kfree_skb(cur->skb); |
3307 | kfree_skb(cur->skb); | ||
3308 | cur->skb = NULL; | 3306 | cur->skb = NULL; |
3309 | 3307 | ||
3310 | pktgen_remove_device(t, cur); | 3308 | pktgen_remove_device(t, cur); |
@@ -3328,8 +3326,7 @@ static void pktgen_rem_all_ifs(struct pktgen_thread *t) | |||
3328 | list_for_each_safe(q, n, &t->if_list) { | 3326 | list_for_each_safe(q, n, &t->if_list) { |
3329 | cur = list_entry(q, struct pktgen_dev, list); | 3327 | cur = list_entry(q, struct pktgen_dev, list); |
3330 | 3328 | ||
3331 | if (cur->skb) | 3329 | kfree_skb(cur->skb); |
3332 | kfree_skb(cur->skb); | ||
3333 | cur->skb = NULL; | 3330 | cur->skb = NULL; |
3334 | 3331 | ||
3335 | pktgen_remove_device(t, cur); | 3332 | pktgen_remove_device(t, cur); |
@@ -3393,8 +3390,7 @@ static __inline__ void pktgen_xmit(struct pktgen_dev *pkt_dev) | |||
3393 | 3390 | ||
3394 | if (!netif_running(odev)) { | 3391 | if (!netif_running(odev)) { |
3395 | pktgen_stop_device(pkt_dev); | 3392 | pktgen_stop_device(pkt_dev); |
3396 | if (pkt_dev->skb) | 3393 | kfree_skb(pkt_dev->skb); |
3397 | kfree_skb(pkt_dev->skb); | ||
3398 | pkt_dev->skb = NULL; | 3394 | pkt_dev->skb = NULL; |
3399 | goto out; | 3395 | goto out; |
3400 | } | 3396 | } |
@@ -3415,8 +3411,7 @@ static __inline__ void pktgen_xmit(struct pktgen_dev *pkt_dev) | |||
3415 | if ((++pkt_dev->clone_count >= pkt_dev->clone_skb) | 3411 | if ((++pkt_dev->clone_count >= pkt_dev->clone_skb) |
3416 | || (!pkt_dev->skb)) { | 3412 | || (!pkt_dev->skb)) { |
3417 | /* build a new pkt */ | 3413 | /* build a new pkt */ |
3418 | if (pkt_dev->skb) | 3414 | kfree_skb(pkt_dev->skb); |
3419 | kfree_skb(pkt_dev->skb); | ||
3420 | 3415 | ||
3421 | pkt_dev->skb = fill_packet(odev, pkt_dev); | 3416 | pkt_dev->skb = fill_packet(odev, pkt_dev); |
3422 | if (pkt_dev->skb == NULL) { | 3417 | if (pkt_dev->skb == NULL) { |
@@ -3498,8 +3493,7 @@ static __inline__ void pktgen_xmit(struct pktgen_dev *pkt_dev) | |||
3498 | 3493 | ||
3499 | /* Done with this */ | 3494 | /* Done with this */ |
3500 | pktgen_stop_device(pkt_dev); | 3495 | pktgen_stop_device(pkt_dev); |
3501 | if (pkt_dev->skb) | 3496 | kfree_skb(pkt_dev->skb); |
3502 | kfree_skb(pkt_dev->skb); | ||
3503 | pkt_dev->skb = NULL; | 3497 | pkt_dev->skb = NULL; |
3504 | } | 3498 | } |
3505 | out:; | 3499 | out:; |