FreeBSD src
Go to file
Alexander V. Chernikov 2bbab0af6d Use epoch(9) for rtentries to simplify control plane operations.
Currently the only reason of refcounting rtentries is the need to report
 the rtable operation details immediately after the execution.
Delaying rtentry reclamation allows to stop refcounting and simplify the code.
Additionally, this change allows to reimplement rib_lookup_info(), which
 is used by some of the customers to get the matching prefix along
 with nexthops, in more efficient way.

The change keeps per-vnet rtzone uma zone. It adds nh_vnet field to
 nhop_priv to be able to reliably set curvnet even during vnet teardown.
Rest of the reference counting code will be removed in the D24867 .

Differential Revision:	https://reviews.freebsd.org/D24866
2020-05-23 10:21:02 +00:00
bin sh: Remove a comment that was obsoleted by r358152 2020-05-22 14:46:23 +00:00
cddl Restore the binary compatibility for link_map l_addr. 2020-05-21 22:24:23 +00:00
contrib ctime.3: Use ASCII asterisks for C, not special unicode math glyphs 2020-05-22 15:30:14 +00:00
crypto Merge OpenSSL 1.1.1g. 2020-04-21 19:38:32 +00:00
etc Introduce nexthop objects and new routing KPI. 2020-04-12 14:30:00 +00:00
gnu binutils: disconnect objdump from the build 2020-05-06 18:38:40 +00:00
include Implement RTLD_DEEPBIND. 2020-05-15 11:58:01 +00:00
kerberos5 Update Makefile.depend files 2019-12-11 17:37:53 +00:00
lib Implement Solaris-like link_map l_refname member. 2020-05-22 17:52:09 +00:00
libexec Implement Solaris-like link_map l_refname member. 2020-05-22 17:52:09 +00:00
release pkgbase: use -dev,-dbg instead of -development,-debug 2020-05-20 19:45:22 +00:00
rescue rescue: Remove useless linking with libl 2020-03-24 07:08:02 +00:00
sbin Deduplicate fsid comparisons 2020-05-21 01:55:35 +00:00
secure Remove support for SSLv3 from the OpenSSL build. 2020-05-22 16:53:39 +00:00
share Improve support for stream ciphers in the software encryption interface. 2020-05-22 16:29:09 +00:00
stand Fix libstand build breakage after r361298. 2020-05-20 22:25:41 +00:00
sys Use epoch(9) for rtentries to simplify control plane operations. 2020-05-23 10:21:02 +00:00
targets libalias: retire cuseeme support 2020-05-16 02:29:10 +00:00
tests Fix issues with FUSE_ACCESS when default_permissions is disabled 2020-05-22 18:11:17 +00:00
tools Update GNU_DIFF knob descriptions 2020-05-20 17:20:48 +00:00
usr.bin indent(1): add fallthrough markers 2020-05-21 17:34:31 +00:00
usr.sbin Add an unprivileged mode where calls to install are passed appropriate 2020-05-22 17:45:07 +00:00
.arcconfig callsign isn't required anymore 2016-09-29 06:19:45 +00:00
.arclint arc lint: ignore /tests/ in chmod 2017-12-19 03:38:06 +00:00
.cirrus.yml Cirrus-CI: increase timeout to 120m 2020-02-19 15:56:40 +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 Import the kyua testing framework for infrastructure software 2020-03-17 16:56:50 +00:00
COPYRIGHT Happy New Year 2020! 2019-12-31 16:01:36 +00:00
LOCKS LOCKS: update current locks 2018-06-09 03:08:04 +00:00
MAINTAINERS Move all sources from the llvm project into contrib/llvm-project. 2019-12-20 19:53:05 +00:00
Makefile Import bmake-20200517 2020-05-20 19:34:48 +00:00
Makefile.inc1 pkgbase: use -dev,-dbg instead of -development,-debug 2020-05-20 19:45:22 +00:00
Makefile.libcompat Stop building libl and liby 2020-03-26 08:23:09 +00:00
Makefile.sys.inc AUTO_OBJ: For all top-level targets enforce using an OBJDIR. 2017-12-05 21:29:47 +00:00
ObsoleteFiles.inc libalias: retire cuseeme support 2020-05-16 02:29:10 +00:00
README README: add generic notes about GENERIC and NOTES 2018-06-17 19:44:24 +00:00
README.md Update vendor/libarchive/dist to git fc6563f5130d8a7ee1fc27c0e55baef35119f26c 2020-05-20 16:13:02 +00:00
RELNOTES Mention new jail(8) command hooks in RELNOTES 2020-05-19 18:41:46 +00:00
UPDATING UPDATING: Fix the date of the closefrom(2) entry 2020-04-24 12:57:03 +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