diff options
author | tegge <tegge@FreeBSD.org> | 2003-02-23 23:49:57 +0000 |
---|---|---|
committer | tegge <tegge@FreeBSD.org> | 2003-02-23 23:49:57 +0000 |
commit | 762ff6ef1c1d863da62dbf41561c2f3b7e2bcd69 (patch) | |
tree | ea2750933912c63818e94cad746adf8addf2ee49 /sys | |
parent | f302079cd8466370240f7047619a3423c0ebba68 (diff) | |
download | FreeBSD-src-762ff6ef1c1d863da62dbf41561c2f3b7e2bcd69.zip FreeBSD-src-762ff6ef1c1d863da62dbf41561c2f3b7e2bcd69.tar.gz |
Allow machines with one CPU and a valid mp table to boot an SMP kernel.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/amd64/amd64/mp_machdep.c | 2 | ||||
-rw-r--r-- | sys/amd64/amd64/mptable.c | 2 | ||||
-rw-r--r-- | sys/amd64/include/mptable.h | 2 | ||||
-rw-r--r-- | sys/i386/i386/mp_machdep.c | 2 | ||||
-rw-r--r-- | sys/i386/i386/mptable.c | 2 | ||||
-rw-r--r-- | sys/i386/include/mptable.h | 2 |
6 files changed, 12 insertions, 0 deletions
diff --git a/sys/amd64/amd64/mp_machdep.c b/sys/amd64/amd64/mp_machdep.c index 7ebd6ea..1bca189 100644 --- a/sys/amd64/amd64/mp_machdep.c +++ b/sys/amd64/amd64/mp_machdep.c @@ -2727,6 +2727,8 @@ static void release_aps(void *dummy __unused) { + if (mp_ncpus == 1) + return; mtx_lock_spin(&sched_lock); atomic_store_rel_int(&aps_ready, 1); while (smp_started == 0) diff --git a/sys/amd64/amd64/mptable.c b/sys/amd64/amd64/mptable.c index 7ebd6ea..1bca189 100644 --- a/sys/amd64/amd64/mptable.c +++ b/sys/amd64/amd64/mptable.c @@ -2727,6 +2727,8 @@ static void release_aps(void *dummy __unused) { + if (mp_ncpus == 1) + return; mtx_lock_spin(&sched_lock); atomic_store_rel_int(&aps_ready, 1); while (smp_started == 0) diff --git a/sys/amd64/include/mptable.h b/sys/amd64/include/mptable.h index 7ebd6ea..1bca189 100644 --- a/sys/amd64/include/mptable.h +++ b/sys/amd64/include/mptable.h @@ -2727,6 +2727,8 @@ static void release_aps(void *dummy __unused) { + if (mp_ncpus == 1) + return; mtx_lock_spin(&sched_lock); atomic_store_rel_int(&aps_ready, 1); while (smp_started == 0) diff --git a/sys/i386/i386/mp_machdep.c b/sys/i386/i386/mp_machdep.c index 7ebd6ea..1bca189 100644 --- a/sys/i386/i386/mp_machdep.c +++ b/sys/i386/i386/mp_machdep.c @@ -2727,6 +2727,8 @@ static void release_aps(void *dummy __unused) { + if (mp_ncpus == 1) + return; mtx_lock_spin(&sched_lock); atomic_store_rel_int(&aps_ready, 1); while (smp_started == 0) diff --git a/sys/i386/i386/mptable.c b/sys/i386/i386/mptable.c index 7ebd6ea..1bca189 100644 --- a/sys/i386/i386/mptable.c +++ b/sys/i386/i386/mptable.c @@ -2727,6 +2727,8 @@ static void release_aps(void *dummy __unused) { + if (mp_ncpus == 1) + return; mtx_lock_spin(&sched_lock); atomic_store_rel_int(&aps_ready, 1); while (smp_started == 0) diff --git a/sys/i386/include/mptable.h b/sys/i386/include/mptable.h index 7ebd6ea..1bca189 100644 --- a/sys/i386/include/mptable.h +++ b/sys/i386/include/mptable.h @@ -2727,6 +2727,8 @@ static void release_aps(void *dummy __unused) { + if (mp_ncpus == 1) + return; mtx_lock_spin(&sched_lock); atomic_store_rel_int(&aps_ready, 1); while (smp_started == 0) |