f00f: We don't need giant to create IDT for workaround.
We don't need to assert we have Giant here. All machines that require the F00F workaround are UP and interrupts are disabled. Since we are single threaded, it's safe to allocate the IDT area with pmap_trm_alloc, interact with the current idt table and replace the IDT table without any Giant locking. Sponsored by: Netflix Reviewed by: kib, markj Differential Revision: https://reviews.freebsd.org/D31839
This commit is contained in:
parent
9e1dc7bec3
commit
0cfc8b10ed
@ -2719,8 +2719,6 @@ f00f_hack(void *unused)
|
||||
if (!has_f00f_bug)
|
||||
return;
|
||||
|
||||
GIANT_REQUIRED;
|
||||
|
||||
printf("Intel Pentium detected, installing workaround for F00F bug\n");
|
||||
|
||||
tmp = (vm_offset_t)pmap_trm_alloc(PAGE_SIZE * 3, M_NOWAIT | M_ZERO);
|
||||
|
Loading…
Reference in New Issue
Block a user