OSDN Git Service

net: sched: pie: add more cases to auto-tune alpha and beta
authorMohit P. Tahiliani <tahiliani@nitk.edu.in>
Mon, 25 Feb 2019 19:09:59 +0000 (00:39 +0530)
committerDavid S. Miller <davem@davemloft.net>
Mon, 25 Feb 2019 22:21:03 +0000 (14:21 -0800)
commit3f7ae5f3dc5295ac17d6521130ed8a8f8a723fbf
tree3529f45b5398596453548eac690b8808caa4090e
parent30a92ad703b93a96588e05b5bcd7247d7350c673
net: sched: pie: add more cases to auto-tune alpha and beta

The current implementation scales the local alpha and beta
variables in the calculate_probability function by the same
amount for all values of drop probability below 1%.

RFC 8033 suggests using additional cases for auto-tuning
alpha and beta when the drop probability is less than 1%.

In order to add more auto-tuning cases, MAX_PROB must be
scaled by u64 instead of u32 to prevent underflow when
scaling the local alpha and beta variables in the
calculate_probability function.

Signed-off-by: Mohit P. Tahiliani <tahiliani@nitk.edu.in>
Signed-off-by: Dhaval Khandla <dhavaljkhandla26@gmail.com>
Signed-off-by: Hrishikesh Hiraskar <hrishihiraskar@gmail.com>
Signed-off-by: Manish Kumar B <bmanish15597@gmail.com>
Signed-off-by: Sachin D. Patil <sdp.sachin@gmail.com>
Signed-off-by: Leslie Monis <lesliemonis@gmail.com>
Acked-by: Dave Taht <dave.taht@gmail.com>
Acked-by: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/uapi/linux/pkt_sched.h
net/sched/sch_pie.c