]> git.baikalelectronics.ru Git - kernel.git/commit
pkt_sched: sch_qfq: do not allow virtual time to jump if an aggregate is in service
authorPaolo Valente <paolo.valente@unimore.it>
Tue, 5 Mar 2013 08:05:01 +0000 (08:05 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 6 Mar 2013 07:47:05 +0000 (02:47 -0500)
commit2d9cd8b19350617f47f409b6b60cc0749196b992
tree4a4683d08a970fd286309ad1a5ca507bdd7916c9
parentafe3f29084cd997847af470c9bab3b33463abe14
pkt_sched: sch_qfq: do not allow virtual time to jump if an aggregate is in service

By definition of (the algorithm of) QFQ+, the system virtual time must
be pushed up only if there is no 'eligible' aggregate, i.e. no
aggregate that would have started to be served also in the ideal
system emulated by QFQ+.  QFQ+ serves only eligible aggregates, hence
the aggregate currently in service is eligible.  As a consequence, to
decide whether there is no eligible aggregate, QFQ+ must also check
whether there is no aggregate in service.

Signed-off-by: Paolo Valente <paolo.valente@unimore.it>
Reviewed-by: Fabio Checconi <fchecconi@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/sched/sch_qfq.c