diff options
author | David S. Miller <davem@davemloft.net> | 2008-08-05 02:04:08 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-08-05 02:04:08 -0400 |
commit | cc6533e98a7f3cb7fce9d740da49195c7aa523a4 (patch) | |
tree | 23b1a33c9c6894f799808e7dcbcf3afeb1d71192 /include | |
parent | c27f339af90bb874a7a9c680b17abfd32d4a727b (diff) |
net: Kill plain NET_XMIT_BYPASS.
dst_input() was doing something completely absurd, looping
on skb->dst->input() if NET_XMIT_BYPASS was seen, but these
functions never return such an error.
And as a result plain ole' NET_XMIT_BYPASS has no more
references and can be completely killed off.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/netdevice.h | 3 | ||||
-rw-r--r-- | include/net/dst.h | 12 |
2 files changed, 1 insertions, 14 deletions
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index abbf5d52ec86..488c56e649b5 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h | |||
@@ -61,9 +61,6 @@ struct wireless_dev; | |||
61 | #define NET_XMIT_DROP 1 /* skb dropped */ | 61 | #define NET_XMIT_DROP 1 /* skb dropped */ |
62 | #define NET_XMIT_CN 2 /* congestion notification */ | 62 | #define NET_XMIT_CN 2 /* congestion notification */ |
63 | #define NET_XMIT_POLICED 3 /* skb is shot by police */ | 63 | #define NET_XMIT_POLICED 3 /* skb is shot by police */ |
64 | #define NET_XMIT_BYPASS 4 /* packet does not leave via dequeue; | ||
65 | (TC use only - dev_queue_xmit | ||
66 | returns this as NET_XMIT_SUCCESS) */ | ||
67 | #define NET_XMIT_MASK 0xFFFF /* qdisc flags in net/sch_generic.h */ | 64 | #define NET_XMIT_MASK 0xFFFF /* qdisc flags in net/sch_generic.h */ |
68 | 65 | ||
69 | /* Backlog congestion levels */ | 66 | /* Backlog congestion levels */ |
diff --git a/include/net/dst.h b/include/net/dst.h index c5c318a628f8..8a8b71e5f3f1 100644 --- a/include/net/dst.h +++ b/include/net/dst.h | |||
@@ -252,17 +252,7 @@ static inline int dst_output(struct sk_buff *skb) | |||
252 | /* Input packet from network to transport. */ | 252 | /* Input packet from network to transport. */ |
253 | static inline int dst_input(struct sk_buff *skb) | 253 | static inline int dst_input(struct sk_buff *skb) |
254 | { | 254 | { |
255 | int err; | 255 | return skb->dst->input(skb); |
256 | |||
257 | for (;;) { | ||
258 | err = skb->dst->input(skb); | ||
259 | |||
260 | if (likely(err == 0)) | ||
261 | return err; | ||
262 | /* Oh, Jamal... Seems, I will not forgive you this mess. :-) */ | ||
263 | if (unlikely(err != NET_XMIT_BYPASS)) | ||
264 | return err; | ||
265 | } | ||
266 | } | 256 | } |
267 | 257 | ||
268 | static inline struct dst_entry *dst_check(struct dst_entry *dst, u32 cookie) | 258 | static inline struct dst_entry *dst_check(struct dst_entry *dst, u32 cookie) |