summaryrefslogtreecommitdiff
path: root/i386
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2021-04-04 16:47:38 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2021-04-04 16:47:38 +0200
commitb21f84ef1bb9e9ba69bfea069295ad4618f671eb (patch)
treeaf3e80941a206353b0eb7a1a21b95e02601f5c09 /i386
parente5facfba3d2dba679d72c859066260eb0d33456c (diff)
SMP: Fix warnings
Diffstat (limited to 'i386')
-rw-r--r--i386/i386/db_interface.c1
-rw-r--r--i386/i386/fpu.c2
-rw-r--r--i386/i386/mp_desc.c2
-rw-r--r--i386/i386/mp_desc.h4
-rw-r--r--i386/i386/pcb.h4
5 files changed, 13 insertions, 0 deletions
diff --git a/i386/i386/db_interface.c b/i386/i386/db_interface.c
index cc23c15c..1a7070e3 100644
--- a/i386/i386/db_interface.c
+++ b/i386/i386/db_interface.c
@@ -56,6 +56,7 @@
#include <ddb/db_task_thread.h>
#include <ddb/db_trap.h>
#include <ddb/db_watch.h>
+#include <ddb/db_mp.h>
#include <machine/db_interface.h>
#include <machine/machspl.h>
diff --git a/i386/i386/fpu.c b/i386/i386/fpu.c
index cdfe264b..b47bd339 100644
--- a/i386/i386/fpu.c
+++ b/i386/i386/fpu.c
@@ -927,7 +927,9 @@ void
fpintr(int unit)
{
spl_t s;
+#if NCPUS == 1
thread_t thread = current_thread();
+#endif /* NCPUS == 1 */
ASSERT_IPL(SPL1);
/*
diff --git a/i386/i386/mp_desc.c b/i386/i386/mp_desc.c
index e4bc12de..1e9ea0fc 100644
--- a/i386/i386/mp_desc.c
+++ b/i386/i386/mp_desc.c
@@ -30,12 +30,14 @@
#include <kern/cpu_number.h>
#include <kern/debug.h>
+#include <kern/printf.h>
#include <mach/machine.h>
#include <mach/xen.h>
#include <vm/vm_kern.h>
#include <i386/mp_desc.h>
#include <i386/lock.h>
+#include <i386at/model_dep.h>
#include <machine/ktss.h>
#include <machine/tss.h>
#include <machine/io_perm.h>
diff --git a/i386/i386/mp_desc.h b/i386/i386/mp_desc.h
index 4a9cbdf6..ebe1471d 100644
--- a/i386/i386/mp_desc.h
+++ b/i386/i386/mp_desc.h
@@ -84,4 +84,8 @@ extern void interrupt_processor(int cpu);
extern void start_other_cpus(void);
+extern kern_return_t cpu_start(int cpu);
+
+extern kern_return_t cpu_control(int cpu, const int *info, unsigned int count);
+
#endif /* _I386_MP_DESC_H_ */
diff --git a/i386/i386/pcb.h b/i386/i386/pcb.h
index 30d96271..5bc78066 100644
--- a/i386/i386/pcb.h
+++ b/i386/i386/pcb.h
@@ -79,6 +79,10 @@ extern thread_t Load_context (thread_t new);
extern thread_t Switch_context (thread_t old, void (*continuation)(), thread_t new);
+extern void switch_to_shutdown_context(thread_t thread,
+ void (*routine)(processor_t),
+ processor_t processor);
+
extern void Thread_continue (void);
extern void pcb_module_init (void);