FreeBSD src
Go to file
Marius Strobl 72021af065 MFC: r201052, r201200, r202003, r202010, r202023
Add a driver for the `Fire' JBus to PCIe bridges found in at least
the Sun Fire V215/V245 and Sun Ultra 25/45 machines. This driver also
already includes all the code to support the `Oberon' Uranus to PCIe
bridges found in the Fujitsu-Siemens based Mx000 machines but due to
lack of access to such a system for testing, probing of these bridges
is currently disabled.
Unfortunately, the event queue mechanism of these bridges for MSIs/
MSI-Xs matches our current MD and MI interrupt frameworks like square
pegs fit into round holes so for now we are generous and use one event
queue per MSI, which limits us to 35 MSIs/MSI-Xs per Host-PCIe-bridge
(we use one event queue for the PCIe error messages). This seems
tolerable as long as most devices just use one MSI/MSI-X anyway.
Adding knowledge about MSIs/MSI-Xs to the MD interrupt code should
allow us to decouple the 1:1 mapping at the cost of no longer being
able to bind MSIs/MSI-Xs to specific CPUs as we currently have no
reliable way to quiesce a device during the transition of its MSIs/
MSI-Xs to another event queue. This would still require the problem
of interrupt storms generated by devices which have no one-shot
behavior or can't/don't mask interrupts while the filter/handler is
executed (like the older PCIe NICs supported by bge(4)) to be solved
though.
2010-01-15 21:45:46 +00:00
bin MFC r201355: sh(1): document ulimit -w (swapuse rlimit). 2010-01-08 14:33:03 +00:00
cddl MFC r201143: 2010-01-11 02:31:00 +00:00
contrib Update to a 26-Nov-2009 release. 2010-01-15 14:20:01 +00:00
crypto MFC r201444: 2010-01-12 07:33:33 +00:00
etc MFC r200440 to stable/8: 2010-01-15 14:24:32 +00:00
games MFC r201626: 2010-01-15 02:55:19 +00:00
gnu MFC r198471. 2009-12-20 02:35:10 +00:00
include MFCs of r197764, r197765, r197766, r197847: 2009-10-31 06:35:40 +00:00
kerberos5 MFC r197995, 198020: 2009-10-16 09:29:06 +00:00
lib MFC: r202159 2010-01-15 19:53:36 +00:00
libexec MFC r199829: 2009-12-17 19:53:16 +00:00
release MFC r200775: 2010-01-04 19:57:35 +00:00
rescue Add the "vnet" and "-vnet" options, to allow moving interfaces between 2009-06-24 18:21:37 +00:00
sbin MFC r201400: 2010-01-05 12:34:16 +00:00
secure MFC 198856: Fix a couple of comment typos. 2009-11-17 15:30:16 +00:00
share MFC: r201007 2010-01-15 16:25:17 +00:00
sys MFC: r201052, r201200, r202003, r202010, r202023 2010-01-15 21:45:46 +00:00
tools MFC r210428: sh: Add a regression test that tries out all arithmetic ops. 2010-01-10 16:58:12 +00:00
usr.bin Update to a 26-Nov-2009 release. 2010-01-15 14:20:01 +00:00
usr.sbin MFH r201051: 2010-01-15 12:02:22 +00:00
COPYRIGHT Happy New Year 2010! :-) 2009-12-31 10:00:49 +00:00
LOCKS Update LOCKS syntax. 2008-06-05 19:47:58 +00:00
MAINTAINERS - pkg_install is maintained by portmgr. 2009-07-06 11:46:18 +00:00
Makefile Add a new world named 'mips' to our universe. 2009-04-01 17:11:50 +00:00
Makefile.inc1 MFC r197995, 198020: 2009-10-16 09:29:06 +00:00
ObsoleteFiles.inc MFC r198538: 2009-12-19 20:50:48 +00:00
README Simply running ``make world'' will bomb unless you dig up the 2006-06-07 03:33:48 +00:00
UPDATING MFC r198859 2009-11-11 02:07:01 +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