1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-01 08:27:59 +00:00
freebsd/sys
Bojan Novković ddc09a10ea pmap_growkernel: Use VM_ALLOC_NOFREE when allocating pagetable pages
This patch modifies pmap_growkernel in all pmaps to use VM_ALLOC_NOFREE
when allocating new pagetable pages. This should help reduce longterm
fragmentation as these pages are never released after
they are allocated.

Differential Revision:	https://reviews.freebsd.org/D45998
Reviewed by:	alc, markj, kib, mhorne
Tested by:	alc
2024-07-30 17:38:24 +02:00
..
amd64 pmap_growkernel: Use VM_ALLOC_NOFREE when allocating pagetable pages 2024-07-30 17:38:24 +02:00
arm pmap_growkernel: Use VM_ALLOC_NOFREE when allocating pagetable pages 2024-07-30 17:38:24 +02:00
arm64 pmap_growkernel: Use VM_ALLOC_NOFREE when allocating pagetable pages 2024-07-30 17:38:24 +02:00
bsm
cam proc: Remove kernel stack swapping support, part 7 2024-07-29 01:43:49 +00:00
cddl vm: Remove kernel stack swapping support, part 3 2024-07-29 01:39:49 +00:00
compat sleepqueue: Remove kernel stack swapping support, part 10 2024-07-29 01:43:59 +00:00
conf mlx5en: add IPSEC_OFFLOAD support 2024-07-30 18:00:04 +03:00
contrib zdb: Fix printf formatting of a uint64_t 2024-07-18 10:52:52 -04:00
crypto siphash: minor improvements to siphash unit test 2024-07-29 14:44:41 -06:00
ddb proc: Remove kernel stack swapping support, part 6 2024-07-29 01:43:18 +00:00
dev mlx5en: limit reporting eeprom read failure due to unplugged module to verboseboot 2024-07-30 18:00:04 +03:00
dts dts: Fix arm/qcom-ipq4018-rt-ac58u.dts for recent device-tree versions 2024-07-17 13:55:49 +01:00
fs proc: Remove kernel stack swapping support, part 6 2024-07-29 01:43:18 +00:00
gdb thread: Remove kernel stack swapping support, part 4 2024-07-29 01:40:22 +00:00
geom
gnu
i386 pmap_growkernel: Use VM_ALLOC_NOFREE when allocating pagetable pages 2024-07-30 17:38:24 +02:00
isa newbus: replace -1 in BUS_ADD_CHILD(...-1) with DEVICE_UNIT_ANY 2024-07-24 22:23:02 -06:00
kern ithread: Improve synchronization in ithread_destroy() 2024-07-30 14:37:32 +00:00
kgssapi
libkern include: ssp: round out fortification of current set of headers 2024-07-13 00:16:24 -05:00
modules mlx5en: add IPSEC_OFFLOAD support 2024-07-30 18:00:04 +03:00
net netisr: avoid ffs(0) 2024-07-26 11:51:17 -05:00
net80211 net80211: scan/internal: change boolean argument from int to bool 2024-07-26 11:07:39 +00:00
netgraph bluetooth socket sysinit: correct memset initialization 2024-07-01 08:22:31 -07:00
netinet Revert "udp: improve handling of cached route" 2024-07-30 11:46:27 +02:00
netinet6 Revert "udp: improve handling of cached route" 2024-07-30 11:46:27 +02:00
netipsec ipsec_offload: indirect two more functions on the ipsec.ko module load 2024-07-30 17:59:49 +03:00
netlink netinet: correct SIOCDIFADDR{,_IN6} calls to use {,in6_}ifreq 2024-07-22 14:17:21 +00:00
netpfil pf: allow MLD LR to be sent without state 2024-07-29 19:42:26 +02:00
netsmb
nfs
nfsclient
nfsserver
nlm
ofed LinuxKPI: Remove owner argument from class_create function on KBI layer 2024-07-21 16:09:58 +03:00
opencrypto ktls: Remove the socket parameter to ktls_ocf_try() 2024-07-08 12:10:48 -04:00
powerpc pmap_growkernel: Use VM_ALLOC_NOFREE when allocating pagetable pages 2024-07-30 17:38:24 +02:00
riscv pmap_growkernel: Use VM_ALLOC_NOFREE when allocating pagetable pages 2024-07-30 17:38:24 +02:00
rpc
security
sys malloc(9): Introduce M_NEVERFREED 2024-07-30 17:38:18 +02:00
teken Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
tests
tools
ufs proc: Remove kernel stack swapping support, part 7 2024-07-29 01:43:49 +00:00
vm vm: Add a KVA arena for M_NEVERFREED allocations 2024-07-30 17:38:24 +02:00
x86 x86/xen: use UNUSABLE e820 regions for external mappings 2024-07-30 09:41:17 +02:00
xdr
xen xen: introduce a per-arch scratch mapping ranges 2024-07-30 09:39:38 +02:00
Makefile sys: Index netlink/ files with the cscope target 2024-07-22 09:50:43 +00:00
README.md man filesystems: fix more xrefs after move to s4 2024-06-27 18:32:05 -06:00

FreeBSD Kernel Source:

This directory contains the source files and build glue that make up the FreeBSD kernel and its modules, including both original and contributed software.

Kernel configuration files are located in the conf/ subdirectory of each architecture. GENERIC is the configuration used in release builds. NOTES contains documentation of all possible entries. LINT is a compile-only configuration used to maximize build coverage and detect regressions.

Documentation:

Source code documentation is maintained in a set of man pages, under section 9. These pages are located in share/man/man9, from the top-level of the src tree. Consult intro(9) for an overview of existing pages.

Some additional high-level documentation of the kernel is maintained in the Architecture Handbook.

Source Roadmap:

Directory Description
amd64 AMD64 (64-bit x86) architecture support
arm 32-bit ARM architecture support
arm64 64-bit ARM (AArch64) architecture support
cam Common Access Method storage subsystem - cam(4) and ctl(4)
cddl CDDL-licensed optional sources such as DTrace
conf kernel build glue
compat Linux compatibility layer, FreeBSD 32-bit compatibility
contrib 3rd-party imported software such as OpenZFS
crypto crypto drivers
ddb interactive kernel debugger - ddb(4)
fs most filesystems, excluding UFS, NFS, and ZFS
dev device drivers and other arch independent code
gdb kernel remote GDB stub - gdb(4)
geom GEOM framework - geom(4)
i386 i386 (32-bit x86) architecture support
kern main part of the kernel
libkern libc-like and other support functions for kernel use
modules kernel module infrastructure
net core networking code
net80211 wireless networking (IEEE 802.11) - net80211(4)
netgraph graph-based networking subsystem - netgraph(4)
netinet IPv4 protocol implementation - inet(4)
netinet6 IPv6 protocol implementation - inet6(4)
netipsec IPsec protocol implementation - ipsec(4)
netpfil packet filters - ipfw(4), pf(4), and ipfilter(4)
opencrypto OpenCrypto framework - crypto(7)
powerpc PowerPC/POWER (32 and 64-bit) architecture support
riscv 64-bit RISC-V architecture support
security security facilities - audit(4) and mac(4)
sys kernel headers
tests kernel unit tests
ufs Unix File System - ffs(4)
vm virtual memory system
x86 code shared by AMD64 and i386 architectures