[NET_CLS_ACT]: Introduce skb_act_clone
Reworked skb_clone looks uglier with the single ifdef CONFIG_NET_CLS_ACT This patch introduces skb_act_clone which will replace skb_clone in tc actions Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
c7da57a183
commit
12da81d11a
|
@ -316,4 +316,19 @@ static inline u32 qdisc_l2t(struct qdisc_rate_table* rtab, unsigned int pktlen)
|
||||||
return rtab->data[slot];
|
return rtab->data[slot];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_NET_CLS_ACT
|
||||||
|
static inline struct sk_buff *skb_act_clone(struct sk_buff *skb, gfp_t gfp_mask)
|
||||||
|
{
|
||||||
|
struct sk_buff *n = skb_clone(skb, gfp_mask);
|
||||||
|
|
||||||
|
if (n) {
|
||||||
|
n->tc_verd = SET_TC_VERD(n->tc_verd, 0);
|
||||||
|
n->tc_verd = CLR_TC_OK2MUNGE(n->tc_verd);
|
||||||
|
n->tc_verd = CLR_TC_MUNGED(n->tc_verd);
|
||||||
|
n->iif = skb->iif;
|
||||||
|
}
|
||||||
|
return n;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue