sched: define and use CPU_PRI_* enums for cpu notifier priorities
authorTejun Heo <tj@kernel.org>
Tue, 8 Jun 2010 19:40:36 +0000 (21:40 +0200)
committerTejun Heo <tj@kernel.org>
Tue, 8 Jun 2010 19:40:36 +0000 (21:40 +0200)
Instead of hardcoding priority 10 and 20 in sched and perf, collect
them into CPU_PRI_* enums.

Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
include/linux/cpu.h
include/linux/perf_event.h
kernel/sched.c

index e287863ac053d9788756ac79c9271ba562d455b1..2d9073883ea99b00da6446bd95b1a3a2d695ec11 100644 (file)
@@ -48,6 +48,15 @@ extern ssize_t arch_cpu_release(const char *, size_t);
 #endif
 struct notifier_block;
 
+/*
+ * CPU notifier priorities.
+ */
+enum {
+       /* migration should happen before other stuff but after perf */
+       CPU_PRI_PERF            = 20,
+       CPU_PRI_MIGRATION       = 10,
+};
+
 #ifdef CONFIG_SMP
 /* Need to know about CPUs going up/down? */
 #if defined(CONFIG_HOTPLUG_CPU) || !defined(MODULE)
index 5d0266d94985c65acbd8b13a41961964cdde4a72..469e03e96fe722c8b465a026835b04e4ace2899a 100644 (file)
@@ -1068,7 +1068,7 @@ static inline void perf_event_disable(struct perf_event *event)           { }
 #define perf_cpu_notifier(fn)                                  \
 do {                                                           \
        static struct notifier_block fn##_nb __cpuinitdata =    \
-               { .notifier_call = fn, .priority = 20 };        \
+               { .notifier_call = fn, .priority = CPU_PRI_PERF }; \
        fn(&fn##_nb, (unsigned long)CPU_UP_PREPARE,             \
                (void *)(unsigned long)smp_processor_id());     \
        fn(&fn##_nb, (unsigned long)CPU_STARTING,               \
index f8b8996228dd7d8de9ee49a845a193921f1b8a5d..552faf8d358c3c1d42bb2ac53f3381b15de0dc07 100644 (file)
@@ -5801,7 +5801,7 @@ migration_call(struct notifier_block *nfb, unsigned long action, void *hcpu)
  */
 static struct notifier_block __cpuinitdata migration_notifier = {
        .notifier_call = migration_call,
-       .priority = 10
+       .priority = CPU_PRI_MIGRATION,
 };
 
 static int __init migration_init(void)