aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2020-05-28 11:01:34 +0200
committerIngo Molnar <mingo@kernel.org>2020-05-28 11:03:20 +0200
commit1f8db4150536431b031585ecc2a6793f69245de2 (patch)
tree351bd6bc83a8ea21dc6d06f706eb789b13a2aa5a
parenta148866489fbe243c936fe43e4525d8dbfa0318f (diff)
sched/headers: Split out open-coded prototypes into kernel/sched/smp.hsched-core-2020-06-01
Move the prototypes for sched_ttwu_pending() and send_call_function_single_ipi() into the newly created kernel/sched/smp.h header, to make sure they are all the same, and to architectures happy that use -Wmissing-prototypes. Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r--kernel/sched/core.c1
-rw-r--r--kernel/sched/smp.h9
-rw-r--r--kernel/smp.c5
3 files changed, 11 insertions, 4 deletions
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index b3c64c6b4d2e..43ba2d4a8eca 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -20,6 +20,7 @@
#include "../smpboot.h"
#include "pelt.h"
+#include "smp.h"
#define CREATE_TRACE_POINTS
#include <trace/events/sched.h>
diff --git a/kernel/sched/smp.h b/kernel/sched/smp.h
new file mode 100644
index 000000000000..9620e323162c
--- /dev/null
+++ b/kernel/sched/smp.h
@@ -0,0 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * Scheduler internal SMP callback types and methods between the scheduler
+ * and other internal parts of the core kernel:
+ */
+
+extern void sched_ttwu_pending(void *arg);
+
+extern void send_call_function_single_ipi(int cpu);
diff --git a/kernel/smp.c b/kernel/smp.c
index 0d61dc060b01..4dec04f7fdc5 100644
--- a/kernel/smp.c
+++ b/kernel/smp.c
@@ -22,7 +22,7 @@
#include <linux/hypervisor.h>
#include "smpboot.h"
-
+#include "sched/smp.h"
#define CSD_TYPE(_csd) ((_csd)->flags & CSD_FLAG_TYPE_MASK)
@@ -133,8 +133,6 @@ static __always_inline void csd_unlock(call_single_data_t *csd)
static DEFINE_PER_CPU_SHARED_ALIGNED(call_single_data_t, csd_data);
-extern void send_call_function_single_ipi(int cpu);
-
void __smp_call_single_queue(int cpu, struct llist_node *node)
{
/*
@@ -196,7 +194,6 @@ void generic_smp_call_function_single_interrupt(void)
flush_smp_call_function_queue(true);
}
-extern void sched_ttwu_pending(void *);
extern void irq_work_single(void *);
/**