freebsd-nq/sys/i386
Konstantin Belousov 759e5d25da 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
2018-12-08 22:12:57 +00:00
..
acpica Rename assym.s to assym.inc 2018-03-20 17:58:51 +00:00
bios Use NULL for SYSINIT's last arg, which is a pointer type 2018-05-18 17:58:09 +00:00
cloudabi32 Use TO_PTR() to convert integers to pointers. 2017-11-26 14:45:56 +00:00
conf Add evdev support to amd64 and i386 kernels 2018-11-12 21:01:28 +00:00
i386 Fix PAE boot. 2018-12-08 22:12:57 +00:00
ibcs2 Regen after 335177 (rename sys_obreak to sys_break). 2018-06-14 21:29:31 +00:00
include Add a custom implementation of cpu_lock_delay() for x86. 2018-11-05 22:54:03 +00:00
linux Regenerated assorted syscall related files after: 2018-10-09 20:42:17 +00:00
pci Correct pseudo misspelling in sys/ comments 2018-02-23 18:15:50 +00:00
Makefile