smp/hotplug: Add state diagram
authorPeter Zijlstra <peterz@infradead.org>
Wed, 20 Sep 2017 17:00:15 +0000 (19:00 +0200)
committerThomas Gleixner <tglx@linutronix.de>
Mon, 25 Sep 2017 20:11:41 +0000 (22:11 +0200)
Add a state diagram to clarify when which states are ran where.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: bigeasy@linutronix.de
Cc: efault@gmx.de
Cc: rostedt@goodmis.org
Cc: max.byungchul.park@gmail.com
Link: https://lkml.kernel.org/r/20170920170546.661598270@infradead.org
include/linux/cpuhotplug.h

index f24bfb2b9a2dcca0ac61034e86fe3bc489da7947..477b2e6f60f72bbfb40ff7370b2a0a768df60e49 100644 (file)
@@ -3,6 +3,24 @@
 
 #include <linux/types.h>
 
+/*
+ * CPU-up                      CPU-down
+ *
+ * BP          AP              BP              AP
+ *
+ * OFFLINE                     OFFLINE
+ *   |                           ^
+ *   v                           |
+ * BRINGUP_CPU->AP_OFFLINE     BRINGUP_CPU  <- AP_IDLE_DEAD (idle thread/play_dead)
+ *               |                             AP_OFFLINE
+ *               v (IRQ-off)     ,---------------^
+ *             AP_ONLNE          | (stop_machine)
+ *               |             TEARDOWN_CPU <- AP_ONLINE_IDLE
+ *               |                               ^
+ *               v                               |
+ *              AP_ACTIVE                      AP_ACTIVE
+ */
+
 enum cpuhp_state {
        CPUHP_OFFLINE,
        CPUHP_CREATE_THREADS,