Discussion:
[Bug 233819] 12-BETA PAE kernel does not boot
b***@freebsd.org
2018-12-06 03:08:39 UTC
Permalink
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=233819

Bug ID: 233819
Summary: 12-BETA PAE kernel does not boot
Product: Base System
Version: 12.0-RELEASE
Hardware: i386
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: kern
Assignee: ***@FreeBSD.org
Reporter: ***@j.email.ne.jp

12-BETA, releng/12.0 PAE, kernel fails to boot and restarts the hardware. I
built with make buildkernel KERNCONF=PAE.

After loader starts booting kernel, it is nearly instantly restarts the
hardware so that I couldn't get any more useful information.

I tested on VMWare and 1 hardware that both boots 11.2-RELEASE and 11.3-STABLE
PAE.

I plan to get a revision # when PAE started failing but I need some time to
figure out.
--
You are receiving this mail because:
You are the assignee for the bug.
b***@freebsd.org
2018-12-08 03:11:30 UTC
Permalink
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=233819

Konstantin Belousov <***@FreeBSD.org> changed:

What |Removed |Added
----------------------------------------------------------------------------
CC| |***@FreeBSD.org

--- Comment #1 from Konstantin Belousov <***@FreeBSD.org> ---
Created attachment 199945
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=199945&action=edit
Ignore nx for kernel_pmap

I might make the patch more fine-grained later.
--
You are receiving this mail because:
You are the assignee for the bug.
b***@freebsd.org
2018-12-08 04:01:18 UTC
Permalink
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=233819

--- Comment #2 from ***@j.email.ne.jp ---
(In reply to Konstantin Belousov from comment #1)

This change allowed PAE kernel to boot.
Thank you for quick response.
--
You are receiving this mail because:
You are the assignee for the bug.
b***@freebsd.org
2018-12-08 22:13:04 UTC
Permalink
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=233819

--- Comment #3 from commit-***@freebsd.org ---
A commit references this bug:

Author: kib
Date: Sat Dec 8 22:12:58 UTC 2018
New revision: 341746
URL: https://svnweb.freebsd.org/changeset/base/341746

Log:
Fix PAE boot.

With the introduction of M_EXEC support for kmem_malloc(), some kernel
mappings start having NX bit set in the paging structures early, for
PAE kernels on machines with NX support, i.e. practically on all
machines. In particular, AP trampoline and initialization needs to
access pages which translations has NX bit set, before initializecpu()
is called.

Check for CPUID NX feature and enable EFER.NXE before we enable paging
in mp boot trampoline. This allows the CPU to use the kernel page
table instead of generating page fault due to reserved bit set.

PR: 233819
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

Changes:
head/sys/i386/i386/mpboot.s
--
You are receiving this mail because:
You are the assignee for the bug.
b***@freebsd.org
2018-12-09 06:43:20 UTC
Permalink
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=233819

--- Comment #4 from ***@j.email.ne.jp ---
(In reply to commit-hook from comment #3)

I applied the change to releng/12.0 without the patch in #1.
This PAE kernel also booted okay.
--
You are receiving this mail because:
You are the assignee for the bug.
Loading...