2012-04-20 13:05:44 +00:00
|
|
|
#ifndef SMPBOOT_H
|
|
|
|
#define SMPBOOT_H
|
|
|
|
|
2012-04-20 13:05:45 +00:00
|
|
|
struct task_struct;
|
|
|
|
|
|
|
|
#ifdef CONFIG_GENERIC_SMP_IDLE_THREAD
|
|
|
|
struct task_struct *idle_thread_get(unsigned int cpu);
|
|
|
|
void idle_thread_set_boot_cpu(void);
|
2012-04-21 00:08:50 +00:00
|
|
|
void idle_threads_init(void);
|
2012-04-20 13:05:45 +00:00
|
|
|
#else
|
|
|
|
static inline struct task_struct *idle_thread_get(unsigned int cpu) { return NULL; }
|
|
|
|
static inline void idle_thread_set_boot_cpu(void) { }
|
2012-05-04 10:52:25 +00:00
|
|
|
static inline void idle_threads_init(void) { }
|
2012-04-20 13:05:45 +00:00
|
|
|
#endif
|
|
|
|
|
2012-07-16 10:42:36 +00:00
|
|
|
int smpboot_create_threads(unsigned int cpu);
|
2016-02-26 18:43:36 +00:00
|
|
|
int smpboot_park_threads(unsigned int cpu);
|
|
|
|
int smpboot_unpark_threads(unsigned int cpu);
|
2012-07-16 10:42:36 +00:00
|
|
|
|
2016-02-26 18:43:38 +00:00
|
|
|
void __init cpuhp_threads_init(void);
|
|
|
|
|
2012-04-20 13:05:44 +00:00
|
|
|
#endif
|