linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / arch / s390 / kernel / process.c
index c147da5..476e064 100644 (file)
@@ -76,17 +76,17 @@ unsigned long thread_saved_pc(struct task_struct *tsk)
 /*
  * Need to know about CPUs going idle?
  */
-static ATOMIC_NOTIFIER_HEAD(idle_chain);
+static struct notifier_block *idle_chain;
 
 int register_idle_notifier(struct notifier_block *nb)
 {
-       return atomic_notifier_chain_register(&idle_chain, nb);
+       return notifier_chain_register(&idle_chain, nb);
 }
 EXPORT_SYMBOL(register_idle_notifier);
 
 int unregister_idle_notifier(struct notifier_block *nb)
 {
-       return atomic_notifier_chain_unregister(&idle_chain, nb);
+       return notifier_chain_unregister(&idle_chain, nb);
 }
 EXPORT_SYMBOL(unregister_idle_notifier);
 
@@ -95,7 +95,7 @@ void do_monitor_call(struct pt_regs *regs, long interruption_code)
        /* disable monitor call class 0 */
        __ctl_clear_bit(8, 15);
 
-       atomic_notifier_call_chain(&idle_chain, CPU_NOT_IDLE,
+       notifier_call_chain(&idle_chain, CPU_NOT_IDLE,
                            (void *)(long) smp_processor_id());
 }
 
@@ -103,7 +103,7 @@ extern void s390_handle_mcck(void);
 /*
  * The idle loop on a S390...
  */
-static void default_idle(void)
+void default_idle(void)
 {
        int cpu, rc;
 
@@ -116,8 +116,7 @@ static void default_idle(void)
                return;
        }
 
-       rc = atomic_notifier_call_chain(&idle_chain,
-                       CPU_IDLE, (void *)(long) cpu);
+       rc = notifier_call_chain(&idle_chain, CPU_IDLE, (void *)(long) cpu);
        if (rc != NOTIFY_OK && rc != NOTIFY_DONE)
                BUG();
        if (rc != NOTIFY_OK) {