sched: remove qdisc_rehape_fail
authorFlorian Westphal <fw@strlen.de>
Wed, 8 Jun 2016 22:27:41 +0000 (00:27 +0200)
committerDavid S. Miller <davem@davemloft.net>
Thu, 9 Jun 2016 06:58:51 +0000 (23:58 -0700)
After the removal of TCA_CBQ_POLICE in cbq scheduler qdisc->reshape_fail
is always NULL, i.e. qdisc_rehape_fail is now the same as qdisc_drop.

Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/sch_generic.h
net/sched/sch_fifo.c
net/sched/sch_netem.c
net/sched/sch_plug.c
net/sched/sch_tbf.c

index c069ac1dd75d95f05fc7c99e98931e476c4635ed..a9aec633d46771516a1af55d318e34c5854a736d 100644 (file)
@@ -63,9 +63,6 @@ struct Qdisc {
        struct list_head        list;
        u32                     handle;
        u32                     parent;
-       int                     (*reshape_fail)(struct sk_buff *skb,
-                                       struct Qdisc *q);
-
        void                    *u32_node;
 
        struct netdev_queue     *dev_queue;
@@ -771,22 +768,6 @@ static inline int qdisc_drop(struct sk_buff *skb, struct Qdisc *sch)
        return NET_XMIT_DROP;
 }
 
-static inline int qdisc_reshape_fail(struct sk_buff *skb, struct Qdisc *sch)
-{
-       qdisc_qstats_drop(sch);
-
-#ifdef CONFIG_NET_CLS_ACT
-       if (sch->reshape_fail == NULL || sch->reshape_fail(skb, sch))
-               goto drop;
-
-       return NET_XMIT_SUCCESS;
-
-drop:
-#endif
-       kfree_skb(skb);
-       return NET_XMIT_DROP;
-}
-
 /* Length to Time (L2T) lookup in a qdisc_rate_table, to determine how
    long it will take to send a packet given its size.
  */
index 2177eac0a61ed00c6c60655f577e0dd816fd2c08..7857f748a6e4baa1c7c55ff02e71e50283f1262f 100644 (file)
@@ -24,7 +24,7 @@ static int bfifo_enqueue(struct sk_buff *skb, struct Qdisc *sch)
        if (likely(sch->qstats.backlog + qdisc_pkt_len(skb) <= sch->limit))
                return qdisc_enqueue_tail(skb, sch);
 
-       return qdisc_reshape_fail(skb, sch);
+       return qdisc_drop(skb, sch);
 }
 
 static int pfifo_enqueue(struct sk_buff *skb, struct Qdisc *sch)
@@ -32,7 +32,7 @@ static int pfifo_enqueue(struct sk_buff *skb, struct Qdisc *sch)
        if (likely(skb_queue_len(&sch->q) < sch->limit))
                return qdisc_enqueue_tail(skb, sch);
 
-       return qdisc_reshape_fail(skb, sch);
+       return qdisc_drop(skb, sch);
 }
 
 static int pfifo_tail_enqueue(struct sk_buff *skb, struct Qdisc *sch)
index 205bed00dd3463c62696ecc61eb78f2c97b3d0c9..31984c70838200096dab10daad51058b9ff36b47 100644 (file)
@@ -407,7 +407,7 @@ static struct sk_buff *netem_segment(struct sk_buff *skb, struct Qdisc *sch)
        segs = skb_gso_segment(skb, features & ~NETIF_F_GSO_MASK);
 
        if (IS_ERR_OR_NULL(segs)) {
-               qdisc_reshape_fail(skb, sch);
+               qdisc_drop(skb, sch);
                return NULL;
        }
        consume_skb(skb);
@@ -499,7 +499,7 @@ static int netem_enqueue(struct sk_buff *skb, struct Qdisc *sch)
        }
 
        if (unlikely(skb_queue_len(&sch->q) >= sch->limit))
-               return qdisc_reshape_fail(skb, sch);
+               return qdisc_drop(skb, sch);
 
        qdisc_qstats_backlog_inc(sch, skb);
 
index 5abfe44678d4a1ecda495bf9e00879c649c63cdb..ff0d968750df6d6c61e37c4bf78eb9c3bc96fa9b 100644 (file)
@@ -96,7 +96,7 @@ static int plug_enqueue(struct sk_buff *skb, struct Qdisc *sch)
                return qdisc_enqueue_tail(skb, sch);
        }
 
-       return qdisc_reshape_fail(skb, sch);
+       return qdisc_drop(skb, sch);
 }
 
 static struct sk_buff *plug_dequeue(struct Qdisc *sch)
index 83b90b584fae4fcee779bdeb638df5c59f40f007..801148c8b6ac7f81c643b1363d594b6f2a8f8631 100644 (file)
@@ -166,7 +166,7 @@ static int tbf_segment(struct sk_buff *skb, struct Qdisc *sch)
        segs = skb_gso_segment(skb, features & ~NETIF_F_GSO_MASK);
 
        if (IS_ERR_OR_NULL(segs))
-               return qdisc_reshape_fail(skb, sch);
+               return qdisc_drop(skb, sch);
 
        nb = 0;
        while (segs) {
@@ -198,7 +198,7 @@ static int tbf_enqueue(struct sk_buff *skb, struct Qdisc *sch)
        if (qdisc_pkt_len(skb) > q->max_size) {
                if (skb_is_gso(skb) && skb_gso_mac_seglen(skb) <= q->max_size)
                        return tbf_segment(skb, sch);
-               return qdisc_reshape_fail(skb, sch);
+               return qdisc_drop(skb, sch);
        }
        ret = qdisc_enqueue(skb, q->qdisc);
        if (ret != NET_XMIT_SUCCESS) {