Free microcode memory later.
With lockless DI, pmap_remove() requires operational thread lock, which is initialized at SI_SUB_RUN_QUEUE for thread0. Move it even later where APs are started, the moment after which other boot memory like trampoline stacks is already being freed. Reported by: gtetlow Sponsored by: The FreeBSD Foundation MFC after: 30 days
This commit is contained in:
parent
ec55b6c5f5
commit
8f7f38457f
@ -260,7 +260,7 @@ ucode_release(void *arg __unused)
|
||||
goto restart;
|
||||
}
|
||||
}
|
||||
SYSINIT(ucode_release, SI_SUB_KMEM + 1, SI_ORDER_ANY, ucode_release, NULL);
|
||||
SYSINIT(ucode_release, SI_SUB_SMP + 1, SI_ORDER_ANY, ucode_release, NULL);
|
||||
|
||||
void
|
||||
ucode_load_ap(int cpu)
|
||||
|
Loading…
Reference in New Issue
Block a user