freebsd with flexible iflib nic queues
Go to file
Marcel Moolenaar c3c16fcb7b o Fix the various interrupt related problems caused by reverse
engineering the pending interrupt sources from the current
   state of the controller. For channel A we can always read the
   interrupt pending register (RR3). For channel B we can read
   the interrupt vector register (RR2) because it contains the
   modified vector and thus includes the interrupt source.
   Since we currently need puc(4) for the Z8530, we know that
   the interrupt handler for both channels will be called and
   thus that RR3 will always be read at least once, even if ch A
   has no pending interrupt.
   NOTE: The modified interrupt vector has no value that represent
   a lack of pending interrupt for channel B. That is, the
   value read when no interrupts are pending is the same as the
   value for the special receive condition. Fortunately, we don't
   actually have to depend on that interrupt source. This does
   mean that we need to properly handle the overflow condition,
   when we read received character from the chip.
o  The DSR signal is represented by the SYNC bit in the external
   status register (RR0). We now properly track DSR.
o  It's save to enable the external/status interrupt source. We
   now get interrupts when line signals (DSR, DCD or CTS) change.

Problems fixes:
o  interrupt storms.
o  blocked open(2).
o  lack of (hardware) flow control.
o  unable to report DSR.

MFC after: 5 days
2005-01-30 09:00:50 +00:00
bin Remove unnecessary SRCS= where could be guessed directly by our 2005-01-27 14:52:47 +00:00
contrib MFV: Latest mdoc(7) fixes. 2005-01-25 09:32:56 +00:00
crypto Better Xlist command line. 2004-10-28 16:13:28 +00:00
etc Add a reference to the periodic.conf(5) manual page. 2005-01-24 22:21:13 +00:00
games s/principals/principles/ 2005-01-22 20:00:50 +00:00
gnu More math functions. 2005-01-26 14:23:31 +00:00
include implement AI_NUMERICSERV (as defined in RFC3493). 2005-01-27 14:45:11 +00:00
kerberos5 NODOCCOMPRESS -> NO_DOCCOMPRESS 2004-12-21 09:33:47 +00:00
lib Typo. 2005-01-28 21:14:16 +00:00
libexec Let bsd.prog.mk set SRCS and MAN to their default values. 2005-01-28 16:08:11 +00:00
release Add sysutils/portsnap onto the list of desired packages, since people 2005-01-19 21:06:22 +00:00
rescue Ignoring MAKEFLAGS in rev. 1.15 was a very bad idea. This causes 2005-01-20 10:43:43 +00:00
sbin Let bsd.prog.mk set SRCS and MAN to their default values. 2005-01-28 16:08:11 +00:00
secure Correctly hide the command arguments. 2005-01-17 21:46:13 +00:00
share Start sentences from a capital letter. 2005-01-29 20:05:07 +00:00
sys o Fix the various interrupt related problems caused by reverse 2005-01-30 09:00:50 +00:00
tools Wrap calls to memcpy(3) in a function called block_copy(). This way, 2005-01-28 02:58:32 +00:00
usr.bin Add text about jail root directory as well. 2005-01-30 08:03:20 +00:00
usr.sbin Utilize bsd.files.mk. 2005-01-28 16:22:46 +00:00
COPYRIGHT Complete 2005 transition. 2005-01-01 07:29:20 +00:00
MAINTAINERS Drop hold on patch. ENOTIME for long-stalled ideas here. Too busy elsewhere. 2004-12-29 03:49:58 +00:00
Makefile NOSHARED -> NO_SHARED 2004-12-21 09:59:45 +00:00
Makefile.inc1 In crunchgen(1), when calling make(1), don't redirect stderr to stdout, 2005-01-20 10:49:03 +00:00
README KerberosIV de-orbit burn continues. Disconnect from "make world". 2003-03-08 10:01:26 +00:00
UPDATING Note the deprecation of the abbreviation of a number of ipfw options. 2005-01-15 01:53:49 +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
``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.

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