opnsense-src/sys
Gleb Smirnoff fa1b961259 krpc: add kernel side client over netlink(4)
This shall be the official transport to connect kernel side RPC clients
to userland side RPC servers.  All current kernel side clients that
hijack unix(4) sockets will be converted to it.  Some implementation
details are available inside new clnt_nl.c.

The complementary RPC server over netlink(4) coming in next commit.

Reviewed by:		rmacklem
Differential Revision:	https://reviews.freebsd.org/D48549
2025-02-01 01:00:25 -08:00
..
amd64 sys: Add cpu_update_pcb hook 2025-01-31 15:40:29 -05:00
arm sys: Add cpu_update_pcb hook 2025-01-31 15:40:29 -05:00
arm64 sys: Add cpu_update_pcb hook 2025-01-31 15:40:29 -05:00
bsm New setcred() system call and associated MAC hooks 2024-12-16 15:42:39 +01:00
cam cam/cd: Add comments about ASC/ASCQ codes 2025-01-26 20:35:20 -07:00
cddl Revert "dtrace/arm64: Simplify dtrace_getarg() slightly" 2025-01-29 03:12:46 +00:00
compat LinnuxKPI: drm2: retire timespec_to_jiffies() 2025-02-01 00:47:30 +00:00
conf krpc: add kernel side client over netlink(4) 2025-02-01 01:00:25 -08:00
contrib rtw88/rtw89: add module_param to enable/disable HT/VHT and EHT 2025-01-31 23:53:31 +00:00
crypto libmd: re-apply masking of _Transform names 2024-09-30 14:59:31 -05:00
ddb proc: Remove kernel stack swapping support, part 6 2024-07-29 01:43:18 +00:00
dev LinnuxKPI: drm2: retire timespec_to_jiffies() 2025-02-01 00:47:30 +00:00
dts dts: Bump the freebsd branding version to 6.12 2025-01-08 10:34:06 +01:00
fs nfsd: Add support for the NFSv4.2 change_attr_type attribute 2025-01-20 13:51:33 -08:00
gdb thread: Remove kernel stack swapping support, part 4 2024-07-29 01:40:22 +00:00
geom gvinum: Remove kernel support 2025-01-23 11:20:42 -05:00
gnu
i386 sys: Add cpu_update_pcb hook 2025-01-31 15:40:29 -05:00
isa Replace calls to bus_generic_attach with bus_attach_children 2024-12-06 17:26:16 -05:00
kern sys: Add cpu_update_pcb hook 2025-01-31 15:40:29 -05:00
kgssapi kgssapi: remove the debug module 2025-01-08 20:00:12 -08:00
libkern include: ssp: round out fortification of current set of headers 2024-07-13 00:16:24 -05:00
modules krpc: add kernel side client over netlink(4) 2025-02-01 01:00:25 -08:00
net iflib: Simplify CACHE_PTR_NEXT 2025-01-31 15:41:45 -05:00
net80211 net80211: Fix a typo in a source code comment 2025-01-26 13:10:14 +01:00
netgraph ng_hci: add support for Bluetooth Secure Simple Pairing 2025-01-27 13:27:28 +00:00
netinet tcp: remove check for condition that never happens 2025-01-31 14:24:24 -08:00
netinet6 ip: Defer checks for an unspecified dstaddr until after pfil hooks 2025-01-16 16:45:16 +00:00
netipsec ipsec: allow it to work with unmapped mbufs 2025-01-13 21:29:32 +02:00
netlink netlink/route: validate family attribute 2025-01-29 15:48:55 -08:00
netpfil pf: remove PFLOGIFS_MAX 2025-01-24 11:20:31 +01:00
netsmb netsmb: Stop checking for failures from malloc(M_WAITOK) 2024-09-03 18:25:20 +08:00
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 sys: make the kernel metadata pointer global 2025-01-24 14:25:51 -07:00
powerpc sys: Add cpu_update_pcb hook 2025-01-31 15:40:29 -05:00
riscv sys: Add cpu_update_pcb hook 2025-01-31 15:40:29 -05:00
rpc krpc: add kernel side client over netlink(4) 2025-02-01 01:00:25 -08:00
security audit: Fix short-circuiting in syscallenter() 2025-01-14 14:19:28 +00:00
sys sys: Add cpu_update_pcb hook 2025-01-31 15:40:29 -05:00
teken Typo: brig(h)tness 2024-09-11 08:35:46 +00:00
tests netlink: use nitems() and roundup(2) from param.h 2024-12-03 12:04:39 -08:00
tools vnode: Make the vop_vector reference a pointer to const 2024-11-26 20:57:54 +00:00
ufs ffs: fix build with GEOM_LABEL and without FFS, e.g. MINIMAL 2025-02-01 01:00:25 -08:00
vm vm: Fix overflow issues in vm_page_startup 2025-01-31 18:37:27 +00:00
x86 mca_log: add missing breaks when handling thresholds 2025-01-29 19:42:18 -08:00
xdr xdr: provide x_putmbuf method for xdrmem 2025-02-01 01:00:25 -08:00
xen x86/xen: Use intended values in HVM_CALLBACK_VECTOR 2024-11-06 15:46:05 +01: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