]> asedeno.scripts.mit.edu Git - linux.git/commit
sch_cake: Make the dual modes fairer
authorGeorge Amanakis <gamanakis@gmail.com>
Fri, 1 Mar 2019 15:04:05 +0000 (16:04 +0100)
committerDavid S. Miller <davem@davemloft.net>
Mon, 4 Mar 2019 04:14:28 +0000 (20:14 -0800)
commit712639929912c5eefb09facccb48d55b3f72c9f8
treed99d2b5874ca5a7d23c8df6f75f4c070a19405c0
parentc21e18a550a83460ed35e5ad699e1781bee0bdb8
sch_cake: Make the dual modes fairer

CAKE host fairness does not work well with TCP flows in dual-srchost and
dual-dsthost setup. The reason is that ACKs generated by TCP flows are
classified as sparse flows, and affect flow isolation from other hosts. Fix
this by calculating host_load based only on the bulk flows a host
generates. In a hash collision the host_bulk_flow_count values must be
decremented on the old hosts and incremented on the new ones *if* the queue
is in the bulk set.

Reported-by: Pete Heist <peteheist@gmail.com>
Signed-off-by: George Amanakis <gamanakis@gmail.com>
Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/sched/sch_cake.c