diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2009-06-02 01:19:30 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-06-03 05:51:04 -0400 |
commit | adf30907d63893e4208dfe3f5c88ae12bc2f25d5 (patch) | |
tree | 0f07542bb95de2ad537540868aba6cf87a86e17d /net/sched/cls_flow.c | |
parent | 511c3f92ad5b6d9f8f6464be1b4f85f0422be91a (diff) |
net: skb->dst accessors
Define three accessors to get/set dst attached to a skb
struct dst_entry *skb_dst(const struct sk_buff *skb)
void skb_dst_set(struct sk_buff *skb, struct dst_entry *dst)
void skb_dst_drop(struct sk_buff *skb)
This one should replace occurrences of :
dst_release(skb->dst)
skb->dst = NULL;
Delete skb->dst field
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/cls_flow.c')
-rw-r--r-- | net/sched/cls_flow.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/net/sched/cls_flow.c b/net/sched/cls_flow.c index 0ef4e3065bcd..9402a7fd3785 100644 --- a/net/sched/cls_flow.c +++ b/net/sched/cls_flow.c | |||
@@ -84,7 +84,7 @@ static u32 flow_get_dst(const struct sk_buff *skb) | |||
84 | case htons(ETH_P_IPV6): | 84 | case htons(ETH_P_IPV6): |
85 | return ntohl(ipv6_hdr(skb)->daddr.s6_addr32[3]); | 85 | return ntohl(ipv6_hdr(skb)->daddr.s6_addr32[3]); |
86 | default: | 86 | default: |
87 | return addr_fold(skb->dst) ^ (__force u16)skb->protocol; | 87 | return addr_fold(skb_dst(skb)) ^ (__force u16)skb->protocol; |
88 | } | 88 | } |
89 | } | 89 | } |
90 | 90 | ||
@@ -163,7 +163,7 @@ static u32 flow_get_proto_dst(const struct sk_buff *skb) | |||
163 | break; | 163 | break; |
164 | } | 164 | } |
165 | default: | 165 | default: |
166 | res = addr_fold(skb->dst) ^ (__force u16)skb->protocol; | 166 | res = addr_fold(skb_dst(skb)) ^ (__force u16)skb->protocol; |
167 | } | 167 | } |
168 | 168 | ||
169 | return res; | 169 | return res; |
@@ -251,8 +251,8 @@ fallback: | |||
251 | static u32 flow_get_rtclassid(const struct sk_buff *skb) | 251 | static u32 flow_get_rtclassid(const struct sk_buff *skb) |
252 | { | 252 | { |
253 | #ifdef CONFIG_NET_CLS_ROUTE | 253 | #ifdef CONFIG_NET_CLS_ROUTE |
254 | if (skb->dst) | 254 | if (skb_dst(skb)) |
255 | return skb->dst->tclassid; | 255 | return skb_dst(skb)->tclassid; |
256 | #endif | 256 | #endif |
257 | return 0; | 257 | return 0; |
258 | } | 258 | } |