|
@@ -316,4 +316,19 @@ static inline u32 qdisc_l2t(struct qdisc_rate_table* rtab, unsigned int pktlen)
|
|
|
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
|