diff options
Diffstat (limited to 'net/core/netpoll.c')
| -rw-r--r-- | net/core/netpoll.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/core/netpoll.c b/net/core/netpoll.c index d0c8bf585f06..b04d643fc3c7 100644 --- a/net/core/netpoll.c +++ b/net/core/netpoll.c | |||
| @@ -215,10 +215,12 @@ static void zap_completion_queue(void) | |||
| 215 | while (clist != NULL) { | 215 | while (clist != NULL) { |
| 216 | struct sk_buff *skb = clist; | 216 | struct sk_buff *skb = clist; |
| 217 | clist = clist->next; | 217 | clist = clist->next; |
| 218 | if (skb->destructor) | 218 | if (skb->destructor) { |
| 219 | atomic_inc(&skb->users); | ||
| 219 | dev_kfree_skb_any(skb); /* put this one back */ | 220 | dev_kfree_skb_any(skb); /* put this one back */ |
| 220 | else | 221 | } else { |
| 221 | __kfree_skb(skb); | 222 | __kfree_skb(skb); |
| 223 | } | ||
| 222 | } | 224 | } |
| 223 | } | 225 | } |
| 224 | 226 | ||
