]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
net-tc: make MAX_RECLASSIFY_LOOP local
authorWillem de Bruijn <willemb@google.com>
Sat, 7 Jan 2017 22:06:34 +0000 (17:06 -0500)
committerDavid S. Miller <davem@davemloft.net>
Mon, 9 Jan 2017 01:58:52 +0000 (20:58 -0500)
This field is no longer kept in tc_verd. Remove it from the global
definition of that struct.

Signed-off-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/uapi/linux/pkt_cls.h
net/sched/sch_api.c

index c769f71972f5c103655f3607b2fab7ff60ff98b9..bba23dbb3ab60be86ed7b68a7c8913a54f77c00f 100644 (file)
@@ -17,9 +17,6 @@
 
 /* verdict bit breakdown 
  *
-bit 2,3,4,5: Reclassify counter - sort of reverse TTL - if exceeded
-assume loop
-
 bit 6,7: Where this packet was last seen 
 0: Above the transmit example at the socket level
 1: on the Ingress
@@ -48,8 +45,6 @@ bit 8: when set --> Request not to classify on ingress.
 #define G_TC_AT(x)       _TC_GETVALUE(x,S_TC_AT,M_TC_AT)
 #define V_TC_AT(x)       _TC_MAKEVALUE(x,S_TC_AT)
 #define SET_TC_AT(v,n)   ((V_TC_AT(n)) | (v & ~M_TC_AT))
-
-#define MAX_REC_LOOP 4
 #endif
 
 /* Action attributes */
index d7b93429f0cca61ff489536b4247f31f3690fdd8..ef53ede11590924f51bca17f79fb8ad9697366be 100644 (file)
@@ -1861,6 +1861,7 @@ int tc_classify(struct sk_buff *skb, const struct tcf_proto *tp,
 {
        __be16 protocol = tc_skb_protocol(skb);
 #ifdef CONFIG_NET_CLS_ACT
+       const int max_reclassify_loop = 4;
        const struct tcf_proto *old_tp = tp;
        int limit = 0;
 
@@ -1885,7 +1886,7 @@ reclassify:
        return TC_ACT_UNSPEC; /* signal: continue lookup */
 #ifdef CONFIG_NET_CLS_ACT
 reset:
-       if (unlikely(limit++ >= MAX_REC_LOOP)) {
+       if (unlikely(limit++ >= max_reclassify_loop)) {
                net_notice_ratelimited("%s: reclassify loop, rule prio %u, protocol %02x\n",
                                       tp->q->ops->id, tp->prio & 0xffff,
                                       ntohs(tp->protocol));