Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Sep 2021 16:45:22 GMT
From:      Warner Losh <imp@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: 0cfc8b10edd7 - main - f00f: We don't need giant to create IDT for workaround.
Message-ID:  <202109291645.18TGjM7m042118@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=0cfc8b10edd78c9e2738e82544fe4c4db401aea1

commit 0cfc8b10edd78c9e2738e82544fe4c4db401aea1
Author:     Warner Losh <imp@FreeBSD.org>
AuthorDate: 2021-09-29 16:19:51 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2021-09-29 16:35:21 +0000

    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
---
 sys/i386/i386/machdep.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/sys/i386/i386/machdep.c b/sys/i386/i386/machdep.c
index 1366939cda6e..942ff8c2ada8 100644
--- a/sys/i386/i386/machdep.c
+++ b/sys/i386/i386/machdep.c
@@ -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);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202109291645.18TGjM7m042118>