aboutsummaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
Diffstat (limited to 'net')
-rw-r--r--net/802/tr.c1
-rw-r--r--net/atm/lec.c4
2 files changed, 4 insertions, 1 deletions
diff --git a/net/802/tr.c b/net/802/tr.c
index a6a6d46e708..987d91559bc 100644
--- a/net/802/tr.c
+++ b/net/802/tr.c
@@ -193,6 +193,7 @@ __be16 tr_type_trans(struct sk_buff *skb, struct net_device *dev)
struct trllc *trllc;
unsigned riflen=0;
+ skb->dev = dev;
skb->mac.raw = skb->data;
trh = tr_hdr(skb);
diff --git a/net/atm/lec.c b/net/atm/lec.c
index 3d804d61f65..e5ed878c882 100644
--- a/net/atm/lec.c
+++ b/net/atm/lec.c
@@ -825,14 +825,16 @@ static void lec_push(struct atm_vcc *vcc, struct sk_buff *skb)
if (!hlist_empty(&priv->lec_arp_empty_ones)) {
lec_arp_check_empties(priv, vcc, skb);
}
- skb->dev = dev;
skb_pull(skb, 2); /* skip lec_id */
#ifdef CONFIG_TR
if (priv->is_trdev)
skb->protocol = tr_type_trans(skb, dev);
else
#endif
+ {
+ skb->dev = dev;
skb->protocol = eth_type_trans(skb, dev);
+ }
priv->stats.rx_packets++;
priv->stats.rx_bytes += skb->len;
memset(ATM_SKB(skb), 0, sizeof(struct atm_skb_data));