The unregister notifier function is needed to support cpu hotplug.

Signed-off-by: Wei Wang <wei.w.w...@intel.com>
---
 xen/common/cpu.c      | 7 +++++++
 xen/include/xen/cpu.h | 1 +
 2 files changed, 8 insertions(+)

diff --git a/xen/common/cpu.c b/xen/common/cpu.c
index 47e8b5b..508cee5 100644
--- a/xen/common/cpu.c
+++ b/xen/common/cpu.c
@@ -68,6 +68,13 @@ void __init register_cpu_notifier(struct notifier_block *nb)
     spin_unlock(&cpu_add_remove_lock);
 }
 
+void __init unregister_cpu_notifier(struct notifier_block *nb) {
+    if ( !spin_trylock(&cpu_add_remove_lock) )
+        BUG();
+    notifier_chain_unregister(&cpu_chain, nb);
+    spin_unlock(&cpu_add_remove_lock);
+}
+
 static int take_cpu_down(void *unused)
 {
     void *hcpu = (void *)(long)smp_processor_id();
diff --git a/xen/include/xen/cpu.h b/xen/include/xen/cpu.h
index ffefc09..17a3503 100644
--- a/xen/include/xen/cpu.h
+++ b/xen/include/xen/cpu.h
@@ -15,6 +15,7 @@ void cpu_hotplug_done(void);
 
 /* Receive notification of CPU hotplug events. */
 void register_cpu_notifier(struct notifier_block *nb);
+void unregister_cpu_notifier(struct notifier_block *nb);
 
 /*
  * Possible event sequences for a given CPU:
-- 
1.9.1


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

Reply via email to