diff options
author | David S. Miller <davem@davemloft.net> | 2005-08-09 22:34:12 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2005-08-29 18:32:25 -0400 |
commit | f2ccd8fa06c8e302116e71df372f5c1f83432e03 (patch) | |
tree | 6e933f4bdc8899009edb33642b908779f123fb4a /net/ax25 | |
parent | b6b99eb5409d75ae35390057cd28f3aedfbd4cf4 (diff) |
[NET]: Kill skb->real_dev
Bonding just wants the device before the skb_bond()
decapsulation occurs, so simply pass that original
device into packet_type->func() as an argument.
It remains to be seen whether we can use this same
exact thing to get rid of skb->input_dev as well.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ax25')
-rw-r--r-- | net/ax25/ax25_in.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/net/ax25/ax25_in.c b/net/ax25/ax25_in.c index 3dc808fde33f..124eec8216d7 100644 --- a/net/ax25/ax25_in.c +++ b/net/ax25/ax25_in.c | |||
@@ -132,7 +132,7 @@ int ax25_rx_iframe(ax25_cb *ax25, struct sk_buff *skb) | |||
132 | skb->dev = ax25->ax25_dev->dev; | 132 | skb->dev = ax25->ax25_dev->dev; |
133 | skb->pkt_type = PACKET_HOST; | 133 | skb->pkt_type = PACKET_HOST; |
134 | skb->protocol = htons(ETH_P_IP); | 134 | skb->protocol = htons(ETH_P_IP); |
135 | ip_rcv(skb, skb->dev, NULL); /* Wrong ptype */ | 135 | ip_rcv(skb, skb->dev, NULL, skb->dev); /* Wrong ptype */ |
136 | return 1; | 136 | return 1; |
137 | } | 137 | } |
138 | #endif | 138 | #endif |
@@ -258,7 +258,7 @@ static int ax25_rcv(struct sk_buff *skb, struct net_device *dev, | |||
258 | skb->dev = dev; | 258 | skb->dev = dev; |
259 | skb->pkt_type = PACKET_HOST; | 259 | skb->pkt_type = PACKET_HOST; |
260 | skb->protocol = htons(ETH_P_IP); | 260 | skb->protocol = htons(ETH_P_IP); |
261 | ip_rcv(skb, dev, ptype); /* Note ptype here is the wrong one, fix me later */ | 261 | ip_rcv(skb, dev, ptype, dev); /* Note ptype here is the wrong one, fix me later */ |
262 | break; | 262 | break; |
263 | 263 | ||
264 | case AX25_P_ARP: | 264 | case AX25_P_ARP: |
@@ -268,7 +268,7 @@ static int ax25_rcv(struct sk_buff *skb, struct net_device *dev, | |||
268 | skb->dev = dev; | 268 | skb->dev = dev; |
269 | skb->pkt_type = PACKET_HOST; | 269 | skb->pkt_type = PACKET_HOST; |
270 | skb->protocol = htons(ETH_P_ARP); | 270 | skb->protocol = htons(ETH_P_ARP); |
271 | arp_rcv(skb, dev, ptype); /* Note ptype here is wrong... */ | 271 | arp_rcv(skb, dev, ptype, dev); /* Note ptype here is wrong... */ |
272 | break; | 272 | break; |
273 | #endif | 273 | #endif |
274 | case AX25_P_TEXT: | 274 | case AX25_P_TEXT: |
@@ -454,7 +454,7 @@ static int ax25_rcv(struct sk_buff *skb, struct net_device *dev, | |||
454 | * Receive an AX.25 frame via a SLIP interface. | 454 | * Receive an AX.25 frame via a SLIP interface. |
455 | */ | 455 | */ |
456 | int ax25_kiss_rcv(struct sk_buff *skb, struct net_device *dev, | 456 | int ax25_kiss_rcv(struct sk_buff *skb, struct net_device *dev, |
457 | struct packet_type *ptype) | 457 | struct packet_type *ptype, struct net_device *orig_dev) |
458 | { | 458 | { |
459 | skb->sk = NULL; /* Initially we don't know who it's for */ | 459 | skb->sk = NULL; /* Initially we don't know who it's for */ |
460 | skb->destructor = NULL; /* Who initializes this, dammit?! */ | 460 | skb->destructor = NULL; /* Who initializes this, dammit?! */ |