diff options
| author | Konstantin Belousov <kib@FreeBSD.org> | 2021-07-29 13:18:19 +0000 |
|---|---|---|
| committer | Konstantin Belousov <kib@FreeBSD.org> | 2021-07-29 22:20:45 +0000 |
| commit | 2572376f7f6412bc69bd6138e9ac9a6efd7642af (patch) | |
| tree | 1166296b0f75fb0b8a28db2319fa181ec6da0123 /sys | |
| parent | b27fe1c3ba2a1302c2866751e0c618b5a697bf30 (diff) | |
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/amd64/amd64/mp_machdep.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/amd64/amd64/mp_machdep.c b/sys/amd64/amd64/mp_machdep.c index 62f715fd6ed3..6c66bd622855 100644 --- a/sys/amd64/amd64/mp_machdep.c +++ b/sys/amd64/amd64/mp_machdep.c @@ -446,7 +446,8 @@ start_all_aps(void) /* attempt to start the Application Processor */ if (!start_ap(apic_id, boot_address)) { /* restore the warmstart vector */ - *(u_int32_t *) WARMBOOT_OFF = mpbioswarmvec; + if (!efi_boot) + *(u_int32_t *)WARMBOOT_OFF = mpbioswarmvec; panic("AP #%d (PHY# %d) failed!", cpu, apic_id); } @@ -454,7 +455,8 @@ start_all_aps(void) } /* restore the warmstart vector */ - *(u_int32_t *) WARMBOOT_OFF = mpbioswarmvec; + if (!efi_boot) + *(u_int32_t *)WARMBOOT_OFF = mpbioswarmvec; outb(CMOS_REG, BIOS_RESET); outb(CMOS_DATA, mpbiosreason); |
