[Bug 276426] amd64: microcode update caused a page fault trying to send data to the logger

From: <bugzilla-noreply_at_freebsd.org>
Date: Thu, 18 Jan 2024 22:32:12 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=276426

--- Comment #11 from John F. Carr <jfc@mit.edu> ---
The stack trace goes through line 759 in trap.c.  In my code that is the if
statement here:

                if (td->td_critnest != 0 ||
                    WITNESS_CHECK(WARN_SLEEPOK | WARN_GIANTOK, NULL,
                    "Kernel page fault") != 0) {
                        trap_fatal(frame, eva);
                        return (-1);
                }
That prompted me to check td->td_critnest.  The WITNESS_CHECK should return 0.
I have WITNESS disabled.  I have INVARIANTS enabled.  Otherwise my kernel is
GENERIC.

Could we be getting a page fault handling a page fault?  I don't know if that
can be reconciled with the stack.

-- 
You are receiving this mail because:
You are the assignee for the bug.