freebsd-dev/sys
Bjoern A. Zeeb 1dcd1a5392 LinuxKPI: implement get_random_u32_inclusive()
Implementation of get_random_u32_inclusive().
This is needed by an update for wireless drivers.

Sponsored by:	The FreeBSD Foundation
MFC after:	10 days
Differential Revision: https://reviews.freebsd.org/D40121
2023-08-07 00:52:41 +00:00
..
amd64 amd64: Increase sanitizers' static shadow memory reservation 2023-08-04 12:38:24 -04:00
arm Limit the number of CPUs in the gicv1/2 driver 2023-08-04 18:47:47 +01:00
arm64 linux(4): Regen for ioprio syscalls 2023-08-04 16:03:57 +03:00
bsm
cam cam(4): Fix a typo in a source code comment 2023-08-02 11:14:53 +02:00
cddl kinst.h: make pointer to probe in kinst_cpu_state const 2023-07-19 19:57:44 +03:00
compat LinuxKPI: implement get_random_u32_inclusive() 2023-08-07 00:52:41 +00:00
conf iflib(9): Remove support for cloning pseudo interfaces 2023-08-03 23:10:18 +02:00
contrib zfs: set autotrim default to 'off' 2023-07-18 11:20:11 +02:00
crypto
ddb ddb: Rework macros to make it easier to add new command tables. 2023-07-05 16:02:01 -07:00
dev acpi_spibus.c: fix i386 build 2023-08-07 00:09:52 +03:00
dts
fs cd9660: Reject volumes with small logical block sizes 2023-08-04 16:41:50 -07:00
gdb
geom g_raid concat: Fail requests to read beyond the end of the volume 2023-08-04 16:41:05 -07:00
gnu
i386 linux(4): Regen for ioprio syscalls 2023-08-04 16:03:57 +03:00
isa isa_common: find next bit faster 2023-07-31 21:02:56 -05:00
kern exit1(): Revert sparc64 workaround 2023-08-06 22:26:01 +02:00
kgssapi
libkern gsb_crc32: Fix a warning when compiled in userland. 2023-07-31 13:24:18 -07:00
modules iflib(9): Remove support for cloning pseudo interfaces 2023-08-03 23:10:18 +02:00
net iflib(9): Remove support for cloning pseudo interfaces 2023-08-03 23:10:18 +02:00
net80211
netgraph
netinet sctp: improve consistency 2023-08-05 11:29:23 +02:00
netinet6 frag6: Avoid a possible integer overflow in fragment handling 2023-08-01 15:45:41 -04:00
netipsec
netlink
netpfil pf: handle multiple IPv6 fragment headers 2023-08-04 15:23:49 +02:00
netsmb netsmb: Add bounds checking to smb_t2_placedata 2023-08-04 16:42:41 -07:00
nfs
nfsclient
nfsserver
nlm
ofed
opencrypto opencrypto: Respect alignment constraints in xor_and_encrypt() 2023-07-27 15:44:52 -04:00
powerpc Consistently provide ffs/fls using builtins 2023-07-06 14:46:41 -03:00
riscv pcpu: Remove unused definitions of ALT_STACK_SIZE 2023-07-27 16:02:03 -04:00
rpc
security mac_ipacl: new MAC policy module to limit jail/vnet IP configuration 2023-07-26 00:07:57 +00:00
sys sys/cdefs.h: fix for use __restrict in C++ 2023-08-07 00:09:52 +03:00
teken
tests
tools Pre-quote macros passed to .incbin to avoid unwanted substitution 2023-07-28 05:08:43 +01:00
ufs UFS/FFS: Migrate to modern uintXX_t from u_intXX_t. 2023-07-27 15:27:36 -07:00
vm vm_phys: tune vm_phys_enqueue_contig loop 2023-08-04 21:09:39 -05:00
x86 x86: remove intr_bind 2023-08-03 17:01:56 -04:00
xdr
xen xen: move vcpu_info to common, leave hook for setup 2023-07-21 10:59:12 +02:00
Makefile
README.md sys/README.md: Add a section for documentation 2023-08-03 11:07:41 -03: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(7)
vm virtual memory system
x86 code shared by AMD64 and i386 architectures