Commit 6c97da14 authored by Leslie Monis's avatar Leslie Monis Committed by David S. Miller

net: sched: pie: avoid slow division in drop probability decay

As per RFC 8033, it is sufficient for the drop probability
decay factor to have a value of (1 - 1/64) instead of 98%.
This avoids the need to do slow division.
Suggested-by: default avatarDavid Laight <David.Laight@aculab.com>
Signed-off-by: default avatarLeslie Monis <lesliemonis@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 4a8acef7
...@@ -429,7 +429,8 @@ static void calculate_probability(struct Qdisc *sch) ...@@ -429,7 +429,8 @@ static void calculate_probability(struct Qdisc *sch)
*/ */
if (qdelay == 0 && qdelay_old == 0 && update_prob) if (qdelay == 0 && qdelay_old == 0 && update_prob)
q->vars.prob = 98 * div_u64(q->vars.prob, 100); /* Reduce drop probability to 98.4% */
q->vars.prob -= q->vars.prob / 64u;
q->vars.qdelay = qdelay; q->vars.qdelay = qdelay;
q->vars.qlen_old = qlen; q->vars.qlen_old = qlen;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment