]> err.no Git - linux-2.6/blobdiff - kernel/hrtimer.c
[PATCH] Define __raw_get_cpu_var and use it
[linux-2.6] / kernel / hrtimer.c
index 01fa2ae98a8571d7e2d7a4e71c03a423792a0d67..9587aac72f4d80ef655252ec89dcef255613e0bf 100644 (file)
@@ -393,7 +393,7 @@ static void __remove_hrtimer(struct hrtimer *timer, struct hrtimer_base *base)
        if (base->first == &timer->node)
                base->first = rb_next(&timer->node);
        rb_erase(&timer->node, &base->active);
-       timer->node.rb_parent = HRTIMER_INACTIVE;
+       rb_set_parent(&timer->node, &timer->node);
 }
 
 /*
@@ -576,13 +576,13 @@ void hrtimer_init(struct hrtimer *timer, clockid_t clock_id,
 
        memset(timer, 0, sizeof(struct hrtimer));
 
-       bases = per_cpu(hrtimer_bases, raw_smp_processor_id());
+       bases = __raw_get_cpu_var(hrtimer_bases);
 
        if (clock_id == CLOCK_REALTIME && mode != HRTIMER_ABS)
                clock_id = CLOCK_MONOTONIC;
 
        timer->base = &bases[clock_id];
-       timer->node.rb_parent = HRTIMER_INACTIVE;
+       rb_set_parent(&timer->node, &timer->node);
 }
 EXPORT_SYMBOL_GPL(hrtimer_init);
 
@@ -599,7 +599,7 @@ int hrtimer_get_res(const clockid_t which_clock, struct timespec *tp)
 {
        struct hrtimer_base *bases;
 
-       bases = per_cpu(hrtimer_bases, raw_smp_processor_id());
+       bases = __raw_get_cpu_var(hrtimer_bases);
        *tp = ktime_to_timespec(bases[which_clock].resolution);
 
        return 0;