1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-11-28 08:02:54 +00:00
Mirror of the FreeBSD src repository https://git.FreeBSD.org/src.git .
Go to file
Alexander Motin 9852972bb5 Several changes breaking netgraph module ABI collected together:
- reorder structures fields (XX_refs) a bit to group fields modified
   same time together. According to my tests it gives up to 10%
   SMP performance benefit on real workload due to reduced inter-CPU
   cache trashing.
 - change q_flags from long to int as long is not really needed there and
   it's usage with atomics is argued by some people.
 - move NGF_WORKQ flag into the separate field q_flags2 as it protected by
   queue mutex instead of node writer protection used by the rest of flags.
 - move nd_work queue entry to ng_queue structure to which it is more
   related and make it STAILQ instead of TAILQ as now it is a classic FIFO.
 - remove q_node pointer from ng_queue structure as it is not really needed.
 - reimplement item queue using STAILQ instead of own equal implementation.
   As soon as BT subsystem has own item queues using ng_item.el_next update
   it also.
 - change depth field in ng_item from uintptr_t to u_int. It was made
   uintptr_t to keep ABI compatibility.

Reviewed by:	julian, emax
Tested with:	Netperf cluster
2008-04-15 21:15:32 +00:00
bin Turn a tab into a space. This fixes a misalignment for ls -l. 2008-04-05 21:26:25 +00:00
cddl Remove options MK_LIBKSE and DEFAULT_THREAD_LIB now that we no longer 2008-03-29 17:44:40 +00:00
contrib system_info.cpustates isn't sparse, so a bitmask of available CPU states 2008-04-11 11:39:26 +00:00
crypto
etc Declare _ppp_profile_cleaned, _punct, and _punct_c local in 2008-04-10 01:32:49 +00:00
games Put back the quote from Chinggis Khan removed in rev. 1.259. 2008-04-03 10:22:56 +00:00
gnu Change kgdb_parse() to use wrapped versions of parse_expression() and 2008-03-29 17:46:03 +00:00
include Add the restrict qualifiers to the pointer arguments of the readlinkat. 2008-04-10 12:13:56 +00:00
kerberos5
lib Implement POSIX function tcgetsid() which returns session id. 2008-04-15 08:33:32 +00:00
libexec MFp4: Add mips support for dynamic linking. 2008-04-04 20:59:26 +00:00
release Increase the size of the EFI system partition from 16M to 20M. 2008-04-08 02:57:59 +00:00
rescue Adding glabel alias killed gpart alias; fix it. 2008-03-29 13:15:33 +00:00
sbin restore(8) does not check for write failure while building two temp 2008-04-14 20:15:53 +00:00
secure
share LK_NOWITNESS can be used now in lockmgr*() functions in order to skip 2008-04-12 20:18:02 +00:00
sys Several changes breaking netgraph module ABI collected together: 2008-04-15 21:15:32 +00:00
tools Updates for changes in the way printf() handles hex floating point 2008-04-12 03:11:56 +00:00
usr.bin system_info.cpustates isn't sparse, so a bitmask of available CPU states 2008-04-11 11:39:26 +00:00
usr.sbin If the .inf file did not have a Default entry for the registry key then write 2008-04-15 04:44:32 +00:00
COPYRIGHT
LOCKS
MAINTAINERS
Makefile Double up the necessary size of /usr/obj to 800MB 2008-03-31 13:32:55 +00:00
Makefile.inc1 Bootstrap the build of btxld. 2008-04-15 05:14:42 +00:00
ObsoleteFiles.inc Add pkg_check and pkg_sign to ObsoleteFiles.inc 2008-04-01 11:05:26 +00:00
README
UPDATING - Add write(2) support for psm(4) in native operation level. Now arbitrary 2008-04-08 17:55:26 +00:00

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

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, the most
commonly used one being ``world'', which rebuilds and installs
everything in the FreeBSD system from the source tree except the
kernel, the kernel-modules and the contents of /etc.  The ``world''
target should only be used in cases where the source tree has not
changed from the currently running version.  See:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html
for more information, including setting make(1) variables.

The ``buildkernel'' and ``installkernel'' targets build and install
the kernel and the modules (see below).  Please see the top of
the Makefile in this directory for more information on the
standard build targets and compile-time flags.

Building a kernel is a somewhat more involved process, documentation
for which can be found at:
   http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html
And in the config(8) man page.
Note: If you want to build and install the kernel with the
``buildkernel'' and ``installkernel'' targets, you might need to build
world before.  More information is available in the handbook.

The sample kernel configuration files reside in the sys/<arch>/conf
sub-directory (assuming that you've installed the kernel sources), the
file named GENERIC being the one used to build your initial installation
kernel.  The file NOTES contains entries and documentation for all possible
devices, not just those commonly used.  It is the successor of the ancient
LINT file, but in contrast to LINT, it is not buildable as a kernel but a
pure reference and documentation file.


Source Roadmap:
---------------
bin		System/user commands.

contrib		Packages contributed by 3rd parties.

crypto		Cryptography stuff (see crypto/README).

etc		Template files for /etc.

games		Amusements.

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.

sys		Kernel sources.

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:

  http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/synching.html