summaryrefslogtreecommitdiffstats
path: root/sys/sys/smp.h
diff options
context:
space:
mode:
authorjulian <julian@FreeBSD.org>2004-09-01 06:42:02 +0000
committerjulian <julian@FreeBSD.org>2004-09-01 06:42:02 +0000
commit8354ba9e3ae8db8ce805e66f768b37de9f172dce (patch)
tree93ac3864ee5c297785ca19470bbb03069c0240ae /sys/sys/smp.h
parent80bf38e921816f690ba642ba76e42b17f5141d66 (diff)
downloadFreeBSD-src-8354ba9e3ae8db8ce805e66f768b37de9f172dce.zip
FreeBSD-src-8354ba9e3ae8db8ce805e66f768b37de9f172dce.tar.gz
Give the 4bsd scheduler the ability to wake up idle processors
when there is new work to be done. MFC after: 5 days
Diffstat (limited to 'sys/sys/smp.h')
-rw-r--r--sys/sys/smp.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/sys/smp.h b/sys/sys/smp.h
index 12bfbba..af9176f 100644
--- a/sys/sys/smp.h
+++ b/sys/sys/smp.h
@@ -51,11 +51,15 @@ extern volatile cpumask_t started_cpus;
extern volatile cpumask_t stopped_cpus;
#endif /* SMP */
-extern cpumask_t all_cpus;
extern u_int mp_maxid;
extern int mp_ncpus;
extern volatile int smp_started;
+extern cpumask_t all_cpus;
+extern cpumask_t idle_cpus_mask;
+extern cpumask_t hlt_cpus_mask;
+extern cpumask_t logical_cpus_mask;
+
/*
* Macro allowing us to determine whether a CPU is absent at any given
* time, thus permitting us to configure sparse maps of cpuid-dependent
@@ -92,6 +96,7 @@ void cpu_mp_start(void);
void forward_signal(struct thread *);
void forward_roundrobin(void);
+int forward_wakeup(int cpunum);
int restart_cpus(cpumask_t);
int stop_cpus(cpumask_t);
void smp_rendezvous_action(void);
OpenPOWER on IntegriCloud