diff options
author | Stephen Hemminger <stephen.hemminger@vyatta.com> | 2008-01-20 20:18:45 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-28 18:08:15 -0500 |
commit | d3e994830d35159320d0a98c36aa580410c29609 (patch) | |
tree | 501e65c40e46f527764d4494ed4c9bf923bf8c5f /net/sched/sch_sfq.c | |
parent | 51314a17baabc710e5fb12975fe8983dedd5ac0d (diff) |
[PKT_SCHED] SFQ: timer is deferrable
The perturbation timer used for re-keying can be deferred, it doesn't
need to be deterministic.
Signed-off-by: Stephen Hemminger <stephen.hemminger@vyatta.com>
Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/sch_sfq.c')
-rw-r--r-- | net/sched/sch_sfq.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/sched/sch_sfq.c b/net/sched/sch_sfq.c index c58fa6efc7a2..ba3a85e29b21 100644 --- a/net/sched/sch_sfq.c +++ b/net/sched/sch_sfq.c | |||
@@ -426,7 +426,9 @@ static int sfq_init(struct Qdisc *sch, struct rtattr *opt) | |||
426 | struct sfq_sched_data *q = qdisc_priv(sch); | 426 | struct sfq_sched_data *q = qdisc_priv(sch); |
427 | int i; | 427 | int i; |
428 | 428 | ||
429 | setup_timer(&q->perturb_timer, sfq_perturbation, (unsigned long)sch); | 429 | q->perturb_timer.function = sfq_perturbation; |
430 | q->perturb_timer.data = (unsigned long)sch;; | ||
431 | init_timer_deferrable(&q->perturb_timer); | ||
430 | 432 | ||
431 | for (i=0; i<SFQ_HASH_DIVISOR; i++) | 433 | for (i=0; i<SFQ_HASH_DIVISOR; i++) |
432 | q->ht[i] = SFQ_DEPTH; | 434 | q->ht[i] = SFQ_DEPTH; |