mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-06 05:13:18 +00:00
netem: Fix off-by-one bug in reordering
With netem reordering, a gap of N is supposed to reorder every Nth packet with given reorder probability. However, the code currently skips N packets and reorders every (N+1)th packet. Signed-off-by: Vijay Subramanian <subramanian.vijay@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
803143fbda
commit
a42b4799c6
@ -419,7 +419,7 @@ static int netem_enqueue(struct sk_buff *skb, struct Qdisc *sch)
|
||||
|
||||
cb = netem_skb_cb(skb);
|
||||
if (q->gap == 0 || /* not doing reordering */
|
||||
q->counter < q->gap || /* inside last reordering gap */
|
||||
q->counter < q->gap - 1 || /* inside last reordering gap */
|
||||
q->reorder < get_crandom(&q->reorder_cor)) {
|
||||
psched_time_t now;
|
||||
psched_tdiff_t delay;
|
||||
|
Loading…
Reference in New Issue
Block a user