sched: remove NET_XMIT_POLICED
authorFlorian Westphal <fw@strlen.de>
Sat, 11 Jun 2016 10:46:04 +0000 (12:46 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 13 Jun 2016 02:02:11 +0000 (22:02 -0400)
sch_atm returns this when TC_ACT_SHOT classification occurs.

But all other schedulers that use tc_classify
(htb, hfsc, drr, fq_codel ...) return NET_XMIT_SUCCESS | __BYPASS
in this case so just do that in atm.

BATMAN uses it as an intermediate return value to signal
forwarding vs. buffering, but it did not return POLICED to
callers outside of BATMAN.

Reviewed-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/netdevice.h
net/batman-adv/routing.c
net/batman-adv/send.c
net/core/pktgen.c
net/sched/sch_api.c
net/sched/sch_atm.c

index 94eef356a65f9a8be0397a9e808c3d4e78caf282..d101e4d904bafb3f531f323b9e64d8efddb8916d 100644 (file)
@@ -90,7 +90,6 @@ void netdev_set_default_ethtool_ops(struct net_device *dev,
 #define NET_XMIT_SUCCESS       0x00
 #define NET_XMIT_DROP          0x01    /* skb dropped                  */
 #define NET_XMIT_CN            0x02    /* congestion notification      */
-#define NET_XMIT_POLICED       0x03    /* skb is shot by police        */
 #define NET_XMIT_MASK          0x0f    /* qdisc flags in net/sch_generic.h */
 
 /* NET_XMIT_CN is special. It does not guarantee that this packet is lost. It
index e3857ed4057f55d2f90ff72ed7cb8a14532d6fe2..f75091c983eed8dfb84dde71b25302211e69ff91 100644 (file)
@@ -653,7 +653,7 @@ static int batadv_route_unicast_packet(struct sk_buff *skb,
                                   len + ETH_HLEN);
 
                ret = NET_RX_SUCCESS;
-       } else if (res == NET_XMIT_POLICED) {
+       } else if (res == -EINPROGRESS) {
                /* skb was buffered and consumed */
                ret = NET_RX_SUCCESS;
        }
index f2f125684ed9c199e1c4f7f7b3b6109b3b9a51c2..b1a4e8a811c8474cd785d8d5e9aeed03ccbc0bf3 100644 (file)
@@ -156,7 +156,7 @@ int batadv_send_unicast_skb(struct sk_buff *skb,
  * attempted.
  *
  * Return: NET_XMIT_SUCCESS on success, NET_XMIT_DROP on failure, or
- * NET_XMIT_POLICED if the skb is buffered for later transmit.
+ * -EINPROGRESS if the skb is buffered for later transmit.
  */
 int batadv_send_skb_to_orig(struct sk_buff *skb,
                            struct batadv_orig_node *orig_node,
@@ -188,7 +188,7 @@ int batadv_send_skb_to_orig(struct sk_buff *skb,
         * network coding fails, then send the packet as usual.
         */
        if (recv_if && batadv_nc_skb_forward(skb, neigh_node)) {
-               ret = NET_XMIT_POLICED;
+               ret = -EINPROGRESS;
        } else {
                batadv_send_unicast_skb(skb, neigh_node);
                ret = NET_XMIT_SUCCESS;
index 8b02df0d354da6ca34d148ff72a333491f4bcd15..f74ab9c3b38fe10610b3a4e8610ed78bc0d8437a 100644 (file)
@@ -3463,7 +3463,6 @@ xmit_more:
                break;
        case NET_XMIT_DROP:
        case NET_XMIT_CN:
-       case NET_XMIT_POLICED:
                /* skb has been consumed */
                pkt_dev->errors++;
                break;
index 401eda6de682b9ba31e9178fccf29b8d162a0e23..12ebde84552337ec7248e56fe1a64edc0227d7ec 100644 (file)
@@ -95,8 +95,6 @@ static int tclass_notify(struct net *net, struct sk_buff *oskb,
      Expected action: do not backoff, but wait until queue will clear.
    NET_XMIT_CN         - probably this packet enqueued, but another one dropped.
      Expected action: backoff or ignore
-   NET_XMIT_POLICED    - dropped by police.
-     Expected action: backoff or error to real-time apps.
 
    Auxiliary routines:
 
index 7e6c12dfc66ad3b8cfc8978a6b5a5af4751002cc..0785b239ddf96fb681623539de003865d352cbaf 100644 (file)
@@ -363,7 +363,7 @@ static int atm_tc_enqueue(struct sk_buff *skb, struct Qdisc *sch)
        struct atm_flow_data *flow;
        struct tcf_result res;
        int result;
-       int ret = NET_XMIT_POLICED;
+       int ret = NET_XMIT_SUCCESS | __NET_XMIT_BYPASS;
 
        pr_debug("atm_tc_enqueue(skb %p,sch %p,[qdisc %p])\n", skb, sch, p);
        result = TC_POLICE_OK;  /* be nice to gcc */