[PKT_SCHED] SFQ: timer is deferrable
authorStephen Hemminger <stephen.hemminger@vyatta.com>
Mon, 21 Jan 2008 01:18:45 +0000 (17:18 -0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 28 Jan 2008 23:08:15 +0000 (15:08 -0800)
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>
net/sched/sch_sfq.c

index c58fa6efc7a297b94e825efa0ee0c2ac2e21e981..ba3a85e29b215d72b3d1a1351725e6d90472c04e 100644 (file)
@@ -426,7 +426,9 @@ static int sfq_init(struct Qdisc *sch, struct rtattr *opt)
        struct sfq_sched_data *q = qdisc_priv(sch);
        int i;
 
-       setup_timer(&q->perturb_timer, sfq_perturbation, (unsigned long)sch);
+       q->perturb_timer.function = sfq_perturbation;
+       q->perturb_timer.data = (unsigned long)sch;;
+       init_timer_deferrable(&q->perturb_timer);
 
        for (i=0; i<SFQ_HASH_DIVISOR; i++)
                q->ht[i] = SFQ_DEPTH;