diff options
| -rw-r--r-- | drivers/net/rrunner.c | 3 | ||||
| -rw-r--r-- | include/linux/hippidevice.h | 5 | ||||
| -rw-r--r-- | include/linux/skbuff.h | 6 | ||||
| -rw-r--r-- | net/802/hippi.c | 4 | ||||
| -rw-r--r-- | net/core/skbuff.c | 3 |
5 files changed, 10 insertions, 11 deletions
diff --git a/drivers/net/rrunner.c b/drivers/net/rrunner.c index 12a86f96d973..ec1a18d189a1 100644 --- a/drivers/net/rrunner.c +++ b/drivers/net/rrunner.c | |||
| @@ -1429,6 +1429,7 @@ static int rr_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
| 1429 | { | 1429 | { |
| 1430 | struct rr_private *rrpriv = netdev_priv(dev); | 1430 | struct rr_private *rrpriv = netdev_priv(dev); |
| 1431 | struct rr_regs __iomem *regs = rrpriv->regs; | 1431 | struct rr_regs __iomem *regs = rrpriv->regs; |
| 1432 | struct hippi_cb *hcb = (struct hippi_cb *) skb->cb; | ||
| 1432 | struct ring_ctrl *txctrl; | 1433 | struct ring_ctrl *txctrl; |
| 1433 | unsigned long flags; | 1434 | unsigned long flags; |
| 1434 | u32 index, len = skb->len; | 1435 | u32 index, len = skb->len; |
| @@ -1460,7 +1461,7 @@ static int rr_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
| 1460 | ifield = (u32 *)skb_push(skb, 8); | 1461 | ifield = (u32 *)skb_push(skb, 8); |
| 1461 | 1462 | ||
| 1462 | ifield[0] = 0; | 1463 | ifield[0] = 0; |
| 1463 | ifield[1] = skb->private.ifield; | 1464 | ifield[1] = hcb->ifield; |
| 1464 | 1465 | ||
| 1465 | /* | 1466 | /* |
| 1466 | * We don't need the lock before we are actually going to start | 1467 | * We don't need the lock before we are actually going to start |
diff --git a/include/linux/hippidevice.h b/include/linux/hippidevice.h index 9debe6bbe5f0..9bc3b688d2ee 100644 --- a/include/linux/hippidevice.h +++ b/include/linux/hippidevice.h | |||
| @@ -26,6 +26,11 @@ | |||
| 26 | #include <linux/if_hippi.h> | 26 | #include <linux/if_hippi.h> |
| 27 | 27 | ||
| 28 | #ifdef __KERNEL__ | 28 | #ifdef __KERNEL__ |
| 29 | |||
| 30 | struct hippi_cb { | ||
| 31 | __u32 ifield; | ||
| 32 | }; | ||
| 33 | |||
| 29 | extern unsigned short hippi_type_trans(struct sk_buff *skb, | 34 | extern unsigned short hippi_type_trans(struct sk_buff *skb, |
| 30 | struct net_device *dev); | 35 | struct net_device *dev); |
| 31 | 36 | ||
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h index f10a8b9628b0..4aeadb102589 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h | |||
| @@ -193,7 +193,6 @@ struct skb_shared_info { | |||
| 193 | * @nfct: Associated connection, if any | 193 | * @nfct: Associated connection, if any |
| 194 | * @nfctinfo: Relationship of this skb to the connection | 194 | * @nfctinfo: Relationship of this skb to the connection |
| 195 | * @nf_bridge: Saved data about a bridged frame - see br_netfilter.c | 195 | * @nf_bridge: Saved data about a bridged frame - see br_netfilter.c |
| 196 | * @private: Data which is private to the HIPPI implementation | ||
| 197 | * @tc_index: Traffic control index | 196 | * @tc_index: Traffic control index |
| 198 | * @tc_verd: traffic control verdict | 197 | * @tc_verd: traffic control verdict |
| 199 | */ | 198 | */ |
| @@ -265,11 +264,6 @@ struct sk_buff { | |||
| 265 | struct nf_bridge_info *nf_bridge; | 264 | struct nf_bridge_info *nf_bridge; |
| 266 | #endif | 265 | #endif |
| 267 | #endif /* CONFIG_NETFILTER */ | 266 | #endif /* CONFIG_NETFILTER */ |
| 268 | #if defined(CONFIG_HIPPI) | ||
| 269 | union { | ||
| 270 | __u32 ifield; | ||
| 271 | } private; | ||
| 272 | #endif | ||
| 273 | #ifdef CONFIG_NET_SCHED | 267 | #ifdef CONFIG_NET_SCHED |
| 274 | __u32 tc_index; /* traffic control index */ | 268 | __u32 tc_index; /* traffic control index */ |
| 275 | #ifdef CONFIG_NET_CLS_ACT | 269 | #ifdef CONFIG_NET_CLS_ACT |
diff --git a/net/802/hippi.c b/net/802/hippi.c index 051e8af56a77..cb45ae1310cb 100644 --- a/net/802/hippi.c +++ b/net/802/hippi.c | |||
| @@ -51,6 +51,7 @@ static int hippi_header(struct sk_buff *skb, struct net_device *dev, | |||
| 51 | unsigned len) | 51 | unsigned len) |
| 52 | { | 52 | { |
| 53 | struct hippi_hdr *hip = (struct hippi_hdr *)skb_push(skb, HIPPI_HLEN); | 53 | struct hippi_hdr *hip = (struct hippi_hdr *)skb_push(skb, HIPPI_HLEN); |
| 54 | struct hippi_cb *hcb = (struct hippi_cb *) skb->cb; | ||
| 54 | 55 | ||
| 55 | if (!len){ | 56 | if (!len){ |
| 56 | len = skb->len - HIPPI_HLEN; | 57 | len = skb->len - HIPPI_HLEN; |
| @@ -84,9 +85,10 @@ static int hippi_header(struct sk_buff *skb, struct net_device *dev, | |||
| 84 | if (daddr) | 85 | if (daddr) |
| 85 | { | 86 | { |
| 86 | memcpy(hip->le.dest_switch_addr, daddr + 3, 3); | 87 | memcpy(hip->le.dest_switch_addr, daddr + 3, 3); |
| 87 | memcpy(&skb->private.ifield, daddr + 2, 4); | 88 | memcpy(&hcb->ifield, daddr + 2, 4); |
| 88 | return HIPPI_HLEN; | 89 | return HIPPI_HLEN; |
| 89 | } | 90 | } |
| 91 | hcb->ifield = 0; | ||
| 90 | return -((int)HIPPI_HLEN); | 92 | return -((int)HIPPI_HLEN); |
| 91 | } | 93 | } |
| 92 | 94 | ||
diff --git a/net/core/skbuff.c b/net/core/skbuff.c index 8896e6f8aa42..16df7bd77e78 100644 --- a/net/core/skbuff.c +++ b/net/core/skbuff.c | |||
| @@ -365,9 +365,6 @@ struct sk_buff *skb_clone(struct sk_buff *skb, unsigned int __nocast gfp_mask) | |||
| 365 | nf_bridge_get(skb->nf_bridge); | 365 | nf_bridge_get(skb->nf_bridge); |
| 366 | #endif | 366 | #endif |
| 367 | #endif /*CONFIG_NETFILTER*/ | 367 | #endif /*CONFIG_NETFILTER*/ |
| 368 | #if defined(CONFIG_HIPPI) | ||
| 369 | C(private); | ||
| 370 | #endif | ||
| 371 | #ifdef CONFIG_NET_SCHED | 368 | #ifdef CONFIG_NET_SCHED |
| 372 | C(tc_index); | 369 | C(tc_index); |
| 373 | #ifdef CONFIG_NET_CLS_ACT | 370 | #ifdef CONFIG_NET_CLS_ACT |
