diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/hdlc.h | 4 | ||||
-rw-r--r-- | include/linux/skbuff.h | 5 | ||||
-rw-r--r-- | include/net/ax25.h | 2 | ||||
-rw-r--r-- | include/net/x25device.h | 2 |
4 files changed, 9 insertions, 4 deletions
diff --git a/include/linux/hdlc.h b/include/linux/hdlc.h index d4b333938f73..0fe562af9c8c 100644 --- a/include/linux/hdlc.h +++ b/include/linux/hdlc.h | |||
@@ -132,8 +132,8 @@ static __inline__ __be16 hdlc_type_trans(struct sk_buff *skb, | |||
132 | { | 132 | { |
133 | hdlc_device *hdlc = dev_to_hdlc(dev); | 133 | hdlc_device *hdlc = dev_to_hdlc(dev); |
134 | 134 | ||
135 | skb->mac.raw = skb->data; | 135 | skb->dev = dev; |
136 | skb->dev = dev; | 136 | skb_reset_mac_header(skb); |
137 | 137 | ||
138 | if (hdlc->proto->type_trans) | 138 | if (hdlc->proto->type_trans) |
139 | return hdlc->proto->type_trans(skb, dev); | 139 | return hdlc->proto->type_trans(skb, dev); |
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h index df229bd5f1a9..748f254b50cc 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h | |||
@@ -960,6 +960,11 @@ static inline void skb_reserve(struct sk_buff *skb, int len) | |||
960 | skb->tail += len; | 960 | skb->tail += len; |
961 | } | 961 | } |
962 | 962 | ||
963 | static inline void skb_reset_mac_header(struct sk_buff *skb) | ||
964 | { | ||
965 | skb->mac.raw = skb->data; | ||
966 | } | ||
967 | |||
963 | /* | 968 | /* |
964 | * CPUs often take a performance hit when accessing unaligned memory | 969 | * CPUs often take a performance hit when accessing unaligned memory |
965 | * locations. The actual performance hit varies, it can be small if the | 970 | * locations. The actual performance hit varies, it can be small if the |
diff --git a/include/net/ax25.h b/include/net/ax25.h index 47ff2f46e908..99a4e364c74a 100644 --- a/include/net/ax25.h +++ b/include/net/ax25.h | |||
@@ -263,8 +263,8 @@ static __inline__ void ax25_cb_put(ax25_cb *ax25) | |||
263 | static inline __be16 ax25_type_trans(struct sk_buff *skb, struct net_device *dev) | 263 | static inline __be16 ax25_type_trans(struct sk_buff *skb, struct net_device *dev) |
264 | { | 264 | { |
265 | skb->dev = dev; | 265 | skb->dev = dev; |
266 | skb_reset_mac_header(skb); | ||
266 | skb->pkt_type = PACKET_HOST; | 267 | skb->pkt_type = PACKET_HOST; |
267 | skb->mac.raw = skb->data; | ||
268 | return htons(ETH_P_AX25); | 268 | return htons(ETH_P_AX25); |
269 | } | 269 | } |
270 | 270 | ||
diff --git a/include/net/x25device.h b/include/net/x25device.h index 1d10c879f7e2..1415bcf93980 100644 --- a/include/net/x25device.h +++ b/include/net/x25device.h | |||
@@ -7,8 +7,8 @@ | |||
7 | 7 | ||
8 | static inline __be16 x25_type_trans(struct sk_buff *skb, struct net_device *dev) | 8 | static inline __be16 x25_type_trans(struct sk_buff *skb, struct net_device *dev) |
9 | { | 9 | { |
10 | skb->mac.raw = skb->data; | ||
11 | skb->dev = dev; | 10 | skb->dev = dev; |
11 | skb_reset_mac_header(skb); | ||
12 | skb->pkt_type = PACKET_HOST; | 12 | skb->pkt_type = PACKET_HOST; |
13 | 13 | ||
14 | return htons(ETH_P_X25); | 14 | return htons(ETH_P_X25); |