summaryrefslogtreecommitdiffstats
path: root/net/core/dev.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2009-03-25 10:26:51 +0100
committerIngo Molnar <mingo@elte.hu>2009-03-25 10:26:51 +0100
commitb6d9842258d1ba27fb978cded74eb4b6aa15edc8 (patch)
tree0fc02ca81720b6e4d19d372e346faad47f4f612c /net/core/dev.c
parent67aa0f767af488a7f1e41cccb4f7a4893f24a1ab (diff)
parent8e0ee43bc2c3e19db56a4adaa9a9b04ce885cd84 (diff)
downloadkernel-crypto-b6d9842258d1ba27fb978cded74eb4b6aa15edc8.tar.gz
kernel-crypto-b6d9842258d1ba27fb978cded74eb4b6aa15edc8.tar.xz
kernel-crypto-b6d9842258d1ba27fb978cded74eb4b6aa15edc8.zip
Merge branch 'sched/cleanups'; commit 'v2.6.29' into sched/core
Diffstat (limited to 'net/core/dev.c')
-rw-r--r--net/core/dev.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/net/core/dev.c b/net/core/dev.c
index f1129706ce7..e3fe5c70560 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -2588,9 +2588,9 @@ static int process_backlog(struct napi_struct *napi, int quota)
local_irq_disable();
skb = __skb_dequeue(&queue->input_pkt_queue);
if (!skb) {
- __napi_complete(napi);
local_irq_enable();
- break;
+ napi_complete(napi);
+ goto out;
}
local_irq_enable();
@@ -2599,6 +2599,7 @@ static int process_backlog(struct napi_struct *napi, int quota)
napi_gro_flush(napi);
+out:
return work;
}
@@ -2671,7 +2672,7 @@ void netif_napi_del(struct napi_struct *napi)
struct sk_buff *skb, *next;
list_del_init(&napi->dev_list);
- kfree(napi->skb);
+ kfree_skb(napi->skb);
for (skb = napi->gro_list; skb; skb = next) {
next = skb->next;