diff options
| -rw-r--r-- | drivers/net/ifb.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/ifb.c b/drivers/net/ifb.c index 801f088c134f..030913f8bd26 100644 --- a/drivers/net/ifb.c +++ b/drivers/net/ifb.c | |||
| @@ -98,12 +98,13 @@ static void ri_tasklet(unsigned long dev) | |||
| 98 | stats->tx_packets++; | 98 | stats->tx_packets++; |
| 99 | stats->tx_bytes +=skb->len; | 99 | stats->tx_bytes +=skb->len; |
| 100 | 100 | ||
| 101 | skb->dev = __dev_get_by_index(&init_net, skb->iif); | 101 | skb->dev = dev_get_by_index(&init_net, skb->iif); |
| 102 | if (!skb->dev) { | 102 | if (!skb->dev) { |
| 103 | dev_kfree_skb(skb); | 103 | dev_kfree_skb(skb); |
| 104 | stats->tx_dropped++; | 104 | stats->tx_dropped++; |
| 105 | break; | 105 | break; |
| 106 | } | 106 | } |
| 107 | dev_put(skb->dev); | ||
| 107 | skb->iif = _dev->ifindex; | 108 | skb->iif = _dev->ifindex; |
| 108 | 109 | ||
| 109 | if (from & AT_EGRESS) { | 110 | if (from & AT_EGRESS) { |
