freebsd-dev/sys
Martin Matuska 2a58b312b6 zfs: merge openzfs/zfs@431083f75
Notable upstream pull request merges:
  #12194 Fix short-lived txg caused by autotrim
  #13368 ZFS_IOC_COUNT_FILLED does unnecessary txg_wait_synced()
  #13392 Implementation of block cloning for ZFS
  #13741 SHA2 reworking and API for iterating over multiple implementations
  #14282 Sync thread should avoid holding the spa config write lock
         when possible
  #14283 txg_sync should handle write errors in ZIL
  #14359 More adaptive ARC eviction
  #14469 Fix NULL pointer dereference in zio_ready()
  #14479 zfs redact fails when dnodesize=auto
  #14496 improve error message of zfs redact
  #14500 Skip memory allocation when compressing holes
  #14501 FreeBSD: don't verify recycled vnode for zfs control directory
  #14502 partially revert PR 14304 (eee9362a7)
  #14509 Fix per-jail zfs.mount_snapshot setting
  #14514 Fix data race between zil_commit() and zil_suspend()
  #14516 System-wide speculative prefetch limit
  #14517 Use rw_tryupgrade() in dmu_bonus_hold_by_dnode()
  #14519 Do not hold spa_config in ZIL while blocked on IO
  #14523 Move dmu_buf_rele() after dsl_dataset_sync_done()
  #14524 Ignore too large stack in case of dsl_deadlist_merge
  #14526 Use .section .rodata instead of .rodata on FreeBSD
  #14528 ICP: AES-GCM: Refactor gcm_clear_ctx()
  #14529 ICP: AES-GCM: Unify gcm_init_ctx() and gmac_init_ctx()
  #14532 Handle unexpected errors in zil_lwb_commit() without ASSERT()
  #14544 icp: Prevent compilers from optimizing away memset()
         in gcm_clear_ctx()
  #14546 Revert zfeature_active() to static
  #14556 Remove bad kmem_free() oversight from previous zfsdev_state_list
         patch
  #14563 Optimize the is_l2cacheable functions
  #14565 FreeBSD: zfs_znode_alloc: lock the vnode earlier
  #14566 FreeBSD: fix false assert in cache_vop_rmdir when replaying ZIL
  #14567 spl: Add cmn_err_once() to log a message only on the first call
  #14568 Fix incremental receive silently failing for recursive sends
  #14569 Restore ASMABI and other Unify work
  #14576 Fix detection of IBM Power8 machines (ISA 2.07)
  #14577 Better handling for future crypto parameters
  #14600 zcommon: Refactor FPU state handling in fletcher4
  #14603 Fix prefetching of indirect blocks while destroying
  #14633 Fixes in persistent error log
  #14639 FreeBSD: Remove extra arc_reduce_target_size() call
  #14641 Additional limits on hole reporting
  #14649 Drop lying to the compiler in the fletcher4 code
  #14652 panic loop when removing slog device
  #14653 Update vdev state for spare vdev
  #14655 Fix cloning into already dirty dbufs
  #14678 Revert "Do not hold spa_config in ZIL while blocked on IO"

Obtained from:	OpenZFS
OpenZFS commit:	431083f75b
2023-04-03 16:49:30 +02:00
..
amd64 netlink: add NETLINK to the DEFAULTS for each architecture 2023-04-02 15:27:21 +00:00
arm netlink: add NETLINK to the DEFAULTS for each architecture 2023-04-02 15:27:21 +00:00
arm64 Fix driver name. 2023-04-03 14:20:28 +00:00
bsm
cam nvme: fix resv commands with nda device 2023-03-27 14:53:24 +02:00
cddl dtrace/powerpc: Remove accidental commented out line 2023-03-13 11:37:40 -04:00
compat linsysfs(4): Reimplement listnics() using ifAPI 2023-04-03 11:22:16 +03:00
conf zfs: merge openzfs/zfs@431083f75 2023-04-03 16:49:30 +02:00
contrib zfs: merge openzfs/zfs@431083f75 2023-04-03 16:49:30 +02:00
crypto OpenSSL: Regen an assembly file for arm 2023-03-21 15:13:51 -04:00
ddb ddb: ansify 2023-02-08 00:09:23 +00:00
dev cxgbe(4): Allow tracing filters on loopback ports. 2023-04-01 17:50:46 -07:00
dts
fs pseudofs: Simplify pfs_visible_proc 2023-04-02 11:24:10 +03:00
gdb
geom graid3: Pre-allocate the timeout event structure 2023-03-30 13:38:15 -04:00
gnu
i386 netlink: add NETLINK to the DEFAULTS for each architecture 2023-04-02 15:27:21 +00:00
isa
kern kdb: Modify securelevel policy 2023-03-30 10:45:00 -04:00
kgssapi nfsd: Enable the NFSD_VNET vnet front end macros 2023-02-18 14:59:36 -08:00
libkern
modules zfs: merge openzfs/zfs@431083f75 2023-04-03 16:49:30 +02:00
net lagg(4): Tap traffic after protocol processing 2023-04-03 01:01:51 +08:00
net80211 net80211: make ieee80211_scan_dump_channels private 2023-03-14 22:17:03 +00:00
netgraph ng_atmllc: remove 2023-03-09 18:04:21 +00:00
netinet carp: allow commands to use interface name rather than index 2023-03-31 11:29:58 +02:00
netinet6 inet6: protect address manipulation with a lock 2023-03-30 08:46:38 +00:00
netipsec ipsec: only update lastused when it changes 2023-02-16 07:33:51 +00:00
netlink netlink: allow exact-match route lookups via RTM_GETROUTE. 2023-04-02 13:47:10 +00:00
netpfil pf: remove pd_refs from pfsync 2023-03-28 01:18:07 +02:00
netsmb
nfs
nfsclient
nfsserver
nlm
ofed ofed: Mechanically convert to IfAPI 2023-03-24 10:04:33 -04:00
opencrypto Complete removal of opt_compat.h 2023-02-13 19:07:38 +03:00
powerpc netlink: add NETLINK to the DEFAULTS for each architecture 2023-04-02 15:27:21 +00:00
riscv netlink: add NETLINK to the DEFAULTS for each architecture 2023-04-02 15:27:21 +00:00
rpc svc_rpcsec_gss.c: Separate out the non-vnet initialization 2023-03-01 15:29:25 -08:00
security kdb: Modify securelevel policy 2023-03-30 10:45:00 -04:00
sys pmc: Add a reminder to maintain documentation. 2023-03-29 10:12:08 +01:00
teken
tests
tools
ufs Improvement in UFS/FFS directory placement when doing mkdir(2). 2023-03-29 21:13:27 -07:00
vm vnode_pager_input: return runningbufspace back 2023-03-26 00:55:29 +02:00
x86 xen/intr: rework xen_intr_resume() for in-place remapping 2023-03-29 09:51:45 +02:00
xdr xdr: ansify 2023-02-13 18:37:31 +00:00
xen xen: switch to using core atomics for synchronization 2023-03-29 09:51:42 +02:00
Makefile
README.md note that some arch independent code can live in dev (e.g. SMBios) 2023-03-03 01:54:07 -08: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.

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