freebsd-skq/sys/i386/i386
Konstantin Belousov 34c15db9cd Add config option PAE_TABLES for the i386 kernel. It switches pmap to
use PAE format for the page tables, but does not incur other
consequences of the full PAE config.  In particular, vm_paddr_t and
bus_addr_t are left 32bit, and max supported memory is still limited
by 4GB.

The option allows to have nx permissions for memory mappings on i386
kernel, while keeping the usual i386 KBI and avoiding the kernel data
sizing problems typical for the PAE config.

Intel documented that the PAE format for page tables is available
starting with the Pentium Pro, but it is possible that the plain
Pentium CPUs have the required support (Appendix H).  The goal is to
enable the option and non-exec mappings on i386 for the GENERIC
kernel.  Anybody wanting a useful system on 486, have to reconfigure
the modern i386 kernel anyway.

Discussed with:	alc, jhb
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
2015-04-13 15:22:45 +00:00
..
apic_vector.s Add x2APIC support. Enable it by default if CPU is capable. The 2015-02-09 21:00:56 +00:00
atomic.c
atpic_vector.s
autoconf.c
bios.c Add config option PAE_TABLES for the i386 kernel. It switches pmap to 2015-04-13 15:22:45 +00:00
bioscall.s
bpf_jit_machdep.c - Provide necessary includes. 2013-10-29 11:17:49 +00:00
bpf_jit_machdep.h
db_disasm.c Add support for decoding multibyte NOPs. 2015-02-13 01:35:53 +00:00
db_interface.c
db_trace.c Print the frame addresses for the backtraces on i386 and amd64. It 2012-12-03 22:16:51 +00:00
elan-mmcr.c
elf_machdep.c Need to include opt_cpu.h to access CPU_DISABLE_SSE option. Thankfully, this 2015-01-08 17:46:42 +00:00
exception.s - For kernel compiled only with KDTRACE_HOOKS and not any lock debugging 2013-11-25 07:38:45 +00:00
gdb_machdep.c
genassym.c Add x2APIC support. Enable it by default if CPU is capable. The 2015-02-09 21:00:56 +00:00
geode.c
i686_mem.c Pull in r267961 and r267973 again. Fix for issues reported will follow. 2014-06-28 03:56:17 +00:00
in_cksum.c
initcpu.c Add config option PAE_TABLES for the i386 kernel. It switches pmap to 2015-04-13 15:22:45 +00:00
io.c
k6_mem.c
locore.s Add config option PAE_TABLES for the i386 kernel. It switches pmap to 2015-04-13 15:22:45 +00:00
longrun.c
machdep.c Add config option PAE_TABLES for the i386 kernel. It switches pmap to 2015-04-13 15:22:45 +00:00
mem.c Remove Giant from /dev/mem and /dev/kmem. It is definitely not needed 2015-01-24 12:51:15 +00:00
minidump_machdep.c Add config option PAE_TABLES for the i386 kernel. It switches pmap to 2015-04-13 15:22:45 +00:00
mp_clock.c
mp_machdep.c Wait 100 microseconds for a local APIC to dispatch each startup-related IPI 2015-03-30 20:13:22 +00:00
mp_watchdog.c Pull in r267961 and r267973 again. Fix for issues reported will follow. 2014-06-28 03:56:17 +00:00
mpboot.s Add config option PAE_TABLES for the i386 kernel. It switches pmap to 2015-04-13 15:22:45 +00:00
perfmon.c
pmap.c Add config option PAE_TABLES for the i386 kernel. It switches pmap to 2015-04-13 15:22:45 +00:00
ptrace_machdep.c Ensure that the supplied data length is large enough to hold the base 2015-02-18 23:34:03 +00:00
stack_machdep.c
support.s Add fueword(9) and casueword(9) functions. They are like fuword(9) 2014-10-28 15:22:13 +00:00
swtch.s Add config option PAE_TABLES for the i386 kernel. It switches pmap to 2015-04-13 15:22:45 +00:00
sys_machdep.c MFamd64: Add support for extended FPU states on i386. This includes 2014-11-02 22:58:30 +00:00
trap.c Add config option PAE_TABLES for the i386 kernel. It switches pmap to 2015-04-13 15:22:45 +00:00
uio_machdep.c Delete stray clause 3 (Advertising clause) and renumber while i'm 2014-03-11 23:41:35 +00:00
vm86.c MFamd64 r238623: 2012-07-26 09:11:37 +00:00
vm86bios.s Add config option PAE_TABLES for the i386 kernel. It switches pmap to 2015-04-13 15:22:45 +00:00
vm_machdep.c Add config option PAE_TABLES for the i386 kernel. It switches pmap to 2015-04-13 15:22:45 +00:00