26 Jun, 2016

1 commit

  • Qdisc performance suffers when packets are dropped at enqueue()
    time because drops (kfree_skb()) are done while qdisc lock is held,
    delaying a dequeue() draining the queue.

    Nominal throughput can be reduced by 50 % when this happens,
    at a time we would like the dequeue() to proceed as fast as possible.

    Even FQ is vulnerable to this problem, while one of FQ goals was
    to provide some flow isolation.

    This patch adds a 'struct sk_buff **to_free' parameter to all
    qdisc->enqueue(), and in qdisc_drop() helper.

    I measured a performance increase of up to 12 %, but this patch
    is a prereq so that future batches in enqueue() can fly.

    Signed-off-by: Eric Dumazet
    Acked-by: Jesper Dangaard Brouer
    Signed-off-by: David S. Miller

    Eric Dumazet
     

09 Oct, 2015

1 commit

  • The Kconfig currently controlling compilation of this code is:

    net/sched/Kconfig:menuconfig NET_SCHED
    net/sched/Kconfig: bool "QoS and/or fair queueing"

    ...meaning that it currently is not being built as a module by anyone.

    Lets remove the modular code that is essentially orphaned, so that
    when reading the driver there is no doubt it is builtin-only.

    Since module_init translates to device_initcall in the non-modular
    case, the init ordering remains unchanged with this commit. We can
    change to one of the other priority initcalls (subsys?) at any later
    date, if desired.

    We also delete the MODULE_LICENSE tag since all that information
    is already contained at the top of the file in the comments.

    Cc: Jamal Hadi Salim
    Cc: "David S. Miller"
    Cc: netdev@vger.kernel.org
    Signed-off-by: Paul Gortmaker
    Signed-off-by: David S. Miller

    Paul Gortmaker
     

31 Oct, 2008

1 commit


29 Jan, 2008

1 commit


11 Jul, 2007

1 commit


01 Jul, 2006

1 commit


06 Jul, 2005

1 commit

  • Useful in combination with classful qdiscs to drop or
    temporary disable certain flows, e.g. one could block
    specific ds flows with dsmark.

    Unlike the noop qdisc it can be controlled by the user and
    statistic accounting is done.

    Signed-off-by: Thomas Graf
    Signed-off-by: David S. Miller

    Thomas Graf