mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
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>
This commit is contained in:
parent
511c3f92ad
commit
adf30907d6
83 changed files with 414 additions and 390 deletions
|
@ -195,6 +195,12 @@ struct dst_entry * dst_clone(struct dst_entry * dst)
|
|||
}
|
||||
|
||||
extern void dst_release(struct dst_entry *dst);
|
||||
static inline void skb_dst_drop(struct sk_buff *skb)
|
||||
{
|
||||
if (skb->_skb_dst)
|
||||
dst_release(skb_dst(skb));
|
||||
skb->_skb_dst = 0UL;
|
||||
}
|
||||
|
||||
/* Children define the path of the packet through the
|
||||
* Linux networking. Thus, destinations are stackable.
|
||||
|
@ -246,7 +252,7 @@ static inline void dst_negative_advice(struct dst_entry **dst_p)
|
|||
|
||||
static inline void dst_link_failure(struct sk_buff *skb)
|
||||
{
|
||||
struct dst_entry * dst = skb->dst;
|
||||
struct dst_entry *dst = skb_dst(skb);
|
||||
if (dst && dst->ops && dst->ops->link_failure)
|
||||
dst->ops->link_failure(skb);
|
||||
}
|
||||
|
@ -265,13 +271,13 @@ static inline void dst_set_expires(struct dst_entry *dst, int timeout)
|
|||
/* Output packet to network from transport. */
|
||||
static inline int dst_output(struct sk_buff *skb)
|
||||
{
|
||||
return skb->dst->output(skb);
|
||||
return skb_dst(skb)->output(skb);
|
||||
}
|
||||
|
||||
/* Input packet from network to transport. */
|
||||
static inline int dst_input(struct sk_buff *skb)
|
||||
{
|
||||
return skb->dst->input(skb);
|
||||
return skb_dst(skb)->input(skb);
|
||||
}
|
||||
|
||||
static inline struct dst_entry *dst_check(struct dst_entry *dst, u32 cookie)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue