diff options
-rw-r--r-- | sys/amd64/amd64/vm_machdep.c | 4 | ||||
-rw-r--r-- | sys/i386/i386/vm_machdep.c | 5 |
2 files changed, 7 insertions, 2 deletions
diff --git a/sys/amd64/amd64/vm_machdep.c b/sys/amd64/amd64/vm_machdep.c index 701dd33..d2982e9 100644 --- a/sys/amd64/amd64/vm_machdep.c +++ b/sys/amd64/amd64/vm_machdep.c @@ -389,7 +389,9 @@ cpu_reset() cpustop_restartfunc = cpu_reset_proxy; cpu_reset_proxy_active = 0; printf("cpu_reset: Restarting BSP\n"); - started_cpus = (1<<0); /* Restart CPU #0 */ + + /* Restart CPU #0. */ + atomic_store_rel_int(&started_cpus, 1 << 0); cnt = 0; while (cpu_reset_proxy_active == 0 && cnt < 10000000) diff --git a/sys/i386/i386/vm_machdep.c b/sys/i386/i386/vm_machdep.c index 926e44b..ca51b8f 100644 --- a/sys/i386/i386/vm_machdep.c +++ b/sys/i386/i386/vm_machdep.c @@ -551,7 +551,10 @@ cpu_reset() cpustop_restartfunc = cpu_reset_proxy; cpu_reset_proxy_active = 0; printf("cpu_reset: Restarting BSP\n"); - started_cpus = (1<<0); /* Restart CPU #0 */ + + /* Restart CPU #0. */ + /* XXX: restart_cpus(1 << 0); */ + atomic_store_rel_int(&started_cpus, (1 << 0)); cnt = 0; while (cpu_reset_proxy_active == 0 && cnt < 10000000) |