]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - net/ipv4/ipvs/ip_vs_est.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6
[linux-2.6-omap-h63xx.git] / net / ipv4 / ipvs / ip_vs_est.c
index 4c1940381ba0f38311c78e1d9f22407d2fe4d343..dfa0d713c801b81dc6465feba8ad4ae3587d0ad1 100644 (file)
@@ -18,6 +18,7 @@
 #include <linux/slab.h>
 #include <linux/types.h>
 #include <linux/interrupt.h>
+#include <linux/sysctl.h>
 
 #include <net/ip_vs.h>
 
@@ -123,11 +124,10 @@ int ip_vs_new_estimator(struct ip_vs_stats *stats)
 {
        struct ip_vs_estimator *est;
 
-       est = kmalloc(sizeof(*est), GFP_KERNEL);
+       est = kzalloc(sizeof(*est), GFP_KERNEL);
        if (est == NULL)
                return -ENOMEM;
 
-       memset(est, 0, sizeof(*est));
        est->stats = stats;
        est->last_conns = stats->conns;
        est->cps = stats->cps<<10;
@@ -147,9 +147,8 @@ int ip_vs_new_estimator(struct ip_vs_stats *stats)
        write_lock_bh(&est_lock);
        est->next = est_list;
        if (est->next == NULL) {
-               init_timer(&est_timer);
+               setup_timer(&est_timer, estimation_timer, 0);
                est_timer.expires = jiffies + 2*HZ;
-               est_timer.function = estimation_timer;
                add_timer(&est_timer);
        }
        est_list = est;