freebsd with flexible iflib nic queues
Go to file
Poul-Henning Kamp 21144e3bf1 Remove B_READ, B_WRITE and B_FREEBUF and replace them with a new
field in struct buf: b_iocmd.  The b_iocmd is enforced to have
exactly one bit set.

B_WRITE was bogusly defined as zero giving rise to obvious coding
mistakes.

Also eliminate the redundant struct buf flag B_CALL, it can just
as efficiently be done by comparing b_iodone to NULL.

Should you get a panic or drop into the debugger, complaining about
"b_iocmd", don't continue.  It is likely to write on your disk
where it should have been reading.

This change is a step in the direction towards a stackable BIO capability.

A lot of this patch were machine generated (Thanks to style(9) compliance!)

Vinum users:  Greg has not had time to test this yet, be careful.
2000-03-20 10:44:49 +00:00
bin Correct confusing description of the -r option. 2000-03-07 20:54:17 +00:00
contrib Merge conflicts 2000-03-19 22:00:57 +00:00
crypto Add a new function stub to libcrypto() which resolves to a symbol in 2000-03-13 09:55:53 +00:00
etc Add and document a NO_X knob to force disabling of X support in doscmd 2000-03-19 09:49:03 +00:00
games Fix typo. 2000-03-09 22:53:13 +00:00
gnu Make the SUBDIR list more granular to assist in my GCC hacking. 2000-03-19 23:47:50 +00:00
include Do not conditionalize function prototype definition for functions we 2000-02-20 07:40:25 +00:00
kerberos5 Point SDIR at ${.CURDIR}/../secure so that ssh and sshd can be found when 2000-03-03 20:37:15 +00:00
kerberosIV Remove the last vestiges of libRSAglue now that it's an empty stub. 2000-03-11 22:34:10 +00:00
lib Make _FindLinkIn() static and only define GetDestPort when 2000-03-19 09:11:05 +00:00
libexec Finally unifdef -DINTERNAL_LS. 2000-03-13 11:20:09 +00:00
release Sigh, it would have been nice but I just can't make the rsaref 2000-03-18 20:14:58 +00:00
sbin Make this compile. This is a hack. 2000-03-20 08:17:34 +00:00
secure Add a new function stub to libcrypto() which resolves to a symbol in 2000-03-13 09:55:53 +00:00
share Use an intermediate file containing the module binary before converting 2000-03-20 01:29:59 +00:00
sys Remove B_READ, B_WRITE and B_FREEBUF and replace them with a new 2000-03-20 10:44:49 +00:00
tools Correct grammar in the synoptic comment. 2000-03-03 09:25:00 +00:00
usr.bin Add a new flag: -E enables "extended" regular expressions. 2000-03-19 19:41:53 +00:00
usr.sbin - This is the second attempt to fix the `-3' option for moused :-) 2000-03-20 10:40:44 +00:00
COPYRIGHT Update to add the July 22, 1999 addendum. 1999-09-05 21:33:47 +00:00
Makefile We have a new world order in libraries. 2000-02-24 23:03:16 +00:00
Makefile.inc1 Buildworld fixes for NO_OPENSSH and NO_OPENSSL 2000-03-09 06:29:05 +00:00
Makefile.upgrade $Id$ -> $FreeBSD$ 1999-08-28 01:35:59 +00:00
README $Id$ -> $FreeBSD$ 1999-08-28 01:35:59 +00:00
UPDATING Add blurb about perl modules needing recompiling. 2000-03-09 07:34:46 +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 and the contents of /etc.  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 with config(8) is a somewhat more involved process,
documentation for which can be found at:
   http://www.freebsd.org/handbook/kernelconfig.html
And in the config(8) man page.

The sample kernel configuration files reside in the sys/i386/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 LINT contains entries for all possible devices, not
just those commonly used, and is meant more as a general reference
than an actual kernel configuration file (a kernel built from it
wouldn't even run).


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

contrib		Packages contributed by 3rd parties.

crypto		Export controlled 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.

kerberosIV	Kerberos package.

lib		System libraries.

libexec		System daemons.

release		Release building Makefile & associated tools.

sbin		System commands.

secure		DES and DES-related utilities - NOT FOR EXPORT!

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/handbook/synching.html