From: David S. Miller Date: Mon, 19 Sep 2016 05:47:23 +0000 (-0400) Subject: Merge branch 'net-sched-singly-linked-list' X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=029ac211464f9cf87fa7aa51a6f01e41642d76c3;p=openwrt%2Fstaging%2Fblogic.git Merge branch 'net-sched-singly-linked-list' Florian Westphal says: ==================== sched: convert queues to single-linked list During Netfilter Workshop 2016 Eric Dumazet pointed out that qdisc schedulers use doubly-linked lists, even though single-linked list would be enough. The double-linked skb lists incur one extra write on enqueue/dequeue operations (to change ->prev pointer of next list elem). This series converts qdiscs to single-linked version, listhead maintains pointers to first (for dequeue) and last skb (for enqueue). Most qdiscs don't queue at all and instead use a leaf qdisc (typically pfifo_fast) so only a few schedulers needed changes. I briefly tested netem and htb and they seemed fine. UDP_STREAM netperf with 64 byte packets via veth+pfifo_fast shows a small (~2%) improvement. ==================== Signed-off-by: David S. Miller --- 029ac211464f9cf87fa7aa51a6f01e41642d76c3