blob: 34dd3d7ba40bc0a5e3a11d7cf5cea4a641f030ad [file] [log] [blame]
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00001/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef SMPBOOT_H
3#define SMPBOOT_H
4
5struct task_struct;
6
7#ifdef CONFIG_GENERIC_SMP_IDLE_THREAD
8struct task_struct *idle_thread_get(unsigned int cpu);
9void idle_thread_set_boot_cpu(void);
10void idle_threads_init(void);
11#else
12static inline struct task_struct *idle_thread_get(unsigned int cpu) { return NULL; }
13static inline void idle_thread_set_boot_cpu(void) { }
14static inline void idle_threads_init(void) { }
15#endif
16
17int smpboot_create_threads(unsigned int cpu);
18int smpboot_park_threads(unsigned int cpu);
19int smpboot_unpark_threads(unsigned int cpu);
20
21void __init cpuhp_threads_init(void);
22
23#endif