diff options
Diffstat (limited to 'net')
-rw-r--r-- | net/llc/llc_output.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/llc/llc_output.c b/net/llc/llc_output.c index 729e25108275..754f4fedc852 100644 --- a/net/llc/llc_output.c +++ b/net/llc/llc_output.c | |||
@@ -41,7 +41,8 @@ int llc_mac_hdr_init(struct sk_buff *skb, | |||
41 | struct net_device *dev = skb->dev; | 41 | struct net_device *dev = skb->dev; |
42 | struct trh_hdr *trh; | 42 | struct trh_hdr *trh; |
43 | 43 | ||
44 | skb->mac.raw = skb_push(skb, sizeof(*trh)); | 44 | skb_push(skb, sizeof(*trh)); |
45 | skb_reset_mac_header(skb); | ||
45 | trh = tr_hdr(skb); | 46 | trh = tr_hdr(skb); |
46 | trh->ac = AC; | 47 | trh->ac = AC; |
47 | trh->fc = LLC_FRAME; | 48 | trh->fc = LLC_FRAME; |
@@ -62,7 +63,8 @@ int llc_mac_hdr_init(struct sk_buff *skb, | |||
62 | unsigned short len = skb->len; | 63 | unsigned short len = skb->len; |
63 | struct ethhdr *eth; | 64 | struct ethhdr *eth; |
64 | 65 | ||
65 | skb->mac.raw = skb_push(skb, sizeof(*eth)); | 66 | skb_push(skb, sizeof(*eth)); |
67 | skb_reset_mac_header(skb); | ||
66 | eth = eth_hdr(skb); | 68 | eth = eth_hdr(skb); |
67 | eth->h_proto = htons(len); | 69 | eth->h_proto = htons(len); |
68 | memcpy(eth->h_dest, da, ETH_ALEN); | 70 | memcpy(eth->h_dest, da, ETH_ALEN); |