freebsd kernel with SKQ
Go to file
truckman 21e6787900 The transmit frame status is stored in the last transmit descriptor for the
frame, not the first.  It is probably also not safe to free the mbuf chain
as soon as the OWN bit is cleared on the first descriptor since the chip
may not be done copying the frame into the transmit FIFO.  Revert the part of
of busdma conversion (if_dc.c rev 1.115) which changed dc_txeof() to look for
the status in the first descriptor and free the mbuf chain when processing
the first descriptor for the frame, and revert the matching changes elsewhere
in the driver.  This part of the busdma change caused the driver to report
spurious collisions and output errors, even when running in full-duplex mode.
Reverting the mbuf chain handling slightly complicates dc_dma_map_txbuf(),
since it is responsible for setting the OWN bits on the descriptors, but does
not normally have direct access to the mbuf chain.

Tested by:
  Dejan Lesjak <dejan.lesjak at ijs.si>  alpha/<Intel 21143 10/100BaseTX>
  "Xin LI" <delphij at frontfree.net>    i386/<Macronix 98713 10/100BaseTX>
  Wiktor Niesiobedzki <bsd at w.evip.pl> i386/<3Com OfficeConnect 10/100B>

Reviewed by:	mux
2004-01-08 06:22:15 +00:00
bin Note the Linux required format. 2004-01-06 19:01:34 +00:00
contrib Quick fix for breakage of non-i386 arches in previous commit. Only 2004-01-06 10:38:48 +00:00
crypto Update to reflect changes since the last version. 2004-01-07 11:51:18 +00:00
etc Get moduli from the OpenSSH sources instead of keeping a local copy. 2004-01-07 11:55:44 +00:00
games Add a tip on how to print a manual page. 2004-01-07 19:49:12 +00:00
gnu Correct the atomicity.h fallback path on architectures which do not 2004-01-06 19:20:30 +00:00
include Define _PATH_MKSNAP_FFS and use it in dump(8) instead of assuming 2004-01-04 17:17:46 +00:00
kerberos5 Set RPATH when the Kerberos KDC is linked with the LDAP backend 2003-12-17 16:13:10 +00:00
lib Adjust for brain outage that affected the previous commit. 2004-01-06 20:29:40 +00:00
libexec man ftpd says that "by default, anonymous users cannot modify existing files." 2004-01-07 19:28:31 +00:00
release '+' can also appear in a package file name. 2004-01-02 22:58:29 +00:00
rescue Properly spell make binary as ${MAKE}. 2003-12-24 10:59:33 +00:00
sbin Correct an instance of an erroneous "it's". 2004-01-07 23:31:22 +00:00
secure Previous commit erroneously listed some sources with .o suffixes. 2004-01-07 11:59:52 +00:00
share Correct capitalization. 2004-01-07 23:00:01 +00:00
sys The transmit frame status is stored in the last transmit descriptor for the 2004-01-08 06:22:15 +00:00
tools Add pirtool, a tool for dumping the $PIR table on i386 machines at runtime. 2004-01-06 20:59:49 +00:00
usr.bin Move declarations of Procfd to a header file. 2004-01-07 14:29:45 +00:00
usr.sbin From PR: 2004-01-07 05:28:57 +00:00
COPYRIGHT Update the COPYRIGHT file to include FreeBSD's compilation copyright 2003-12-31 22:35:22 +00:00
MAINTAINERS
Makefile Put on some factor 30+ bikeshed repellent and export the internal 2003-12-09 02:08:19 +00:00
Makefile.inc1 Fix a problem where 'make installworld' will fail and leave the 2003-12-09 00:42:44 +00:00
README
UPDATING Add a note to say that the ACPI module has been turned back on now. 2003-12-15 19:19:16 +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