freebsd-nq/sys
Ruslan Bukin 02a371289a o Implement shared pagetables and switch from 4 to 3 levels page
memory system.

RISC-V ISA has only single page table base register for both kernel
and user addresses translation. Before this commit we were using an
extra (4th) level of pagetables for switching between kernel and user
pagetables, but then realized FPGA hardware has 3-level page system
hardcoded. It is also become clear that the bitfile synthesized for
4-level system is untested/broken, so we can't use extra level for
switching.

We are now share level 1 of pagetables between kernel and user VA.
This requires to keep track of all the user pmaps created and once we
adding L1 page to kernel pmap we have to add it to all the user pmaps.

o Change the VM layout as we must have topmost bit to be 1 in the
  selected page system for kernel addresses and 0 for user addresses.
o Implement pmap_kenter_device().
o Create the l3 tables for the early devmap.

Sponsored by:	DARPA, AFRL
Sponsored by:	HEIF5
2016-04-25 14:47:51 +00:00
..
amd64 AMD64 pmap: Use howmany() macro 2016-04-24 21:35:01 +00:00
arm Add support for Allwinner A31/A31S R-GPIO (CPUs-PORT) controller. 2016-04-23 13:59:18 +00:00
arm64 sys: use our roundup2/rounddown2() macros when param.h is available. 2016-04-21 19:57:40 +00:00
boot Reduce the FreeBSD specific DTS files for Mediatek/Ralink 2016-04-23 04:24:30 +00:00
bsm Merge from contrib/openbsm to bring the kernel audit bits up to date with OpenBSM 1.2 alpha 4: 2015-12-20 23:22:04 +00:00
cam Yet more redundant parenthesis from r298431. 2016-04-21 20:30:38 +00:00
cddl lahf/sahf are supported on some amd64 processors 2016-04-22 13:44:12 +00:00
compat linux_map_osrel doesn't need to be checked in linux_prison_set, 2016-04-25 06:08:45 +00:00
conf Revert r298477 ("Clear the DDR memory"). 2016-04-25 13:20:57 +00:00
contrib Zero the newly allocated spinlock. 2016-04-24 01:38:45 +00:00
crypto aesni(4): Initialize error before use 2016-04-20 03:05:32 +00:00
ddb Indentation issues. 2016-04-20 16:19:44 +00:00
dev hyperv/hn: Synchronize sub-channel offers 2016-04-25 10:16:07 +00:00
fs Allow the NFSv4 server to reply NFSERR_WRONGSEC for the SetClientID operation. 2016-04-23 21:18:45 +00:00
gdb
geom o Fix handling of images with compression block sizes comparable to 2016-04-23 06:31:46 +00:00
gnu Change OpenWRT imported dtsi files 2016-04-20 14:29:03 +00:00
i386 Cleanup redundant parenthesis from existing howmany()/roundup() macro uses. 2016-04-22 16:57:42 +00:00
isa isa/pnp: for pointers replace 0 with NULL. 2016-04-14 17:20:35 +00:00
kern Use the new PR_METHOD_REMOVE to clean up jail handling in POSIX 2016-04-25 04:36:54 +00:00
kgssapi kgssapi(4): Don't allow user-provided arguments to overrun stack buffer 2016-04-20 05:02:13 +00:00
libkern kern: for pointers replace 0 with NULL. 2016-04-15 16:10:11 +00:00
mips Remove uart_dev_mtk_ns8250 2016-04-23 04:27:01 +00:00
modules Fix streams and svr4 module dependency. Both modules are complaining about 2016-04-23 20:29:55 +00:00
net sys: use our roundup2/rounddown2() macros when param.h is available. 2016-04-21 19:57:40 +00:00
net80211 sys: use our roundup2/rounddown2() macros when param.h is available. 2016-04-21 19:57:40 +00:00
netgraph sys: use our nitems() macro when param.h is available. 2016-04-21 19:40:10 +00:00
netinet Remove a function, which is not used anymore. 2016-04-23 09:15:58 +00:00
netinet6 Indentation issues. 2016-04-20 16:19:44 +00:00
netipsec Fix build for NOINET and NOINET6 kernels. 2016-04-24 17:09:51 +00:00
netnatm kernel: use our nitems() macro when it is available through param.h. 2016-04-19 23:48:27 +00:00
netpfil netpfil: for pointers replace 0 with NULL. 2016-04-15 12:24:01 +00:00
netsmb Remove unused SMB_DIALECT_MAX macro. 2016-04-20 21:13:24 +00:00
nfs Do not try to install a default route for each interface found, because 2016-03-27 23:16:37 +00:00
nfsclient
nfsserver
nlm Remove slightly used const values that can be replaced with nitems(). 2016-04-21 15:38:28 +00:00
ofed Fix NOIP kernels to compile. 2016-04-24 15:56:05 +00:00
opencrypto Break up opencrypto/xform.c so it can be reused piecemeal 2015-12-30 22:43:07 +00:00
pc98 Use our nitems() macro when param.h is available. 2016-04-20 15:45:55 +00:00
powerpc OR in the unsigned form of the MCAR lower register. 2016-04-25 03:01:57 +00:00
riscv o Implement shared pagetables and switch from 4 to 3 levels page 2016-04-25 14:47:51 +00:00
rpc kgssapi(4): Fix string overrun in Kerberos principal construction 2016-04-20 04:45:23 +00:00
security sys: use our nitems() macro when param.h is available. 2016-04-21 19:40:10 +00:00
sparc64 Use our nitems() macro when param.h is available. 2016-04-20 15:45:55 +00:00
sys Add a new jail OSD method, PR_METHOD_REMOVE. It's called when a jail is 2016-04-25 04:24:00 +00:00
teken
tests
tools Fix MFS builds when both MD_ROOT_SIZE and MFS_IMAGE are specified 2016-02-02 07:02:51 +00:00
ufs Add FEATURE knob for testing for UFS extended attribute kernel support 2016-04-22 08:09:27 +00:00
vm Cleanup redundant parenthesis from existing howmany()/roundup() macro uses. 2016-04-22 16:57:42 +00:00
x86 sys: use our roundup2/rounddown2() macros when param.h is available. 2016-04-21 19:57:40 +00:00
xdr RPC: for pointers replace 0 with NULL. 2016-04-14 17:06:37 +00:00
xen xenbus: add a comment with the names of the generated accessors 2016-01-15 14:34:31 +00:00
Makefile Add riscv to the list of architectures for cscope. 2016-02-29 16:39:27 +00:00