skb_push updates and returns skb->data, so we can just call skb_reset_mac_header after the call to skb_push.
Signed-off-by: Arnaldo Carvalho de Melo <[EMAIL PROTECTED]> --- net/llc/llc_output.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)
From 3fdb2fef96c8525336974f9c2ca479e27f81a459 Mon Sep 17 00:00:00 2001 From: Arnaldo Carvalho de Melo <[EMAIL PROTECTED]> Date: Sat, 10 Mar 2007 12:17:29 -0300 Subject: [PATCH 06/11] [LLC]: Use skb_reset_mac_header in llc_mac_hdr_init skb_push updates and returns skb->data, so we can just call skb_reset_mac_header after the call to skb_push. Signed-off-by: Arnaldo Carvalho de Melo <[EMAIL PROTECTED]> --- 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 729e251..754f4fe 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, struct net_device *dev = skb->dev; struct trh_hdr *trh; - skb->mac.raw = skb_push(skb, sizeof(*trh)); + skb_push(skb, sizeof(*trh)); + skb_reset_mac_header(skb); trh = tr_hdr(skb); trh->ac = AC; trh->fc = LLC_FRAME; @@ -62,7 +63,8 @@ int llc_mac_hdr_init(struct sk_buff *skb, unsigned short len = skb->len; struct ethhdr *eth; - skb->mac.raw = skb_push(skb, sizeof(*eth)); + skb_push(skb, sizeof(*eth)); + skb_reset_mac_header(skb); eth = eth_hdr(skb); eth->h_proto = htons(len); memcpy(eth->h_dest, da, ETH_ALEN); -- 1.5.0.2