net: Add utility function to copy skb hash
Adds skb_copy_hash to copy rxhash and l4_rxhash from one skb to another. Signed-off-by: Tom Herbert <therbert@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
09323cc479
commit
3df7a74e79
|
@ -764,6 +764,12 @@ static inline void skb_clear_hash_if_not_l4(struct sk_buff *skb)
|
||||||
skb_clear_hash(skb);
|
skb_clear_hash(skb);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline void skb_copy_hash(struct sk_buff *to, const struct sk_buff *from)
|
||||||
|
{
|
||||||
|
to->rxhash = from->rxhash;
|
||||||
|
to->l4_rxhash = from->l4_rxhash;
|
||||||
|
};
|
||||||
|
|
||||||
#ifdef NET_SKBUFF_DATA_USES_OFFSET
|
#ifdef NET_SKBUFF_DATA_USES_OFFSET
|
||||||
static inline unsigned char *skb_end_pointer(const struct sk_buff *skb)
|
static inline unsigned char *skb_end_pointer(const struct sk_buff *skb)
|
||||||
{
|
{
|
||||||
|
|
|
@ -712,9 +712,8 @@ static void __copy_skb_header(struct sk_buff *new, const struct sk_buff *old)
|
||||||
new->inner_network_header = old->inner_network_header;
|
new->inner_network_header = old->inner_network_header;
|
||||||
new->inner_mac_header = old->inner_mac_header;
|
new->inner_mac_header = old->inner_mac_header;
|
||||||
skb_dst_copy(new, old);
|
skb_dst_copy(new, old);
|
||||||
new->rxhash = old->rxhash;
|
skb_copy_hash(new, old);
|
||||||
new->ooo_okay = old->ooo_okay;
|
new->ooo_okay = old->ooo_okay;
|
||||||
new->l4_rxhash = old->l4_rxhash;
|
|
||||||
new->no_fcs = old->no_fcs;
|
new->no_fcs = old->no_fcs;
|
||||||
new->encapsulation = old->encapsulation;
|
new->encapsulation = old->encapsulation;
|
||||||
#ifdef CONFIG_XFRM
|
#ifdef CONFIG_XFRM
|
||||||
|
|
Loading…
Reference in New Issue