cpu/hotplug: Remove cpu_report_state() and related unused cruft
authorThomas Gleixner <tglx@linutronix.de>
Fri, 12 May 2023 21:07:30 +0000 (23:07 +0200)
committerPeter Zijlstra <peterz@infradead.org>
Mon, 15 May 2023 11:44:56 +0000 (13:44 +0200)
No more users.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Michael Kelley <mikelley@microsoft.com>
Tested-by: Oleksandr Natalenko <oleksandr@natalenko.name>
Tested-by: Helge Deller <deller@gmx.de> # parisc
Tested-by: Guilherme G. Piccoli <gpiccoli@igalia.com> # Steam Deck
Link: https://lore.kernel.org/r/20230512205256.582584351@linutronix.de
include/linux/cpu.h
kernel/smpboot.c

index 8582a71..68f69e8 100644 (file)
@@ -184,8 +184,6 @@ void arch_cpu_idle_enter(void);
 void arch_cpu_idle_exit(void);
 void __noreturn arch_cpu_idle_dead(void);
 
-int cpu_report_state(int cpu);
-int cpu_check_up_prepare(int cpu);
 void cpu_set_state_online(int cpu);
 void play_idle_precise(u64 duration_ns, u64 latency_ns);
 
index 3dcfd3f..1940f33 100644 (file)
@@ -329,97 +329,7 @@ EXPORT_SYMBOL_GPL(smpboot_unregister_percpu_thread);
 #ifndef CONFIG_HOTPLUG_CORE_SYNC
 static DEFINE_PER_CPU(atomic_t, cpu_hotplug_state) = ATOMIC_INIT(CPU_POST_DEAD);
 
-/*
- * Called to poll specified CPU's state, for example, when waiting for
- * a CPU to come online.
- */
-int cpu_report_state(int cpu)
-{
-       return atomic_read(&per_cpu(cpu_hotplug_state, cpu));
-}
-
-/*
- * If CPU has died properly, set its state to CPU_UP_PREPARE and
- * return success.  Otherwise, return -EBUSY if the CPU died after
- * cpu_wait_death() timed out.  And yet otherwise again, return -EAGAIN
- * if cpu_wait_death() timed out and the CPU still hasn't gotten around
- * to dying.  In the latter two cases, the CPU might not be set up
- * properly, but it is up to the arch-specific code to decide.
- * Finally, -EIO indicates an unanticipated problem.
- *
- * Note that it is permissible to omit this call entirely, as is
- * done in architectures that do no CPU-hotplug error checking.
- */
-int cpu_check_up_prepare(int cpu)
-{
-       if (!IS_ENABLED(CONFIG_HOTPLUG_CPU)) {
-               atomic_set(&per_cpu(cpu_hotplug_state, cpu), CPU_UP_PREPARE);
-               return 0;
-       }
-
-       switch (atomic_read(&per_cpu(cpu_hotplug_state, cpu))) {
-
-       case CPU_POST_DEAD:
-
-               /* The CPU died properly, so just start it up again. */
-               atomic_set(&per_cpu(cpu_hotplug_state, cpu), CPU_UP_PREPARE);
-               return 0;
-
-       case CPU_DEAD_FROZEN:
-
-               /*
-                * Timeout during CPU death, so let caller know.
-                * The outgoing CPU completed its processing, but after
-                * cpu_wait_death() timed out and reported the error. The
-                * caller is free to proceed, in which case the state
-                * will be reset properly by cpu_set_state_online().
-                * Proceeding despite this -EBUSY return makes sense
-                * for systems where the outgoing CPUs take themselves
-                * offline, with no post-death manipulation required from
-                * a surviving CPU.
-                */
-               return -EBUSY;
-
-       case CPU_BROKEN:
-
-               /*
-                * The most likely reason we got here is that there was
-                * a timeout during CPU death, and the outgoing CPU never
-                * did complete its processing.  This could happen on
-                * a virtualized system if the outgoing VCPU gets preempted
-                * for more than five seconds, and the user attempts to
-                * immediately online that same CPU.  Trying again later
-                * might return -EBUSY above, hence -EAGAIN.
-                */
-               return -EAGAIN;
-
-       case CPU_UP_PREPARE:
-               /*
-                * Timeout while waiting for the CPU to show up. Allow to try
-                * again later.
-                */
-               return 0;
-
-       default:
-
-               /* Should not happen.  Famous last words. */
-               return -EIO;
-       }
-}
-
-/*
- * Mark the specified CPU online.
- *
- * Note that it is permissible to omit this call entirely, as is
- * done in architectures that do no CPU-hotplug error checking.
- */
-void cpu_set_state_online(int cpu)
-{
-       (void)atomic_xchg(&per_cpu(cpu_hotplug_state, cpu), CPU_ONLINE);
-}
-
 #ifdef CONFIG_HOTPLUG_CPU
-
 /*
  * Wait for the specified CPU to exit the idle loop and die.
  */