FreeBSD src
Go to file
Andriy Gapon cf78c4beae ZFS: add emulation of atomic_swap_64 and atomic_load_64
Some 32-bit platforms do not provide 64-bit atomic operations that ZFS
requires, either in userland or at all.  We emulate those operations for
those platforms using a mutex.  That is not entirely correct and it's
very efficient.  Besides, the loads are plain loads, so torn values are
possible.

Nevertheless, the emulation seems to work for some definition of work.

This change adds atomic_swap_64, which is already used in ZFS code, and
atomic_load_64 that can be used to prevent torn reads.

MFC after:	1 week
2019-10-07 07:54:34 +00:00
bin Add iflag=fullblock to dd 2019-09-30 22:00:48 +00:00
cddl ZFS: add bookmark renaming 2019-10-03 11:08:45 +00:00
contrib Pull in r357528 from upstream llvm trunk (by Craig Topper): 2019-09-30 19:24:21 +00:00
crypto Merge OpenSSL 1.1.1d. 2019-09-10 21:08:17 +00:00
etc [1/3] Initial infrastructure for SSL root bundle in base 2019-10-02 01:05:29 +00:00
gnu Get the readline header from the installed header instead of the from the source 2019-09-12 15:50:14 +00:00
include Import OpenSSL 1.1.1d. 2019-09-10 17:40:53 +00:00
kerberos5 Fix generation of krb5-config with LC_CTYPE=*.UTF-8 2019-07-01 11:47:45 +00:00
lib Re-add ALLOW_MIPS_SHARED_TEXTREL, sprinkle it around 2019-10-06 04:19:49 +00:00
libexec Add rcvar back to the linux rc script. Without it it was enabled 2019-10-03 16:38:44 +00:00
release Switch EC2 AMIs from using the dual-dhclient script to using the new 2019-10-02 21:35:39 +00:00
rescue Remove unused defines since r147075 2019-07-12 04:44:50 +00:00
sbin add ability to set watchdog timeout for a shutdown 2019-10-03 11:23:10 +00:00
secure caroot: commit initial bundle 2019-10-04 02:34:20 +00:00
share Re-add ALLOW_MIPS_SHARED_TEXTREL, sprinkle it around 2019-10-06 04:19:49 +00:00
stand Revert r352557: powerpc/loader: Install ubldr without stripping 2019-10-07 03:28:11 +00:00
sys ZFS: add emulation of atomic_swap_64 and atomic_load_64 2019-10-07 07:54:34 +00:00
targets - Retire pc-sysinstall(8) 2019-09-03 19:42:04 +00:00
tests ZFS: fix several of the "zpool create" tests 2019-10-05 03:19:53 +00:00
tools Mark "private use area" characters as printable. 2019-10-05 22:17:54 +00:00
usr.bin tftp: fix two minor Coverity CIDs 2019-10-03 20:22:25 +00:00
usr.sbin certctl(8): let one blacklist based on hashed filenames 2019-10-03 20:45:52 +00:00
.arcconfig
.arclint
.cirrus.yml Update vendor/libarchive/dist to git 2f3033ca23f8c21160506c3c7ac8a0df0d3fde42 2019-09-26 01:42:09 +00:00
.clang-format Add a basic clang-format configuration file 2019-06-07 15:23:52 +00:00
.gitattributes Add a basic clang-format configuration file 2019-06-07 15:23:52 +00:00
.gitignore .gitignore: Add LINT kernel configurations generated into SRCDIR 2019-08-10 18:22:22 +00:00
COPYRIGHT Happy New Year 2019! 2019-01-01 00:25:25 +00:00
LOCKS
MAINTAINERS [skip ci] Add me to MAINTAINERS for fusefs 2019-07-28 15:20:47 +00:00
Makefile Add a top-level makeman target 2019-10-01 15:10:35 +00:00
Makefile.inc1 Add a top-level makeman target 2019-10-01 15:10:35 +00:00
Makefile.libcompat libsysdecode: use the proper include directory 2019-07-25 17:10:17 +00:00
Makefile.sys.inc
ObsoleteFiles.inc ZFS: fix several of the "zpool create" tests 2019-10-05 03:19:53 +00:00
README Import OpenSSL 1.1.1d. 2019-09-10 17:40:53 +00:00
README.md
RELNOTES RELNOTES: Document r352668 (crontab -n and -q options) 2019-09-25 13:04:34 +00:00
UPDATING Remove white-space at EOL. 2019-10-03 14:52:25 +00:00

FreeBSD Source:

This is the top level of the FreeBSD source directory. This file was last revised on: FreeBSD

FreeBSD is an operating system used to power modern servers, desktops, and embedded platforms. A large community has continually developed it for more than thirty years. Its advanced networking, security, and storage features have made FreeBSD the platform of choice for many of the busiest web sites and most pervasive embedded networking and storage devices.

For copyright information, please see the file COPYRIGHT in this directory. Additional copyright information also exists for some sources in this tree - please see the specific source directories for more information.

The Makefile in this directory supports a number of targets for building components (or all) of the FreeBSD source tree. See build(7), config(8), https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html, and https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html for more information, including setting make(1) variables.

Source Roadmap:

bin		System/user commands.

cddl		Various commands and libraries under the Common Development
		and Distribution License.

contrib		Packages contributed by 3rd parties.

crypto		Cryptography stuff (see crypto/README).

etc		Template files for /etc.

gnu		Various commands and libraries under the GNU Public License.
		Please see gnu/COPYING* for more information.

include		System include files.

kerberos5	Kerberos5 (Heimdal) package.

lib		System libraries.

libexec		System daemons.

release		Release building Makefile & associated tools.

rescue		Build system for statically linked /rescue utilities.

sbin		System commands.

secure		Cryptographic libraries and commands.

share		Shared resources.

stand		Boot loader sources.

sys		Kernel sources.

sys/<arch>/conf Kernel configuration files. GENERIC is the configuration
		used in release builds. NOTES contains documentation of
		all possible entries.

tests		Regression tests which can be run by Kyua.  See tests/README
		for additional information.

tools		Utilities for regression testing and miscellaneous tasks.

usr.bin		User commands.

usr.sbin	System administration commands.

For information on synchronizing your source tree with one or more of the FreeBSD Project's development branches, please see:

https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/current-stable.html