History log of /freebsd-10.0-release/sys/modules/
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
259128 09-Dec-2013 gjb

Remove svn:mergeinfo from the releng/10.0 branch.

After branch creation from stable/10, the stable/10 branch mergeinfo
was moved to the root of the branch.

Since there have not been any merges from stable/10 to releng/10.0
yet, we do not need to track any of the existing mergeinfo here.

Merges to releng/10.0 should now be done to the root of the branch.

For future branches during the release cycle, unless otherwise noted,
this change will be done as part of the stable/ and releng/ branch
creation.

Discussed with: peter
Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


/freebsd-10.0-release/MAINTAINERS
/freebsd-10.0-release/Makefile.inc1
/freebsd-10.0-release/ObsoleteFiles.inc
/freebsd-10.0-release/UPDATING
/freebsd-10.0-release/bin/df
/freebsd-10.0-release/bin/freebsd-version
/freebsd-10.0-release/cddl
/freebsd-10.0-release/cddl/contrib/opensolaris
/freebsd-10.0-release/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print
/freebsd-10.0-release/cddl/contrib/opensolaris/cmd/zfs
/freebsd-10.0-release/cddl/contrib/opensolaris/lib/libzfs
/freebsd-10.0-release/contrib/apr
/freebsd-10.0-release/contrib/apr-util
/freebsd-10.0-release/contrib/atf
/freebsd-10.0-release/contrib/binutils
/freebsd-10.0-release/contrib/bmake
/freebsd-10.0-release/contrib/byacc
/freebsd-10.0-release/contrib/bzip2
/freebsd-10.0-release/contrib/com_err
/freebsd-10.0-release/contrib/compiler-rt
/freebsd-10.0-release/contrib/dialog
/freebsd-10.0-release/contrib/dtc
/freebsd-10.0-release/contrib/ee
/freebsd-10.0-release/contrib/expat
/freebsd-10.0-release/contrib/file
/freebsd-10.0-release/contrib/gcc
/freebsd-10.0-release/contrib/gdb
/freebsd-10.0-release/contrib/gdtoa
/freebsd-10.0-release/contrib/groff
/freebsd-10.0-release/contrib/ipfilter
/freebsd-10.0-release/contrib/ipfilter/ml_ipl.c
/freebsd-10.0-release/contrib/ipfilter/mlfk_ipl.c
/freebsd-10.0-release/contrib/ipfilter/mlh_rule.c
/freebsd-10.0-release/contrib/ipfilter/mli_ipl.c
/freebsd-10.0-release/contrib/ipfilter/mln_ipl.c
/freebsd-10.0-release/contrib/ipfilter/mls_ipl.c
/freebsd-10.0-release/contrib/ldns
/freebsd-10.0-release/contrib/less
/freebsd-10.0-release/contrib/libarchive
/freebsd-10.0-release/contrib/libarchive/cpio
/freebsd-10.0-release/contrib/libarchive/libarchive
/freebsd-10.0-release/contrib/libarchive/libarchive_fe
/freebsd-10.0-release/contrib/libarchive/tar
/freebsd-10.0-release/contrib/libc++
/freebsd-10.0-release/contrib/libc-vis
/freebsd-10.0-release/contrib/libcxxrt
/freebsd-10.0-release/contrib/libexecinfo
/freebsd-10.0-release/contrib/libpcap
/freebsd-10.0-release/contrib/libstdc++
/freebsd-10.0-release/contrib/llvm
/freebsd-10.0-release/contrib/llvm/tools/clang
/freebsd-10.0-release/contrib/mtree
/freebsd-10.0-release/contrib/ncurses
/freebsd-10.0-release/contrib/netcat
/freebsd-10.0-release/contrib/ntp
/freebsd-10.0-release/contrib/nvi
/freebsd-10.0-release/contrib/one-true-awk
/freebsd-10.0-release/contrib/openbsm
/freebsd-10.0-release/contrib/openpam
/freebsd-10.0-release/contrib/openresolv
/freebsd-10.0-release/contrib/pf
/freebsd-10.0-release/contrib/sendmail
/freebsd-10.0-release/contrib/serf
/freebsd-10.0-release/contrib/smbfs
/freebsd-10.0-release/contrib/subversion
/freebsd-10.0-release/contrib/tcpdump
/freebsd-10.0-release/contrib/tcsh
/freebsd-10.0-release/contrib/tnftp
/freebsd-10.0-release/contrib/top
/freebsd-10.0-release/contrib/top/install-sh
/freebsd-10.0-release/contrib/tzcode/stdtime
/freebsd-10.0-release/contrib/tzcode/zic
/freebsd-10.0-release/contrib/tzdata
/freebsd-10.0-release/contrib/unbound
/freebsd-10.0-release/contrib/wpa
/freebsd-10.0-release/contrib/xz
/freebsd-10.0-release/crypto/heimdal
/freebsd-10.0-release/crypto/openssh
/freebsd-10.0-release/crypto/openssl
/freebsd-10.0-release/etc
/freebsd-10.0-release/etc/rc.d
/freebsd-10.0-release/gnu/lib
/freebsd-10.0-release/gnu/usr.bin/binutils
/freebsd-10.0-release/gnu/usr.bin/cc/cc_tools
/freebsd-10.0-release/gnu/usr.bin/gdb
/freebsd-10.0-release/include
/freebsd-10.0-release/lib
/freebsd-10.0-release/lib/libc
/freebsd-10.0-release/lib/libc/stdtime
/freebsd-10.0-release/lib/libc_nonshared
/freebsd-10.0-release/lib/libfetch
/freebsd-10.0-release/lib/libiconv_modules
/freebsd-10.0-release/lib/libsmb
/freebsd-10.0-release/lib/libthr
/freebsd-10.0-release/lib/libutil
/freebsd-10.0-release/lib/libvmmapi
/freebsd-10.0-release/lib/libyaml
/freebsd-10.0-release/lib/libz
/freebsd-10.0-release/release
/freebsd-10.0-release/release/doc
/freebsd-10.0-release/sbin
/freebsd-10.0-release/sbin/camcontrol
/freebsd-10.0-release/sbin/dumpon
/freebsd-10.0-release/sbin/hastd
/freebsd-10.0-release/sbin/ifconfig
/freebsd-10.0-release/sbin/ipfw
/freebsd-10.0-release/sbin/nvmecontrol
/freebsd-10.0-release/share
/freebsd-10.0-release/share/examples/bhyve
/freebsd-10.0-release/share/i18n/csmapper/JIS
/freebsd-10.0-release/share/i18n/esdb/EUC
/freebsd-10.0-release/share/man
/freebsd-10.0-release/share/man/man4
/freebsd-10.0-release/share/man/man4/bhyve.4
/freebsd-10.0-release/share/man/man5
/freebsd-10.0-release/share/man/man7
/freebsd-10.0-release/share/man/man8
/freebsd-10.0-release/share/misc
/freebsd-10.0-release/share/mk
/freebsd-10.0-release/share/mk/bsd.arch.inc.mk
/freebsd-10.0-release/share/syscons
/freebsd-10.0-release/share/zoneinfo
/freebsd-10.0-release/sys
/freebsd-10.0-release/sys/amd64/include/vmm.h
/freebsd-10.0-release/sys/amd64/include/vmm_dev.h
/freebsd-10.0-release/sys/amd64/include/vmm_instruction_emul.h
/freebsd-10.0-release/sys/amd64/include/xen
/freebsd-10.0-release/sys/amd64/vmm
/freebsd-10.0-release/sys/boot
/freebsd-10.0-release/sys/boot/i386/efi
/freebsd-10.0-release/sys/boot/ia64/efi
/freebsd-10.0-release/sys/boot/ia64/ski
/freebsd-10.0-release/sys/boot/powerpc/boot1.chrp
/freebsd-10.0-release/sys/boot/powerpc/ofw
/freebsd-10.0-release/sys/cddl/contrib/opensolaris
/freebsd-10.0-release/sys/conf
/freebsd-10.0-release/sys/contrib/dev/acpica
/freebsd-10.0-release/sys/contrib/dev/acpica/changes.txt
/freebsd-10.0-release/sys/contrib/dev/acpica/common
/freebsd-10.0-release/sys/contrib/dev/acpica/compiler
/freebsd-10.0-release/sys/contrib/dev/acpica/components/debugger
/freebsd-10.0-release/sys/contrib/dev/acpica/components/disassembler
/freebsd-10.0-release/sys/contrib/dev/acpica/components/dispatcher
/freebsd-10.0-release/sys/contrib/dev/acpica/components/events
/freebsd-10.0-release/sys/contrib/dev/acpica/components/executer
/freebsd-10.0-release/sys/contrib/dev/acpica/components/hardware
/freebsd-10.0-release/sys/contrib/dev/acpica/components/namespace
/freebsd-10.0-release/sys/contrib/dev/acpica/components/parser
/freebsd-10.0-release/sys/contrib/dev/acpica/components/resources
/freebsd-10.0-release/sys/contrib/dev/acpica/components/tables
/freebsd-10.0-release/sys/contrib/dev/acpica/components/utilities
/freebsd-10.0-release/sys/contrib/dev/acpica/include
/freebsd-10.0-release/sys/contrib/dev/acpica/os_specific
/freebsd-10.0-release/sys/contrib/ipfilter
/freebsd-10.0-release/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c
/freebsd-10.0-release/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c
/freebsd-10.0-release/sys/contrib/libfdt
/freebsd-10.0-release/sys/contrib/octeon-sdk
/freebsd-10.0-release/sys/contrib/x86emu
/freebsd-10.0-release/sys/dev/bvm
/freebsd-10.0-release/sys/dev/fdt/fdt_ic_if.m
/freebsd-10.0-release/sys/dev/hyperv
hyperv
vmm
/freebsd-10.0-release/sys/x86/include/acpica_machdep.h
/freebsd-10.0-release/tools
/freebsd-10.0-release/tools/build
/freebsd-10.0-release/tools/build/options
/freebsd-10.0-release/tools/tools/atsectl
/freebsd-10.0-release/usr.bin/calendar
/freebsd-10.0-release/usr.bin/csup
/freebsd-10.0-release/usr.bin/iscsictl
/freebsd-10.0-release/usr.bin/procstat
/freebsd-10.0-release/usr.sbin
/freebsd-10.0-release/usr.sbin/bhyve
/freebsd-10.0-release/usr.sbin/bhyvectl
/freebsd-10.0-release/usr.sbin/bhyveload
/freebsd-10.0-release/usr.sbin/bsdconfig
/freebsd-10.0-release/usr.sbin/bsdinstall
/freebsd-10.0-release/usr.sbin/ctladm
/freebsd-10.0-release/usr.sbin/ctld
/freebsd-10.0-release/usr.sbin/freebsd-update
/freebsd-10.0-release/usr.sbin/jail
/freebsd-10.0-release/usr.sbin/mergemaster
/freebsd-10.0-release/usr.sbin/mount_smbfs
/freebsd-10.0-release/usr.sbin/ndiscvt
/freebsd-10.0-release/usr.sbin/pkg
/freebsd-10.0-release/usr.sbin/rtadvctl
/freebsd-10.0-release/usr.sbin/rtadvd
/freebsd-10.0-release/usr.sbin/rtsold
/freebsd-10.0-release/usr.sbin/zic
259065 07-Dec-2013 gjb

- Copy stable/10 (r259064) to releng/10.0 as part of the
10.0-RELEASE cycle.
- Update __FreeBSD_version [1]
- Set branch name to -RC1

[1] 10.0-CURRENT __FreeBSD_version value ended at '55', so
start releng/10.0 at '100' so the branch is started with
a value ending in zero.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

259051 06-Dec-2013 delphij

MFC r258948:

Support Hyper-V on i386:

- Add 'hyperv' module into build;
- Allow building Hyper-V support as part of the kernel;
- Hook Hyper-V build into NOTES.

Approved by: re (rodrigc)


256820 21-Oct-2013 np

MFC r256467:

Delete all of the old RDMA code (except krping, which was switched to
use sys/ofed some time back). This has been sitting around as dead code
in the tree for a very long time.

Approved by: re (hrs)


256819 21-Oct-2013 np

MFC r256694, r256713, r256714.

r256694:
iw_cxgbe: iWARP driver for Chelsio T4/T5 chips. This is a straight port
of the iw_cxgb4 found in OFED distributions.

r256713:
iw_cxgbe should have a dependency on t4nex.

r256714:
Fix typo in previous commit.

Approved by: re (hrs)


256791 20-Oct-2013 np

MFC r256459.

cxgbe(4): Update T4 and T5 firmwares to 1.9.12.0

Approved by: re (glebius)


256449 14-Oct-2013 markm

MFC: Add extra files to the KLD random.ko module to allow it to load.

Approved by: re (kib)


256381 12-Oct-2013 markm

Merge from project branch via main. Uninteresting commits are trimmed.

Refactor of /dev/random device. Main points include:

* Userland seeding is no longer used. This auto-seeds at boot time
on PC/Desktop setups; this may need some tweeking and intelligence
from those folks setting up embedded boxes, but the work is believed
to be minimal.

* An entropy cache is written to /entropy (even during installation)
and the kernel uses this at next boot.

* An entropy file written to /boot/entropy can be loaded by loader(8)

* Hardware sources such as rdrand are fed into Yarrow, and are no
longer available raw.

------------------------------------------------------------------------
r256240 | des | 2013-10-09 21:14:16 +0100 (Wed, 09 Oct 2013) | 4 lines

Add a RANDOM_RWFILE option and hide the entropy cache code behind it.
Rename YARROW_RNG and FORTUNA_RNG to RANDOM_YARROW and RANDOM_FORTUNA.
Add the RANDOM_* options to LINT.

------------------------------------------------------------------------
r256239 | des | 2013-10-09 21:12:59 +0100 (Wed, 09 Oct 2013) | 2 lines

Define RANDOM_PURE_RNDTEST for rndtest(4).

------------------------------------------------------------------------
r256204 | des | 2013-10-09 18:51:38 +0100 (Wed, 09 Oct 2013) | 2 lines

staticize struct random_hardware_source

------------------------------------------------------------------------
r256203 | markm | 2013-10-09 18:50:36 +0100 (Wed, 09 Oct 2013) | 2 lines

Wrap some policy-rich code in 'if NOTYET' until we can thresh out
what it really needs to do.

------------------------------------------------------------------------
r256184 | des | 2013-10-09 10:13:12 +0100 (Wed, 09 Oct 2013) | 2 lines

Re-add /dev/urandom for compatibility purposes.

------------------------------------------------------------------------
r256182 | des | 2013-10-09 10:11:14 +0100 (Wed, 09 Oct 2013) | 3 lines

Add missing include guards and move the existing ones out of the
implementation namespace.

------------------------------------------------------------------------
r256168 | markm | 2013-10-08 23:14:07 +0100 (Tue, 08 Oct 2013) | 10 lines

Fix some just-noticed problems:

o Allow this to work with "nodevice random" by fixing where the
MALLOC pool is defined.

o Fix the explicit reseed code. This was correct as submitted, but
in the project branch doesn't need to set the "seeded" bit as this
is done correctly in the "unblock" function.

o Remove some debug ifdeffing.

o Adjust comments.

------------------------------------------------------------------------
r256159 | markm | 2013-10-08 19:48:11 +0100 (Tue, 08 Oct 2013) | 6 lines

Time to eat crow for me.

I replaced the sx_* locks that Arthur used with regular mutexes;
this turned out the be the wrong thing to do as the locks need to
be sleepable. Revert this folly.

# Submitted by: Arthur Mesh <arthurmesh@gmail.com> (In original diff)

------------------------------------------------------------------------
r256138 | des | 2013-10-08 12:05:26 +0100 (Tue, 08 Oct 2013) | 10 lines

Add YARROW_RNG and FORTUNA_RNG to sys/conf/options.

Add a SYSINIT that forces a reseed during proc0 setup, which happens
fairly late in the boot process.

Add a RANDOM_DEBUG option which enables some debugging printf()s.

Add a new RANDOM_ATTACH entropy source which harvests entropy from the
get_cyclecount() delta across each call to a device attach method.

------------------------------------------------------------------------
r256135 | markm | 2013-10-08 07:54:52 +0100 (Tue, 08 Oct 2013) | 8 lines

Debugging. My attempt at EVENTHANDLER(multiuser) was a failure; use
EVENTHANDLER(mountroot) instead.

This means we can't count on /var being present, so something will
need to be done about harvesting /var/db/entropy/... .

Some policy now needs to be sorted out, and a pre-sync cache needs
to be written, but apart from that we are now ready to go.

Over to review.

------------------------------------------------------------------------
r256094 | markm | 2013-10-06 23:45:02 +0100 (Sun, 06 Oct 2013) | 8 lines

Snapshot.

Looking pretty good; this mostly works now. New code includes:

* Read cached entropy at startup, both from files and from loader(8)
preloaded entropy. Failures are soft, but announced. Untested.

* Use EVENTHANDLER to do above just before we go multiuser. Untested.

------------------------------------------------------------------------
r256088 | markm | 2013-10-06 14:01:42 +0100 (Sun, 06 Oct 2013) | 2 lines

Fix up the man page for random(4). This mainly removes no-longer-relevant
details about HW RNGs, reseeding explicitly and user-supplied
entropy.

------------------------------------------------------------------------
r256087 | markm | 2013-10-06 13:43:42 +0100 (Sun, 06 Oct 2013) | 6 lines

As userland writing to /dev/random is no more, remove the "better
than nothing" bootstrap mode.

Add SWI harvesting to the mix.

My box seeds Yarrow by itself in a few seconds! YMMV; more to follow.

------------------------------------------------------------------------
r256086 | markm | 2013-10-06 13:40:32 +0100 (Sun, 06 Oct 2013) | 11 lines

Debug run. This now works, except that the "live" sources haven't
been tested. With all sources turned on, this unlocks itself in
a couple of seconds! That is no my box, and there is no guarantee
that this will be the case everywhere.

* Cut debug prints.

* Use the same locks/mutexes all the way through.

* Be a tad more conservative about entropy estimates.

------------------------------------------------------------------------
r256084 | markm | 2013-10-06 13:35:29 +0100 (Sun, 06 Oct 2013) | 5 lines

Don't use the "real" assembler mnemonics; older compilers may not
understand them (like when building CURRENT on 9.x).

# Submitted by: Konstantin Belousov <kostikbel@gmail.com>

------------------------------------------------------------------------
r256081 | markm | 2013-10-06 10:55:28 +0100 (Sun, 06 Oct 2013) | 12 lines

SNAPSHOT.

Simplify the malloc pools; We only need one for this device.

Simplify the harvest queue.

Marginally improve the entropy pool hashing, making it a bit faster
in the process.

Connect up the hardware "live" source harvesting. This is simplistic
for now, and will need to be made rate-adaptive.

All of the above passes a compile test but needs to be debugged.

------------------------------------------------------------------------
r256042 | markm | 2013-10-04 07:55:06 +0100 (Fri, 04 Oct 2013) | 25 lines

Snapshot. This passes the build test, but has not yet been finished or debugged.

Contains:

* Refactor the hardware RNG CPU instruction sources to feed into
the software mixer. This is unfinished. The actual harvesting needs
to be sorted out. Modified by me (see below).

* Remove 'frac' parameter from random_harvest(). This was never
used and adds extra code for no good reason.

* Remove device write entropy harvesting. This provided a weak
attack vector, was not very good at bootstrapping the device. To
follow will be a replacement explicit reseed knob.

* Separate out all the RANDOM_PURE sources into separate harvest
entities. This adds some secuity in the case where more than one
is present.

* Review all the code and fix anything obviously messy or inconsistent.
Address som review concerns while I'm here, like rename the pseudo-rng
to 'dummy'.

# Submitted by: Arthur Mesh <arthurmesh@gmail.com> (the first item)

------------------------------------------------------------------------
r255319 | markm | 2013-09-06 18:51:52 +0100 (Fri, 06 Sep 2013) | 4 lines

Yarrow wants entropy estimations to be conservative; the usual idea
is that if you are certain you have N bits of entropy, you declare
N/2.

------------------------------------------------------------------------
r255075 | markm | 2013-08-30 18:47:53 +0100 (Fri, 30 Aug 2013) | 4 lines

Remove short-lived idea; thread to harvest (eg) RDRAND enropy into the
usual harvest queues. It was a nifty idea, but too heavyweight.

# Submitted by: Arthur Mesh <arthurmesh@gmail.com>

------------------------------------------------------------------------
r255071 | markm | 2013-08-30 12:42:57 +0100 (Fri, 30 Aug 2013) | 4 lines

Separate out the Software RNG entropy harvesting queue and thread
into its own files.

# Submitted by: Arthur Mesh <arthurmesh@gmail.com>

------------------------------------------------------------------------
r254934 | markm | 2013-08-26 20:07:03 +0100 (Mon, 26 Aug 2013) | 2 lines

Remove the short-lived namei experiment.

------------------------------------------------------------------------
r254928 | markm | 2013-08-26 19:35:21 +0100 (Mon, 26 Aug 2013) | 2 lines

Snapshot; Do some running repairs on entropy harvesting. More needs
to follow.

------------------------------------------------------------------------
r254927 | markm | 2013-08-26 19:29:51 +0100 (Mon, 26 Aug 2013) | 15 lines

Snapshot of current work;

1) Clean up namespace; only use "Yarrow" where it is Yarrow-specific
or close enough to the Yarrow algorithm. For the rest use a neutral
name.

2) Tidy up headers; put private stuff in private places. More could
be done here.

3) Streamline the hashing/encryption; no need for a 256-bit counter;
128 bits will last for long enough.

There are bits of debug code lying around; these will be removed
at a later stage.

------------------------------------------------------------------------
r254784 | markm | 2013-08-24 14:54:56 +0100 (Sat, 24 Aug 2013) | 39 lines

1) example (partially humorous random_adaptor, that I call "EXAMPLE")
* It's not meant to be used in a real system, it's there to show how
the basics of how to create interfaces for random_adaptors. Perhaps
it should belong in a manual page

2) Move probe.c's functionality in to random_adaptors.c
* rename random_ident_hardware() to random_adaptor_choose()

3) Introduce a new way to choose (or select) random_adaptors via tunable
"rngs_want" It's a list of comma separated names of adaptors, ordered
by preferences. I.e.:
rngs_want="yarrow,rdrand"

Such setting would cause yarrow to be preferred to rdrand. If neither of
them are available (or registered), then system will default to
something reasonable (currently yarrow). If yarrow is not present, then
we fall back to the adaptor that's first on the list of registered
adaptors.

4) Introduce a way where RNGs can play a role of entropy source. This is
mostly useful for HW rngs.

The way I envision this is that every HW RNG will use this
functionality by default. Functionality to disable this is also present.
I have an example of how to use this in random_adaptor_example.c (see
modload event, and init function)

5) fix kern.random.adaptors from
kern.random.adaptors: yarrowpanicblock
to
kern.random.adaptors: yarrow,panic,block

6) add kern.random.active_adaptor to indicate currently selected
adaptor:
root@freebsd04:~ # sysctl kern.random.active_adaptor
kern.random.active_adaptor: yarrow

# Submitted by: Arthur Mesh <arthurmesh@gmail.com>

Submitted by: Dag-Erling Smørgrav <des@FreeBSD.org>, Arthur Mesh <arthurmesh@gmail.com>
Reviewed by: des@FreeBSD.org
Approved by: re (delphij)
Approved by: secteam (des,delphij)


256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


256048 04-Oct-2013 uqs

Fix make depend.

Approved by: re (glebius)


255936 29-Sep-2013 philip

DEBUG_FLAGS -g is default for GENERIC and its presence interferes with
disabling the sfxge.ko.symbols build for embedded systems.

Approved by: re (marius)
MFC after: 3 days


255932 29-Sep-2013 alfred

Update OFED to Linux 3.7 and update Mellanox drivers.

Update the OFED Infiniband core to the version supplied in Linux
version 3.7.

The update to OFED is nearly all additional defines and functions
with the exception of the addition of additional parameters to
ib_register_device() and the reg_user_mr callback.

In addition the ibcore (Infiniband core) and ipoib (IP over Infiniband)
have both been made into completely loadable modules to facilitate
testing of the OFED stack in FreeBSD.

Finally the Mellanox Infiniband drivers are now updated to the
latest version shipping with Linux 3.7.

Submitted by: Mellanox FreeBSD driver team:
Oded Shanoon (odeds mellanox.com),
Meny Yossefi (menyy mellanox.com),
Orit Moskovich (oritm mellanox.com)

Approved by: re


255923 28-Sep-2013 uqs

Fix make depend, apply a bit of style.

Approved by: re (marius)
Reviewed by: grehan


255736 20-Sep-2013 davidch

Substantial rewrite of bxe(4) to add support for the BCM57712 and
BCM578XX controllers.

Approved by: re
MFC after: 4 weeks


255675 18-Sep-2013 rdivacky

Revert r255672, it has some serious flaws, leaking file references etc.

Approved by: re (delphij)


255672 18-Sep-2013 rdivacky

Implement epoll support in Linuxulator. This is a tiny wrapper around kqueue
to implement epoll subset of functionality. The kqueue user data are 32bit
on i386 which is not enough for epoll user data so this patch overrides
kqueue fileops to maintain enough space in struct file.

Initial patch developed by me in 2007 and then extended and finished
by Yuri Victorovich.

Approved by: re (delphij)
Sponsored by: Google Summer of Code
Submitted by: Yuri Victorovich <yuri at rawbw dot com>
Tested by: Yuri Victorovich <yuri at rawbw dot com>


255608 16-Sep-2013 kib

Remove zero-copy sockets code. It only worked for anonymous memory,
and the equivalent functionality is now provided by sendfile(2) over
posix shared memory filedescriptor.

Remove the cow member of struct vm_page, and rearrange the remaining
members. While there, make hold_count unsigned.

Requested and reviewed by: alc
Tested by: pho
Sponsored by: The FreeBSD Foundation
Approved by: re (delphij)


255570 14-Sep-2013 trasz

Bring in the new iSCSI target and initiator.

Reviewed by: ken (parts)
Approved by: re (delphij)
Sponsored by: FreeBSD Foundation


255561 14-Sep-2013 kib

Fix module build when device ata is not in kernel config.

Sponsored by: The FreeBSD Foundation
Build-tested by: gjb
Approved by: re (delphij)


255560 14-Sep-2013 kib

Correct the svn:keywords value.

Approved by: re (gjb, implicit)


255558 14-Sep-2013 kib

Add svn:keywords property to Makefile.

Approved by: re (gjb)


255524 13-Sep-2013 grehan

Import Hyper-V paravirtualized drivers from projects/hyperv
branch into head.

Approved by: re@ (hrs)
Obtained from: Microsoft, NetApp, and Citrix.


255452 10-Sep-2013 obrien

Back out r255440. /usr/bin/gcc @r255185 (2013-09-03) can build this.

Approved by: re (kib)


255440 10-Sep-2013 obrien

Only use a clang'ism if ${CC} is clang.

Reviewed by: sjg
Approved by: re (kib)


255362 07-Sep-2013 markm

Bring in some behind-the-scenes development, mainly By Arthur Mesh,
the rest by me.

o Namespace cleanup; the Yarrow name is now restricted to where it
really applies; this is in anticipation of being augmented or
replaced by Fortuna in the future. Fortuna is mentioned, but behind
#if logic, and is ignorable for now.

o The harvest queue is pulled out into its own modules.

o Entropy harvesting is emproved, both by being made more conservative,
and by separating (a bit!) the sources. Available entropy crumbs are
marginally improved.

o Selection of sources is made clearer. With recent revelations,
this will receive more work in the weeks and months to come.

Submitted by: Arthur Mesh (partly) <arthurmesh@gmail.com>


255332 06-Sep-2013 cy

Update ipfilter 4.1.28 --> 5.1.2.

Approved by: glebius (mentor)
BSD Licensed by: Darren Reed <darrenr@reed.wattle.id.au> (author)


255187 03-Sep-2013 jmg

Use the fact that the AES-NI instructions can be pipelined to improve
performance... Use SSE2 instructions for calculating the XTS tweek
factor... Let the compiler do more work and handle register allocation
by using intrinsics, now only the key schedule is in assembly...

Replace .byte hard coded instructions w/ the proper instructions now
that both clang and gcc support them...

On my machine, pulling the code to userland I saw performance go from
~150MB/sec to 2GB/sec in XTS mode. GELI on GNOP saw a more modest
increase of about 3x due to other system overhead (geom and
opencrypto)...

These changes allow almost full disk io rate w/ geli...

Reviewed by: -current, -security
Thanks to: Mike Hamburg for the XTS tweek algorithm


255174 03-Sep-2013 uqs

Fix 'make depend'


255164 03-Sep-2013 jhibbits

Refactor PowerPC hwpmc(4) driver into generic and specific. More refactoring
will likely be done as more drivers are added, since AIM-compatible processors
have similar PMC configuration logic.


255112 01-Sep-2013 bryanv

Import multiqueue VirtIO net driver from my user/bryanv/vtnetmq branch

This is a significant rewrite of much of the previous driver; lots of
misc. cleanup was also performed, and support for a few other minor
features was also added.


254993 28-Aug-2013 gnn

Add firmware for Centrino 2200-N wireless devices.

Driver software for this firmware will be updated in a following commit.


254985 28-Aug-2013 uqs

Fix 'make depend'


254967 27-Aug-2013 rdivacky

Assemble linux32_locore.s and ia32_sigtramp.S with clang integrated assembler.
Support for .code32 and .code64 in llvm was implemented more than 2 years ago.

Tested by: Dan McGregor <dan.mcgregor at usask dot ca>


254899 26-Aug-2013 dumbbell

drm/radeon: Disable build on i386/pc98


254885 25-Aug-2013 dumbbell

drm/radeon: Import the Radeon KMS driver

This driver is based on Linux 3.8 and a previous effort by kan@.

More informations about this project can be found on the FreeBSD wiki:
https://wiki.freebsd.org/AMD_GPU

The driver is split into:

sys/dev/drm2:
The driver sources.

sys/modules/drm2/radeonkmw:
The driver main kernel module's Makefile.

sys/modules/drm2/radeonkmsfw:
All firmware kernel module Makefiles. There's one directory and one
Makefile for each firmware.

sys/contrib/dev/drm2/radeonkmsfw:
All firmware binary sources.

tools/tools/drm/radeon
Tools to update firmwares or regenerate some headers.

Merging the driver to FreeBSD 9.x may be possible but not a priority for
now.

Help from: kib@, kan@
Tested by: avg@, kwm@, ray@,
Alexander Yerenkow <yerenkow@gmail.com>,
Anders Bolt-Evensen <andersbo87@me.com>,
Denis Djubajlo <stdedjub@googlemail.com>,
J.R. Oldroyd <fbsd@opal.com>,
Mikaël Urankar <mikael.urankar@gmail.com>,
Pierre-Emmanuel Pédron <pepcitron@gmail.com>,
Sam Fourman Jr. <sfourman@gmail.com>,
Wade <wade-is-great@live.com>,
(probably other I forgot...)
HW donations: kyzh, Yakaz


254817 24-Aug-2013 dumbbell

drm: Import drm_dp_helper.c from Linux 3.8-rc3

While here, update drm_dp_helper.h to better match Linux one.


254794 24-Aug-2013 dumbbell

drm: Import drm_buffer.[ch] from Linux 3.8-rc3

This will be used by the Radeon KMS driver.


254791 24-Aug-2013 uqs

Include bsd.own.mk before trying to check MK_* values.


254738 23-Aug-2013 bryanv

Add vmx(4), a VMware VMXNET3 ethernet driver ported from OpenBSD


254735 23-Aug-2013 np

Assorted fixes to krping. Disconnect the rest of sys/contrib/rdma from
the build while here. sys/ofed has more recent RDMA code and should be
used instead. We should probably move krping out of sys/contrib/rdma
and get rid of the rest of it.

Obtained from: Chelsio


254657 22-Aug-2013 trasz

Move the old iSCSI initiator source to a more appropriate place
(sys/dev/iscsi_initiator/ instead of sys/dev/iscsi/initiator/), to make
room for the new one. This is also more logical location (kernel module
being named iscsi_initiator.ko, for example). There is no ongoing work
on this I know of, so it shouldn't make life harder for anyone.

There are no functional changes, apart from "svn mv" and adjusting paths.


254596 21-Aug-2013 uqs

Fix 'make depend'.


254509 19-Aug-2013 jhibbits

Fix some ppc64 dtrace bugs, and enable systrace_freebsd32 for ppc64.


254319 14-Aug-2013 uqs

Fix make depend


254260 12-Aug-2013 pfg

Add read-only support for extents in ext2fs.

Basic support for extents was implemented by Zheng Liu as part
of his Google Summer of Code in 2010. This support is read-only
at this time.

In addition to extents we also support the huge_file extension
for read-only purposes. This works nicely with the additional
support for birthtime/nanosec timestamps and dir_index that
have been added lately.

The implementation may not work for all ext4 filesystems as
it doesn't support some features that are being enabled by
default on recent linux like flex_bg. Nevertheless, the feature
should be very useful for migration or simple access in
filesystems that have been converted from ext2/3 or don't use
incompatible features.

Special thanks to Zheng Liu for his dedication and continued
work to support ext2 in FreeBSD.

Submitted by: Zheng Liu (lz@)
Reviewed by: Mike Ma, Christoph Mallon (previous version)
Sponsored by: Google Inc.
MFC after: 3 weeks


254202 11-Aug-2013 adrian

Add firmware for the Intel 2030 and variants.

Submitted by: Cedric GROSS <cg@gross.info>
Obtained from: Linux, Intel


254199 11-Aug-2013 adrian

Update the 6000g2a image.

Obtained from: Linux, Intel


254190 10-Aug-2013 kib

The random_adapters.c is standard in the conf/files. Revert wrong
r254185.

Pointed out by: peter


254185 10-Aug-2013 kib

Restore the ability to kldload random.ko, by linking in the newly
added random_adaptors.c.


253997 06-Aug-2013 avg

fix fat-fingering in r253996

MFC after: 17 days
X-MFC with: r253996


253996 06-Aug-2013 avg

opensolaris code: translate INVARIANTS to DEBUG and ZFS_DEBUG

Do this by forcing inclusion of
sys/cddl/compat/opensolaris/sys/debug_compat.h
via -include option into all source files from OpenSolaris.
Note that this -include option must always be after -include opt_global.h.

Additionally, remove forced definition of DEBUG for some modules and fix
their build without DEBUG.

Also, meaning of DEBUG was overloaded to enable WITNESS support for some
OpenSolaris (primarily ZFS) locks. Now this overloading is removed and
that use of DEBUG is replaced with a new option OPENSOLARIS_WITNESS.

MFC after: 17 days


253989 06-Aug-2013 avg

dtrace: fix compilation with gcc

Cowardly taking the easiest way and using -Wno-*

MFC after: 3 days
X-MFC with: r253772


253911 03-Aug-2013 uqs

Add missing depend.


253845 31-Jul-2013 obrien

Back out r253779 & r253786.


253826 31-Jul-2013 jhibbits

Remove duplicate SRCS include block. Spotted by jmallett.


253825 31-Jul-2013 jhibbits

Add the macio attachment for wi(4). Partially obtained from NetBSD.

Reviewed by: adrian
Obtained from: NetBSD (partially)


253795 30-Jul-2013 pluknet

Fix up paths after r253790.
While here, use $? contraction.

Reported by: O. Hartmann


253790 30-Jul-2013 rpaulo

Move runfw to modules/usb.
While there, respect MK_SOURCELESS_UCODE.

Discussed with: kevlo


253789 30-Jul-2013 rpaulo

Import OpenBSD's rsu(4) WLAN driver.
Support chipsets are the Realtek RTL8188SU, RTL8191SU, and RTL8192SU.

Many thanks to Idwer Vollering for porting/writing the man page and for
testing.

Reviewed by: adrian, hselasky
Obtained from: OpenBSD
Tested by: kevlo, Idwer Vollering <vidwer at gmail.com>


253786 29-Jul-2013 obrien

Decouple yarrow from random(4) device.

* Make Yarrow an optional kernel component -- enabled by "YARROW_RNG" option.
The files sha2.c, hash.c, randomdev_soft.c and yarrow.c comprise yarrow.

* random(4) device doesn't really depend on rijndael-*. Yarrow, however, does.

* Add random_adaptors.[ch] which is basically a store of random_adaptor's.
random_adaptor is basically an adapter that plugs in to random(4).
random_adaptor can only be plugged in to random(4) very early in bootup.
Unplugging random_adaptor from random(4) is not supported, and is probably a
bad idea anyway, due to potential loss of entropy pools.
We currently have 3 random_adaptors:
+ yarrow
+ rdrand (ivy.c)
+ nehemeiah

* Remove platform dependent logic from probe.c, and move it into
corresponding registration routines of each random_adaptor provider.
probe.c doesn't do anything other than picking a specific random_adaptor
from a list of registered ones.

* If the kernel doesn't have any random_adaptor adapters present then the
creation of /dev/random is postponed until next random_adaptor is kldload'ed.

* Fix randomdev_soft.c to refer to its own random_adaptor, instead of a
system wide one.

Submitted by: arthurmesh@gmail.com, obrien
Obtained from: Juniper Networks
Reviewed by: obrien


253779 29-Jul-2013 obrien

Decouple yarrow from random(4) device.

* Make Yarrow an optional kernel component -- enabled by "YARROW_RNG" option.
The files sha2.c, hash.c, randomdev_soft.c and yarrow.c comprise yarrow.

* random(4) device doesn't really depend on rijndael-*. Yarrow, however, does.

* Add random_adaptors.[ch] which is basically a store of random_adaptor's.
random_adaptor is basically an adapter that plugs in to random(4).
random_adaptor can only be plugged in to random(4) very early in bootup.
Unplugging random_adaptor from random(4) is not supported, and is probably a
bad idea anyway, due to potential loss of entropy pools.
We currently have 3 random_adaptors:
+ yarrow
+ rdrand (ivy.c)
+ nehemeiah

* Remove platform dependent logic from probe.c, and move it into
corresponding registration routines of each random_adaptor provider.
probe.c doesn't do anything other than picking a specific random_adaptor
from a list of registered ones.

* If the kernel doesn't have any random_adaptor adapters present then the
creation of /dev/random is postponed until next random_adaptor is kldload'ed.

* Fix randomdev_soft.c to refer to its own random_adaptor, instead of a
system wide one.

Submitted by: arthurmesh@gmail.com, obrien
Obtained from: Juniper Networks
Reviewed by: obrien


253773 29-Jul-2013 avg

[fixup] add Makefile changes that should have been committed in r253772

MFC after: 3 weeks
X-MFC with: r253772


253761 29-Jul-2013 rpaulo

Fix a debugging hack that snuck in.


253760 29-Jul-2013 rpaulo

Firmware module for the upcoming rsu(4) driver.


253691 26-Jul-2013 np

Add support for packet-sniffing tracers to cxgbe(4). This works with
all T4 and T5 based cards and is useful for analyzing TSO, LRO, TOE, and
for general purpose monitoring without tapping any cxgbe or cxl ifnet
directly.

Tracers on the T4/T5 chips provide access to Ethernet frames exactly as
they were received from or transmitted on the wire. On transmit, a
tracer will capture a frame after TSO segmentation, hw VLAN tag
insertion, hw L3 & L4 checksum insertion, etc. It will also capture
frames generated by the TCP offload engine (TOE traffic is normally
invisible to the kernel). On receive, a tracer will capture a frame
before hw VLAN extraction, runt filtering, other badness filtering,
before the steering/drop/L2-rewrite filters or the TOE have had a go at
it, and of course before sw LRO in the driver.

There are 4 tracers on a chip. A tracer can trace only in one direction
(tx or rx). For now cxgbetool will set up tracers to capture the first
128B of every transmitted or received frame on a given port. This is a
small subset of what the hardware can do. A pseudo ifnet with the same
name as the nexus driver (t4nex0 or t5nex0) will be created for tracing.
The data delivered to this ifnet is an additional copy made inside the
chip. Normal delivery to cxgbe<n> or cxl<n> will be made as usual.

/* watch cxl0, which is the first port hanging off t5nex0. */
# cxgbetool t5nex0 tracer 0 tx0 (watch what cxl0 is transmitting)
# cxgbetool t5nex0 tracer 1 rx0 (watch what cxl0 is receiving)
# cxgbetool t5nex0 tracer list
# tcpdump -i t5nex0 <== all that cxl0 sees and puts on the wire

If you were doing TSO, a tcpdump on cxl0 may have shown you ~64K
"frames" with no L3/L4 checksum but this will show you the frames that
were actually transmitted.

/* all done */
# cxgbetool t5nex0 tracer 0 disable
# cxgbetool t5nex0 tracer 1 disable
# cxgbetool t5nex0 tracer list
# ifconfig t5nex0 destroy


253544 22-Jul-2013 hselasky

Add some USB gadget example drivers for USB audio, USB keyboard,
USB mouse and USB modem classes. Hopefully someone will find
these examples useful when implementing USB device side drivers
using the FreeBSD USB stack.


253476 19-Jul-2013 jimharris

Add message when nvd disks are attached and detached.

As part of this commit, add an nvme_strvis() function which borrows
heavily from cam_strvis(). This will allow stripping of
leading/trailing whitespace and also handle unprintable characters
in model/serial numbers. This function goes into a new nvme_util.c
file which is used by both the driver and nvmecontrol.

Sponsored by: Intel
Reviewed by: carl
MFC after: 3 days


253378 16-Jul-2013 rpaulo

Add urtwnfw.


253315 13-Jul-2013 jhibbits

Clean up the modules list for PowerPC. powerpc64 has MACHINE_CPUARCH of
powerpc. While here, sort the list.


253303 12-Jul-2013 jfv

Change the E1000 driver option header handling to match the
ixgbe driver. As it was, when building them as a module INET
and INET6 are not defined. In these drivers it does not cause
a panic, however it does result in different behavior in the
ioctl routine when you are using a module vs static, and I
think the behavior should be the same.

MFC after: 3 days


253139 10-Jul-2013 hiren

Adding urtwn(4) firmware and related changes.

Reviewed by: rpaulo
Approved by: sbruno (mentor)


252890 06-Jul-2013 pfg

Initial implementation of the HTree directory index.

This is a port of NetBSD's GSoC 2012 Ext3 HTree directory indexing
by Vyacheslav Matyushin. It was cleaned up and enhanced for FreeBSD
by Zheng Liu (lz@).

This is an excellent example of work shared among different projects:
Vyacheslav was able to look at an early prototype from Zheng Liu who
was also able to check the code from Haiku (with permission).

As in linux, the feature is not available by default and must be
enabled explicitly with tune2fs. We still do not support the
workarounds required in readdir for NFS.

Submitted by: Zheng Liu
Tested by: Mike Ma
Sponsored by: Google Inc.
MFC after: 1 week


252867 06-Jul-2013 delphij

Import HighPoint DC Series Data Center HBA (DC7280 and R750) driver.
This driver works for FreeBSD/i386 and FreeBSD/amd64 platforms.

Many thanks to HighPoint for providing this driver.

MFC after: 1 day


252661 04-Jul-2013 np

- Include the T5 firmware with the driver.
- Update the T4 firmware to the latest.
- Minor reorganization and updates to the version macros, etc.

Obtained from: Chelsio
MFC after: 1 day


252504 02-Jul-2013 lstewart

Import an implementation of the CAIA Delay-Gradient (CDG) congestion control
algorithm, which is based on the 2011 v0.1 patch release and described in the
paper "Revisiting TCP Congestion Control using Delay Gradients" by David Hayes
and Grenville Armitage. It is implemented as a kernel module compatible with the
modular congestion control framework.

CDG is a hybrid congestion control algorithm which reacts to both packet loss
and inferred queuing delay. It attempts to operate as a delay-based algorithm
where possible, but utilises heuristics to detect loss-based TCP cross traffic
and will compete effectively as required. CDG is therefore incrementally
deployable and suitable for use on shared networks.

In collaboration with: David Hayes <david.hayes at ieee.org> and
Grenville Armitage <garmitage at swin edu au>
MFC after: 4 days
Sponsored by: Cisco University Research Program and FreeBSD Foundation


252491 01-Jul-2013 rmh

Wrap cxgbe declaration around MK_SOURCELESS_UCODE check


252356 28-Jun-2013 davide

- Trim an unused and bogus Makefile for mount_smbfs.
- Reconnect with some minor modifications, in particular now selsocket()
internals are adapted to use sbintime units after recent'ish calloutng
switch.


252206 25-Jun-2013 davidcs

Add Qlogic 10Gb Ethernet Driver for Qlogic 8100 Series CNA Adapter
Driver version (v2.0.0)

Submitted by: David C Somayajulu (davidcs@freebsd.org) QLogic Corporation
Approved by: George Neville-Neil (gnn@freebsd.org)


252064 21-Jun-2013 gonzo

Rename run(4) firmware file from runfw to run.fw. Previous name was the
same as top-level target name for "device runfw" kernel option and
caused cyclic dependancy that lead to kernel build breakage

Module change is not strictly required and done for name unification sake

PR: conf/175751
Submitted by: Issei <i10a at herbmint.jp>


251964 18-Jun-2013 jfv

Add quad port probe support, this gives the admin proper information about the slot
(which should be a PCIE Gen 3 slot for this adapter) by looking back thru the PCI
parent devices to the slot device.

The fix above also corrects the bandwidth display to GT/s rather than the
incorrect Gb/s

Next, allow the use of ALTQ if you select the compile option IXGBE_LEGACY_TX.

Allow the use of 'unsupported' optic modules by a compile option as well.

Add a phy reset capability into the stop code, this is so a static configured
driver will still behave properly when taken down (not being able to unload it).

This revision synchronizes the shared code with Intel internal current code,
and note that it now includes DCB supporting code, this was necessitated by
some internal changes with the code, but it also will provide the opportunity
to develop this feature in the core driver down the road.

I have edited the README to get rid of some of the worse anachronisms in it
as well, its by no means as robust as I might wish at this point however.

Oh, I also have included some conditional stuff in the code so it will be
compatible in both the 9.X and 10 environments.

Performance has been a focus in recent changes and I believe this revision
driver will perform very well in most workloads.

MFC after: 2 weeks


251869 17-Jun-2013 eadler

Add missing dependency to linux${SFX}_genassym.c

Submitted by: nox
MFC After: 3 days


251842 17-Jun-2013 scottl

This is an addendum to r251837.
Missed adding the new references to cam_compat.c to the various makefiles.

Obtained from: Netflix


251655 12-Jun-2013 adrian

Migrate the LNA mixing diversity machinery from the AR9285 HAL to the driver.

The AR9485 chip and AR933x SoC both implement LNA diversity.
There are a few extra things that need to happen before this can be
flipped on for those chips (mostly to do with setting up the different
bias values and LNA1/LNA2 RSSI differences) but the first stage is
putting this code into the driver layer so it can be reused.

This has the added benefit of making it easier to expose configuration
options and diagnostic information via the ioctl API. That's not yet
being done but it sure would be nice to do so.

Tested:

* AR9285, with LNA diversity enabled
* AR9285, with LNA diversity disabled in EEPROM


251538 08-Jun-2013 rpaulo

Import Kevin Lo's port of urtwn(4) from OpenBSD. urtwn(4) is a driver for the
Realtek RTL8188CU/RTL8192CU USB IEEE 802.11b/g/n wireless cards.
This driver requires microcode which is available in FreeBSD ports:
net/urtwn-firmware-kmod.

Hiren ported the urtwn(4) man page from OpenBSD and Glen just commited a port
for the firmware.

TODO:
- 802.11n support
- Stability fixes - the driver can sustain lots of traffic but has trouble
coping with simultaneous iperf sessions.
- fix debugging

MFC after: 2 months
Tested by: kevlo, hiren, gjb


251487 07-Jun-2013 adrian

Bring over the initial static bluetooth coexistence configuration
for the WB195 combo NIC - an AR9285 w/ an AR3011 USB bluetooth NIC.

The AR3011 is wired up using a 3-wire coexistence scheme to the AR9285.

The code in if_ath_btcoex.c sets up the initial hardware mapping
and coexistence configuration. There's nothing special about it -
it's static; it doesn't try to configure bluetooth / MAC traffic priorities
or try to figure out what's actually going on. It's enough to stop basic
bluetooth traffic from causing traffic stalls and diassociation from
the wireless network.

To use this code, you must have the above NIC. No, it won't work
for the AR9287+AR3012, nor the AR9485, AR9462 or AR955x combo cards.

Then you set a kernel hint before boot or before kldload, where 'X'
is the unit number of your AR9285 NIC:

# kenv hint.ath.X.btcoex_profile=wb195

This will then appear in your boot messages:

[100482] athX: Enabling WB195 BTCOEX

This code is going to evolve pretty quickly (well, depending upon my
spare time) so don't assume the btcoex API is going to stay stable.

In order to use the bluetooth side, you must also load in firmware using
ath3kfw and the binary firmware file (ath3k-1.fw in my case.)

Tested:

* AR9280, no interference
* WB195 - AR9285 + AR3011 combo; STA mode; basic bluetooth inquiries
were enough to cause traffic stalls and disassociations. This has
stopped with the btcoex profile code.

TODO:

* Importantly - the AR9285 needs ASPM disabled if bluetooth coexistence
is enabled. No, I don't know why. It's likely some kind of bug to do
with the AR3011 sending bluetooth coexistence signals whilst the device
is asleep. Since we don't actually sleep the MAC just yet, it shouldn't
be a problem. That said, to be totally correct:

+ ASPM should be disabled - upon attach and wakeup
+ The PCIe powersave HAL code should never be called

Look at what the ath9k driver does for inspiration.

* Add WB197 (AR9287+AR3012) support
* Add support for the AR9485, which is another combo like the AR9285
* The later NICs have a different signaling mechanism between the MAC
and the bluetooth device; I haven't even begun to experiment with
making that HAL code work. But it should be a lot more automatic.

* The hardware can do much more interesting traffic weighting with
bluetooth and wifi traffic. None of this is currently used.
Ideally someone would code up something to watch the bluetooth traffic
GPIO (via an interrupt) and then watch it go high/low; then figure out
what the bluetooth traffic is and adjust things appropriately.

* If I get the time I may add in some code to at least track this stuff
and expose statistics. But it's up to someone else to experiment with
the bluetooth coexistence support and add the interesting stuff (like
"real" detection of bulk, audio, etc bluetooth traffic patterns and
change wifi parameters appropriately - eg, maximum aggregate length,
transmit power, using quiet time to control TX duty cycle, etc.)


251368 04-Jun-2013 obrien

Match the options of the kernel.


251237 02-Jun-2013 markj

Port the SDT test now that it's possible to create SDT probes that take
seven arguments.

The original test uses Solaris' uadmin system call to trigger the test
probe; this change adds a sysctl to the dtrace_test module and gets the test
program to trigger the test probe via the sysctl handler.

The test is currently failing on amd64 because of some bugs in the way that
probe arguments beyond the first five are obtained - these bugs will be
fixed in a separate change.


251114 30-May-2013 marius

Fix a typo in r249213; the second bus_if.h should have been isa_if.h.


250963 24-May-2013 achim

Driver 'aacraid' added. Supports Adaptec by PMC RAID controller families Series 6, 7, 8 and upcoming products. Older Adaptec RAID controller families are supported by the 'aac' driver.

Approved by: scottl (mentor)


250838 20-May-2013 jkim

Merge ACPICA 20130517.


250661 15-May-2013 davidcs

Add Qlogic 10Gigabit Ethernet & CNA Adapter Driver Version 3.10.10 for
QLogic 8300 Series Adapters

Submitted by: David C Somayajulu (davidcs@freebsd.org) QLogic Corporation
Approved by: George Neville-Neil (gnn@freebsd.org)


250363 08-May-2013 takawata

A driver for Intel Rapid Start Technology ACPI device.
Note that it is just for 'Advanced' configuration for Rapid start technology.


250173 02-May-2013 adrian

Add the AR9300 HAL into the kernel and module builds.

Tested:

* make universe (honest!)


250079 29-Apr-2013 carl

Add a new driver to support the Intel Non-Transparent Bridge(NTB).

The NTB allows you to connect two systems with this device using a PCI-e
link. The driver is made of two modules:
- ntb_hw which is a basic hardware abstraction layer for the device.
- if_ntb which implements the ntb network device and the communication
protocol.

The driver is limited at the moment to CPU memcpy instead of using DMA, and
only Back-to-Back mode is supported. Also the network device isn't full
featured yet. These changes will be coming soon. The DMA change will also
bring in the ioat driver from the project branch it is on now.

This is an initial port of the GPL/BSD Linux driver contributed by Jon Mason
from Intel. Any bugs are my contributions.

Sponsored by: Intel
Reviewed by: jimharris, joel (man page only)
Approved by: jimharris (mentor)


249765 22-Apr-2013 nyan

Build uart_dev_lpc.c on arm only. This fixes pc98 build.


249663 19-Apr-2013 jkim

Merge ACPICA 20130418.


249636 19-Apr-2013 jhibbits

Fix the uart(4) module build. Without uart_dev_lpc the module cannot be loaded.


249596 17-Apr-2013 ken

Move the NFS FHA (File Handle Affinity) code from sys/nfsserver to
sys/nfs, since it is now shared by the two NFS servers.

Suggested by: rmacklem
Sponsored by: Spectra Logic
MFC after: 2 weeks


249592 17-Apr-2013 ken

Revamp the old NFS server's File Handle Affinity (FHA) code so that
it will work with either the old or new server.

The FHA code keeps a cache of currently active file handles for
NFSv2 and v3 requests, so that read and write requests for the same
file are directed to the same group of threads (reads) or thread
(writes). It does not currently work for NFSv4 requests. They are
more complex, and will take more work to support.

This improves read-ahead performance, especially with ZFS, if the
FHA tuning parameters are configured appropriately. Without the
FHA code, concurrent reads that are part of a sequential read from
a file will be directed to separate NFS threads. This has the
effect of confusing the ZFS zfetch (prefetch) code and makes
sequential reads significantly slower with clients like Linux that
do a lot of prefetching.

The FHA code has also been updated to direct write requests to nearby
file offsets to the same thread in the same way it batches reads,
and the FHA code will now also send writes to multiple threads when
needed.

This improves sequential write performance in ZFS, because writes
to a file are now more ordered. Since NFS writes (generally
less than 64K) are smaller than the typical ZFS record size
(usually 128K), out of order NFS writes to the same block can
trigger a read in ZFS. Sending them down the same thread increases
the odds of their being in order.

In order for multiple write threads per file in the FHA code to be
useful, writes in the NFS server have been changed to use a LK_SHARED
vnode lock, and upgrade that to LK_EXCLUSIVE if the filesystem
doesn't allow multiple writers to a file at once. ZFS is currently
the only filesystem that allows multiple writers to a file, because
it has internal file range locking. This change does not affect the
NFSv4 code.

This improves random write performance to a single file in ZFS, since
we can now have multiple writers inside ZFS at one time.

I have changed the default tuning parameters to a 22 bit (4MB)
window size (from 256K) and unlimited commands per thread as a
result of my benchmarking with ZFS.

The FHA code has been updated to allow configuring the tuning
parameters from loader tunable variables in addition to sysctl
variables. The read offset window calculation has been slightly
modified as well. Instead of having separate bins, each file
handle has a rolling window of bin_shift size. This minimizes
glitches in throughput when shifting from one bin to another.

sys/conf/files:
Add nfs_fha_new.c and nfs_fha_old.c. Compile nfs_fha.c
when either the old or the new NFS server is built.

sys/fs/nfs/nfsport.h,
sys/fs/nfs/nfs_commonport.c:
Bring in changes from Rick Macklem to newnfs_realign that
allow it to operate in blocking (M_WAITOK) or non-blocking
(M_NOWAIT) mode.

sys/fs/nfs/nfs_commonsubs.c,
sys/fs/nfs/nfs_var.h:
Bring in a change from Rick Macklem to allow telling
nfsm_dissect() whether or not to wait for mallocs.

sys/fs/nfs/nfsm_subs.h:
Bring in changes from Rick Macklem to create a new
nfsm_dissect_nonblock() inline function and
NFSM_DISSECT_NONBLOCK() macro.

sys/fs/nfs/nfs_commonkrpc.c,
sys/fs/nfsclient/nfs_clkrpc.c:
Add the malloc wait flag to a newnfs_realign() call.

sys/fs/nfsserver/nfs_nfsdkrpc.c:
Setup the new NFS server's RPC thread pool so that it will
call the FHA code.

Add the malloc flag argument to newnfs_realign().

Unstaticize newnfs_nfsv3_procid[] so that we can use it in
the FHA code.

sys/fs/nfsserver/nfs_nfsdsocket.c:
In nfsrvd_dorpc(), add NFSPROC_WRITE to the list of RPC types
that use the LK_SHARED lock type.

sys/fs/nfsserver/nfs_nfsdport.c:
In nfsd_fhtovp(), if we're starting a write, check to see
whether the underlying filesystem supports shared writes.
If not, upgrade the lock type from LK_SHARED to LK_EXCLUSIVE.

sys/nfsserver/nfs_fha.c:
Remove all code that is specific to the NFS server
implementation. Anything that is server-specific is now
accessed through a callback supplied by that server's FHA
shim in the new softc.

There are now separate sysctls and tunables for the FHA
implementations for the old and new NFS servers. The new
NFS server has its tunables under vfs.nfsd.fha, the old
NFS server's tunables are under vfs.nfsrv.fha as before.

In fha_extract_info(), use callouts for all server-specific
code. Getting file handles and offsets is now done in the
individual server's shim module.

In fha_hash_entry_choose_thread(), change the way we decide
whether two reads are in proximity to each other.
Previously, the calculation was a simple shift operation to
see whether the offsets were in the same power of 2 bucket.
The issue was that there would be a bucket (and therefore
thread) transition, even if the reads were in close
proximity. When there is a thread transition, reads wind
up going somewhat out of order, and ZFS gets confused.

The new calculation simply tries to see whether the offsets
are within 1 << bin_shift of each other. If they are, the
reads will be sent to the same thread.

The effect of this change is that for sequential reads, if
the client doesn't exceed the max_reqs_per_nfsd parameter
and the bin_shift is set to a reasonable value (22, or
4MB works well in my tests), the reads in any sequential
stream will largely be confined to a single thread.

Change fha_assign() so that it takes a softc argument. It
is now called from the individual server's shim code, which
will pass in the softc.

Change fhe_stats_sysctl() so that it takes a softc
parameter. It is now called from the individual server's
shim code. Add the current offset to the list of things
printed out about each active thread.

Change the num_reads and num_writes counters in the
fha_hash_entry structure to 32-bit values, and rename them
num_rw and num_exclusive, respectively, to reflect their
changed usage.

Add an enable sysctl and tunable that allows the user to
disable the FHA code (when vfs.XXX.fha.enable = 0). This
is useful for before/after performance comparisons.

nfs_fha.h:
Move most structure definitions out of nfs_fha.c and into
the header file, so that the individual server shims can
see them.

Change the default bin_shift to 22 (4MB) instead of 18
(256K). Allow unlimited commands per thread.

sys/nfsserver/nfs_fha_old.c,
sys/nfsserver/nfs_fha_old.h,
sys/fs/nfsserver/nfs_fha_new.c,
sys/fs/nfsserver/nfs_fha_new.h:
Add shims for the old and new NFS servers to interface with
the FHA code, and callbacks for the

The shims contain all of the code and definitions that are
specific to the NFS servers.

They setup the server-specific callbacks and set the server
name for the sysctl and loader tunable variables.

sys/nfsserver/nfs_srvkrpc.c:
Configure the RPC code to call fhaold_assign() instead of
fha_assign().

sys/modules/nfsd/Makefile:
Add nfs_fha.c and nfs_fha_new.c.

sys/modules/nfsserver/Makefile:
Add nfs_fha_old.c.

Reviewed by: rmacklem
Sponsored by: Spectra Logic
MFC after: 2 weeks


249581 17-Apr-2013 ivoras

Link g_label_disk_ident when building geom_label as a module


249420 12-Apr-2013 jimharris

Move the busdma mapping functions to nvme_qpair.c.

This removes nvme_uio.c completely.

Sponsored by: Intel


249410 12-Apr-2013 trasz

Remove ctl(4) from GENERIC. Also remove 'options CTL_DISABLE'
and kern.cam.ctl.disable tunable; those were introduced as a workaround
to make it possible to boot GENERIC on low memory machines.

With ctl(4) being built as a module and automatically loaded by ctladm(8),
this makes CTL work out of the box.

Reviewed by: ken
Sponsored by: FreeBSD Foundation


249403 12-Apr-2013 bz

isa_if.h is indirectly included.
Depend on it to unbreak pc98 builds.


249214 06-Apr-2013 marius

Remove atadevel(4), it no longer builds with ATA_CAM and it's unlikely
that support for new lines of ATA controllers will be added to ata(4).


249213 06-Apr-2013 marius

- With the demise of !ATA_CAM, ATA_STATIC_ID is the only ata(4) related
option left but actually consumed by ada(4), so move it to opt_ada.h
and get rid of opt_ata.h.
- Fix stand-alone build of atacore(4) by adding opt_cam.h.
- Use __FBSDID.
- Use DEVMETHOD_END.
- Use NULL instead of 0 for pointers.


249203 06-Apr-2013 marius

- Make ata_str2mode() static, it's not used outside of ata-all.c.
- Move ata_timeout() to ata-all.c so we don't need to expose both this
function and ata_cam_end_transaction() but only the former.
- Move ata_cmd2str() from ata-queue.c to ata-all.c so we can get rid of
the former.
- Add some missing prototypes.

MFC after: 3 days


249083 04-Apr-2013 mav

Remove all legacy ATA code parts, not used since options ATA_CAM enabled in
most kernels before FreeBSD 9.0. Remove such modules and respective kernel
options: atadisk, ataraid, atapicd, atapifd, atapist, atapicam. Remove the
atacontrol utility and some man pages. Remove useless now options ATA_CAM.

No objections: current@, stable@
MFC after: never


249022 02-Apr-2013 glebius

- Remove extra $FreeBSD$
- Touch options headers to make module buildable.

Reviewed by: trasz


249009 02-Apr-2013 trasz

Make it possible to build CTL as a module.

Reviewed by: ken
Sponsored by: FreeBSD Foundation


248983 01-Apr-2013 pfg

Dtrace: enablings on defunct providers prevent providers from unregistering

Merge change from illumos:

1368 enablings on defunct providers prevent providers from unregistering

We try to address some underlying differences between the Solaris
and FreeBSD implementations: dtrace_attach() / dtrace_detach() are
currently unimplemented in FreeBSD but the new code from illumos
makes use of taskq so some adaptations were made to dtrace_open()
and dtrace_close() to handle them appropriately.

Illumos Revision: r13430:8e6add739e38

Reference:
https://www.illumos.org/issues/1368

Reviewed by: gnn
Tested by: Fabian Keil
Obtained from: Illumos
MFC after: 3 weeks


248925 30-Mar-2013 np

cxgbe(4): Add support for Chelsio's Terminator 5 (aka T5) ASIC. This
includes support for the NIC and TOE features of the 40G, 10G, and
1G/100M cards based on the T5.

The ASIC is mostly backward compatible with the Terminator 4 so cxgbe(4)
has been updated instead of writing a brand new driver. T5 cards will
show up as cxl (short for cxlgb) ports attached to the t5nex bus driver.

Sponsored by: Chelsio


248906 29-Mar-2013 jfv

Change defines in the igb driver to allow an easier selection of
the older if_start/non-multiqueue interface from the stack. This
is not the default, but can be turned on in the Makefile now regardless
of the OS level to allow either testing or use of ALTQ.

MFC after: one week


248486 19-Mar-2013 jhibbits

Fix the powerpc64 build. MACHINE_CPUARCH is common for powerpc/powerpc64,
not MACHINE_ARCH.


248457 18-Mar-2013 jhibbits

Add FBT for PowerPC DTrace. Also, clean up the DTrace assembly code,
much of which is not necessary for PowerPC.

The FBT module can likely be factored into 3 separate files: common,
intel, and powerpc, rather than duplicating most of the code between
the x86 and PowerPC flavors.

All DTrace modules for PowerPC will be MFC'd together once Fasttrap is
completed.


248411 17-Mar-2013 andrew

In the uart module build ofw_bus_if.h on arm along with sparc64 as LINT
fails when built locally without it.


248259 14-Mar-2013 adrian

Disable warning/errors for two files for now - they don't compile clean
with clang.

I'll work on this soon.


248181 12-Mar-2013 adrian

Shift this over to a new location in contrib/, in preparation to push
this public.


248097 09-Mar-2013 attilio

Garbage collect NWFS and NCP bits which are now completely disconnected
from the tree since few months.

This patch is not targeted for MFC.


248084 09-Mar-2013 attilio

Switch the vm_object mutex to be a rwlock. This will enable in the
future further optimizations where the vm_object lock will be held
in read mode most of the time the page cache resident pool of pages
are accessed for reading purposes.

The change is mostly mechanical but few notes are reported:
* The KPI changes as follow:
- VM_OBJECT_LOCK() -> VM_OBJECT_WLOCK()
- VM_OBJECT_TRYLOCK() -> VM_OBJECT_TRYWLOCK()
- VM_OBJECT_UNLOCK() -> VM_OBJECT_WUNLOCK()
- VM_OBJECT_LOCK_ASSERT(MA_OWNED) -> VM_OBJECT_ASSERT_WLOCKED()
(in order to avoid visibility of implementation details)
- The read-mode operations are added:
VM_OBJECT_RLOCK(), VM_OBJECT_TRYRLOCK(), VM_OBJECT_RUNLOCK(),
VM_OBJECT_ASSERT_RLOCKED(), VM_OBJECT_ASSERT_LOCKED()
* The vm/vm_pager.h namespace pollution avoidance (forcing requiring
sys/mutex.h in consumers directly to cater its inlining functions
using VM_OBJECT_LOCK()) imposes that all the vm/vm_pager.h
consumers now must include also sys/rwlock.h.
* zfs requires a quite convoluted fix to include FreeBSD rwlocks into
the compat layer because the name clash between FreeBSD and solaris
versions must be avoided.
At this purpose zfs redefines the vm_object locking functions
directly, isolating the FreeBSD components in specific compat stubs.

The KPI results heavilly broken by this commit. Thirdy part ports must
be updated accordingly (I can think off-hand of VirtualBox, for example).

Sponsored by: EMC / Isilon storage division
Reviewed by: jeff
Reviewed by: pjd (ZFS specific review)
Discussed with: alc
Tested by: pho


248079 09-Mar-2013 adrian

Placeholder for the upcoming AR9300 HAL code.


247891 06-Mar-2013 uqs

Fix 'make depend'


247835 05-Mar-2013 kib

Import the preliminary port of the TTM.

The early commit is done to facilitate the off-tree work on the
porting of the Radeon driver.

Sponsored by: The FreeBSD Foundation
Debugged and tested by: dumbbell
MFC after: 1 month


247834 05-Mar-2013 kib

Import the drm_global references helpers.

Sponsored by: The FreeBSD Foundation
MFC after: 1 month


247719 03-Mar-2013 uqs

Fix 'make depend'


247665 02-Mar-2013 attilio

Garbage collect NTFS bits which are now completely disconnected from
the tree since few months.

This patch is not targeted for MFC.


247640 02-Mar-2013 attilio

Garbage collect PORTALFS bits which are now completely disconnected from
the tree since few months.

This patch is not targeted for MFC.


247635 02-Mar-2013 attilio

Garbage collect CODAFS bits which are now completely disconnected from
the tree since few months.

This patch is not targeted for MFC.


247631 02-Mar-2013 attilio

Garbage collect XFS bits which are now already completely disconnected
from the tree since few months.

This is not targeted for MFC.


247628 02-Mar-2013 attilio

Garbage collect HPFS bits which are now already completely disconnected
from the tree since few months (please note that the userland bits
were already disconnected since a long time, thus there is no need
to update the OLD* entries).

This is not targeted for MFC.


247505 28-Feb-2013 jfv

Change the ixgbe module name to if_ixgbe to conform
to the usual naming convention.


247289 26-Feb-2013 np

cxgbe(4): Update firmware to 1.8.4.0.

MFC after: 5 days


247133 21-Feb-2013 gallatin

Improve mxge's receive performance for IPv6:

- Add support for IPv6 rx csum offload
- Finally switch mxge from using its own driver lro, to
using tcp_lro

MFC after: 7 days
Sponsored by: Myricom Inc.


247011 19-Feb-2013 gallatin

Add support to mxge for IPv6 TX csum offload & IPv6 TSO.

Sponsored by: Myricom, Inc.
MFC after: 7 days


246849 15-Feb-2013 jkim

Merge ACPICA 20130214.


246585 09-Feb-2013 delphij

Fix LINT build for ARM.


246227 02-Feb-2013 adrian

Allow IEEE80211_SUPPORT_SUPERG to be defined _and_ have a working wlan
module.


246195 01-Feb-2013 hselasky

Include SMSC driver into default kernel build.


246193 01-Feb-2013 neel

Delete the "blackhole" driver - it is not needed anymore.

The "blackhole" driver was used in conjunction with bhyve to sequester
pci devices intended for passthru until vmm.ko was loaded. This was
useful at one point because vmm.ko could not be loaded at boot time.

The same functionality can now be achieved by loading vmm.ko via the
loader along with the kernel.

Discussed with: grehan
Obtained from: NetApp


245952 26-Jan-2013 pfg

Clean some 'svn:executable' properties in the tree.

Submitted by: Christoph Mallon
MFC after: 3 days


245768 22-Jan-2013 delphij

- Don't include date and time the driver is built, this is useful for
generating binary diffs.
- Constify a few strings used in the driver.
- Style changes to make the driver compile with default clang settings.

Approved by: HighPoint Technologies
MFC after: 3 days


245678 20-Jan-2013 neel

Add svn properties to the recently merged bhyve source files.

The pre-commit hook will not allow any commits without the svn:keywords
property in head.


245652 19-Jan-2013 neel

Merge projects/bhyve to head.

'bhyve' was developed by grehan@ and myself at NetApp (thanks!).

Special thanks to Peter Snyder, Joe Caradonna and Michael Dexter for their
support and encouragement.

Obtained from: NetApp


245434 14-Jan-2013 np

cxgbe(4): Updates to the hardware L2 table management code.

- Add full support for IPv6 addresses.

- Read the size of the L2 table during attach. Do not assume that PCIe
physical function 4 of the card has all of the table to itself.

- Use FNV instead of Jenkins to hash L3 addresses and drop the private
copy of jhash.h from the driver.

MFC after: 1 week


244952 02-Jan-2013 adrian

Link if_ath_spectral.c into the build.


244945 02-Jan-2013 adrian

Add missing update to link ar5416_spectral.c into the build.


243838 03-Dec-2012 adrian

Add the btcoex code into the module compilation.


243837 03-Dec-2012 adrian

Include if_ath_alq.c, which only gets actually compiled if ATH_DEBUG_ALQ
is enabled.


243801 02-Dec-2012 uqs

Fix make depend.


243347 20-Nov-2012 jkim

Merge ACPICA 20121114.


243339 20-Nov-2012 kib

Fix module build after r243245.


243337 20-Nov-2012 ae

Connect ip6_mroute kernel module to the build.

MFC after: 1 week


243100 15-Nov-2012 eadler

Finish removing unneeded header from agp: opt_bus.h

Approved by: cperciva
MFC after: 1 week


242933 12-Nov-2012 dim

Redo r242842, now actually fixing the warnings, as follows:
- In sys/ofed/drivers/infiniband/core/cma.c, an enum struct member is
interpreted as an int, so cast it to an int.
- In sys/ofed/drivers/infiniband/core/ud_header.c, initialize the
packet_length variable in ib_ud_header_init(), to prevent undefined
behaviour.
- In sys/ofed/drivers/infiniband/ulp/sdp/sdp_rx.c, call rdma_notify()
with the correct enum type and value.
- In sys/ofed/include/linux/pci.h, change the PCI_DEVICE and PCI_VDEVICE
macros to use C99 struct initializers, so additional members can be
overridden.

Reviewed by: delphij, Garrett Cooper <yanegomi@gmail.com>
MFC after: 1 week


242842 10-Nov-2012 delphij

Attempt toward a buildable universe by silenting a few warnings for OFED.


242731 08-Nov-2012 kevlo

Use .PATH instead of VPATH.

Reviewed by: gnn,rwatson


242723 07-Nov-2012 jhibbits

Implement DTrace for PowerPC. This includes both 32-bit and 64-bit.

There is one known issue: Some probes will display an error message along the
lines of: "Invalid address (0)"

I tested this with both a simple dtrace probe and dtruss on a few different
binaries on 32-bit. I only compiled 64-bit, did not run it, but I don't expect
problems without the modules loaded. Volunteers are welcome.

MFC after: 1 month


242203 28-Oct-2012 nwhitehorn

Extend dim's hack from r228978: not only clang but gcc on non-x86 platforms
warns about unused variables in this code, so always add -Wno-unused to
the warning flags. Why gcc on x86 *doesn't* warn about this, I will never
know. The code itself should probably be fixed at some point.


242197 27-Oct-2012 nwhitehorn

Don't try to build Linux compatibility stuff on platforms without
COMPAT_LINUX.


242179 27-Oct-2012 nwhitehorn

drm(4) works just fine on PowerPC, so connect it to the build.

MFC after: 2 weeks


241828 22-Oct-2012 eadler

Finish migration of MAINTAINER entries

Approved by: cperciva
MFC after: 3 days


241706 18-Oct-2012 attilio

It seems that it is preferable to keep support for glabel also for
filesystems that we don't support natively.
Revert part of r241636 to do so.

This patch is not targeted for MFC.

Requested by: gleb, jhb


241680 18-Oct-2012 attilio

Disconnect non-MPSAFE SMBFS from the build in preparation for dropping
GIANT from VFS. In addition, disconnect also netsmb, which is a base
requirement for SMBFS.

In the while SMBFS regular users can use FUSE interface and smbnetfs
port to work with their SMBFS partitions.

Also, there are ongoing efforts by vendor to support in-kernel smbfs,
so there are good chances that it will get relinked once properly locked.

This is not targeted for MFC.


241636 17-Oct-2012 attilio

Disconnect non-MPSAFE NTFS from the build in preparation for dropping
GIANT from VFS. This code is particulary broken and fragile and other
in-kernel implementations around, found in other operating systems,
don't really seem clean and solid enough to be imported at all.
If someone wants to reconsider in-kernel NTFS implementation for
inclusion again, a fair effort for completely fixing and cleaning it
up is expected.

In the while NTFS regular users can use FUSE interface and ntfs-3g
port to work with their NTFS partitions.

This is not targeted for MFC.


241629 17-Oct-2012 attilio

Disconnect non-MPSAFE NWFS from the build in preparation for dropping
GIANT from VFS. In addition, disconnect also netncp, which is a base
requirement for NWFS.

In the possibility of a future maintenance of the code and later
readd to the FreeBSD base, maybe we should think about a better location
for netncp. I'm not entirely sure the / top location is actually right,
however I will let network people to comment on that more specifically.

This is not targeted for MFC.


241608 16-Oct-2012 attilio

Disconnect non-MPSAFE CODAFS from the build in preparation for dropping
GIANT from VFS.

This is not targeted for MFC.


241607 16-Oct-2012 attilio

Disconnect non-MPSAFE XFS from the build in preparation for dropping
GIANT from VFS.

This is not targeted for MFC.


241606 16-Oct-2012 attilio

Disconnect non-MPSAFE PORTALFS from the build in preparation for dropping
GIANT from VFS.

This is not targeted for MFC.


241600 16-Oct-2012 gonzo

Split sdhci driver in two parts: sdhci and sdhci_pci.
sdchi encapsulates a generic SD Host Controller logic that relies on
actual hardware driver for register access.

sdhci_pci implements driver for PCI SDHC controllers using new SDHCI
interface

No kernel config modifications are required, but if you load sdhc
as a module you must switch to sdhci_pci instead.


241519 14-Oct-2012 attilio

Import a FreeBSD port of the FUSE Linux module.
This has been developed during 2 summer of code mandates and being revived
by gnn recently.
The functionality in this commit mirrors entirely content of fusefs-kmod
port, which doesn't need to be installed anymore for -CURRENT setups.

In order to get some sparse technical notes, please refer to:
http://lists.freebsd.org/pipermail/freebsd-fs/2012-March/013876.html

or to the project branch:
svn://svn.freebsd.org/base/projects/fuse/

which also contains granular history of changes happened during port
refinements. This commit does not came from the branch reintegration
itself because it seems svn is not behaving properly for this functionaly
at the moment.

Partly Sponsored by: Google, Summer of Code program 2005, 2011
Originally submitted by: ilya, Csaba Henk <csaba-ml AT creo DOT hu >
In collabouration with: pho
Tested by: flo, gnn, Gustau Perez,
Kevin Oberman <rkoberman AT gmail DOT com>
MFC after: 2 months


241470 11-Oct-2012 grehan

Virtio SCSI driver

Submitted by: Bryan Venteicher bryanv at daemoninthecloset dot org
Reviewed by: grehan


241351 08-Oct-2012 obrien

Restrict the module to varied environments.


240868 23-Sep-2012 pjd

Add TRIM support.

The code builds a map of regions that were freed. On every write the
code consults the map and eventually removes ranges that were freed
before, but are now overwritten.

Freed blocks are not TRIMed immediately. There is a tunable that defines
how many txg we should wait with TRIMming freed blocks (64 by default).

There is a low priority thread that TRIMs ranges when the time comes.
During TRIM we keep in-flight ranges on a list to detect colliding
writes - we have to delay writes that collide with in-flight TRIMs in
case something will be reordered and write will reached the disk before
the TRIM. We don't have to do the same for in-flight writes, as
colliding writes just remove ranges to TRIM.

Sponsored by: multiplay.co.uk

This work includes some important fixes and some improvements obtained
from the zfsonlinux project, including TRIMming entire vdevs on pool
create/add/attach and on pool import for spare and cache vdevs.

Obtained from: zfsonlinux
Submitted by: Etienne Dechamps <etienne.dechamps@ovh.net>


240619 17-Sep-2012 jimharris

Add nvme(4) and nvd(4) Makefiles to the tree.

Noticed by: pluknet
Pointy-hat to: jimharris


240618 17-Sep-2012 jimharris

Integrate nvme(4) and nvd(4) into the amd64 and i386 builds.

Sponsored by: Intel


240494 14-Sep-2012 glebius

o Create directory sys/netpfil, where all packet filters should
reside, and move there ipfw(4) and pf(4).

o Move most modified parts of pf out of contrib.

Actual movements:

sys/contrib/pf/net/*.c -> sys/netpfil/pf/
sys/contrib/pf/net/*.h -> sys/net/
contrib/pf/pfctl/*.c -> sbin/pfctl
contrib/pf/pfctl/*.h -> sbin/pfctl
contrib/pf/pfctl/pfctl.8 -> sbin/pfctl
contrib/pf/pfctl/*.4 -> share/man/man4
contrib/pf/pfctl/*.5 -> share/man/man5

sys/netinet/ipfw -> sys/netpfil/ipfw

The arguable movement is pf/net/*.h -> sys/net. There are
future plans to refactor pf includes, so I decided not to
break things twice.

Not modified bits of pf left in contrib: authpf, ftp-proxy,
tftp-proxy, pflogd.

The ipfw(4) movement is planned to be merged to stable/9,
to make head and stable match.

Discussed with: bz, luigi


240443 13-Sep-2012 np

Update interface to firmware 1.6.2 and include the firmware in the driver.

Obtained from: Chelsio
MFC after: 1 week


240420 12-Sep-2012 jimharris

Remove some trailing whitespace.


240327 10-Sep-2012 gnn

Remove scsi_low_pisa.c from the module Makefile to keep in line
with r240325.


240233 08-Sep-2012 glebius

Merge the projects/pf/head branch, that was worked on for last six months,
into head. The most significant achievements in the new code:

o Fine grained locking, thus much better performance.
o Fixes to many problems in pf, that were specific to FreeBSD port.

New code doesn't have that many ifdefs and much less OpenBSDisms, thus
is more attractive to our developers.

Those interested in details, can browse through SVN log of the
projects/pf/head branch. And for reference, here is exact list of
revisions merged:

r232043, r232044, r232062, r232148, r232149, r232150, r232298, r232330,
r232332, r232340, r232386, r232390, r232391, r232605, r232655, r232656,
r232661, r232662, r232663, r232664, r232673, r232691, r233309, r233782,
r233829, r233830, r233834, r233835, r233836, r233865, r233866, r233868,
r233873, r234056, r234096, r234100, r234108, r234175, r234187, r234223,
r234271, r234272, r234282, r234307, r234309, r234382, r234384, r234456,
r234486, r234606, r234640, r234641, r234642, r234644, r234651, r235505,
r235506, r235535, r235605, r235606, r235826, r235991, r235993, r236168,
r236173, r236179, r236180, r236181, r236186, r236223, r236227, r236230,
r236252, r236254, r236298, r236299, r236300, r236301, r236397, r236398,
r236399, r236499, r236512, r236513, r236525, r236526, r236545, r236548,
r236553, r236554, r236556, r236557, r236561, r236570, r236630, r236672,
r236673, r236679, r236706, r236710, r236718, r237154, r237155, r237169,
r237314, r237363, r237364, r237368, r237369, r237376, r237440, r237442,
r237751, r237783, r237784, r237785, r237788, r237791, r238421, r238522,
r238523, r238524, r238525, r239173, r239186, r239644, r239652, r239661,
r239773, r240125, r240130, r240131, r240136, r240186, r240196, r240212.

I'd like to thank people who participated in early testing:

Tested by: Florian Smeets <flo freebsd.org>
Tested by: Chekaluk Vitaly <artemrts ukr.net>
Tested by: Ben Wilber <ben desync.com>
Tested by: Ian FREISLICH <ianf cloudseed.co.za>


240170 06-Sep-2012 jhb

Add a kernel module on pc98 for the ct(4) driver.


240135 05-Sep-2012 kib

Add support for new Intel on-CPU Bull Mountain random number
generator, found on IvyBridge and supposedly later CPUs, accessible
with RDRAND instruction.

From the Intel whitepapers and articles about Bull Mountain, it seems
that we do not need to perform post-processing of RDRAND results, like
AES-encryption of the data with random IV and keys, which was done for
Padlock. Intel claims that sanitization is performed in hardware.

Make both Padlock and Bull Mountain random generators support code
covered by kernel config options, for the benefit of people who prefer
minimal kernels. Also add the tunables to disable hardware generator
even if detected.

Reviewed by: markm, secteam (simon)
Tested by: bapt, Michael Moll <kvedulv@kvedulv.de>
MFC after: 3 weeks


240011 02-Sep-2012 dim

Partially revert r239959, after actually fixing most of the clang
warnings in sys/gnu/fs/xfs. The only warnings that still need to be
suppressed are those about array bound overruns of flexible array
members in xfs_dir2_{block,sf}.c, which are too expensive (in terms of
cascading code changes) to fix.

MFC after: 1 week
X-MFC-With: r239959


239971 01-Sep-2012 rpaulo

The dtnfsclient module dependency should only be added if the old NFS
client support was compiled in.


239959 31-Aug-2012 dim

Work around several warnings from clang in the xfs filesystem, when
linking it statically into the kernel. With our gcc in base there are
no warnings, so also remove the WERROR= from the module makefile.

Noted by: Eir Nym <eirnym@gmail.com>
MFC after: 1 week


239868 29-Aug-2012 dim

Remove workaround for the clang 3.2 warning in ah_eeprom_9287.c, since
the fix has been applied now.


239462 20-Aug-2012 dim

Upgrade our copy of llvm/clang to trunk r162107. With thanks to
Benjamin Kramer and Joerg Sonnenberger for their input and fixes.


239375 18-Aug-2012 kib

Add drm and i915 ioctl translations for 32 bit process on 64 bit host.

Submitted by: meowthink@gmail.com
MFC after: 2 weeks


239344 17-Aug-2012 np

Support for TCP DDP (Direct Data Placement) in the T4 TOE module.

Basically, this is automatic rx zero copy when feasible. TCP payload is
DMA'd directly into the userspace buffer described by the uio submitted
in soreceive by an application.

- Works with sockets that are being handled by the TCP offload engine
of a T4 chip (you need t4_tom.ko module loaded after cxgbe, and an
"ifconfig +toe" on the cxgbe interface).
- Does not require any modification to the application.
- Not enabled by default. Use hw.t4nex.<X>.toe.ddp="1" to enable it.


239340 16-Aug-2012 jkim

Merge ACPICA 20120816.


239281 15-Aug-2012 gonzo

Merging of projects/armv6, part 10

- Support for Texas Instruments SoCs:
- AM335x
- OMAP4

- Kernel configs, DTS for Beaglebone and Pandaboard

Submitted by: Ben Gray, Damjan Marion


239275 15-Aug-2012 gonzo

Merging of projects/armv6, part 5

- Driver for SMSC LAN95XX and LAN8710A ethernet controllers
- Driver for LAN8710A PHY

Submitted by: Ben Gray, Damjan Marion, Tim Kientzle


239264 14-Aug-2012 np

Assume INET, INET6, and TCP_OFFLOAD when the driver is built out of tree and
KERNBUILDDIR is not set.

MFC after: 2 weeks


238894 30-Jul-2012 bz

Remove opt_enc.h from files committed with r235911. enc(4) is the
'encapsulating interface' used with IPsec and has nothing to do with
storage 'enclosure' services.

MFC after: 3 days
Noticed while: debugging why enc(4) is no longer automatically created


238805 26-Jul-2012 mav

Refactor enclosure manegement support in ahci(4). Move it out into separate
subdevice ahciem. Emulate SEMB SES device from AHCI LED interface to expose
it to users in form of ses(4) CAM device. If we ever see AHCI controllers
supporting SES of SAF-TE over I2C as described by specification, they should
fit well into this new picture.

Sponsored by: iXsystems, Inc.


238710 23-Jul-2012 adrian

Begin separating out the TX DMA setup in preparation for TX EDMA support.

* Introduce TX DMA setup/teardown methods, mirroring what's done in
the RX path.

Although the TX DMA descriptor is setup via ath_desc_alloc() /
ath_desc_free(), there TX status descriptor ring will be allocated
in this path.

* Remove some of the TX EDMA capability probing from the RX path and
push it into the new TX EDMA path.


238381 11-Jul-2012 jkim

Merge ACPICA 20120711.


238366 11-Jul-2012 gnn

Initial commit of an I/O provider for DTrace on FreeBSD.

These probes are most useful when looking into the structures
they provide, which are listed in io.d. For example:

dtrace -n 'io:genunix::start { printf("%d\n", args[0]->bio_bcount); }'

Note that the I/O systems in FreeBSD and Solaris/Illumos are sufficiently
different that there is not a 1:1 mapping from scripts that work
with one to the other.
MFC after: 1 month


238181 06-Jul-2012 kib

Add a source file needed for module linking.

MFC after: 4 days


238148 05-Jul-2012 jfv

Sync with Intel internal source:
shared code update and small changes in core required
Add support for new i210/i211 devices
Improve queue calculation based on mac type

MFC after:5 days


238056 03-Jul-2012 adrian

Link in the new RX EDMA routines.


238026 02-Jul-2012 marcel

There's no need to make filemon specific to i386 and amd64. All
LP64 architectures define elf64_freebsd_sysvec and all ILP32
architectures define elf32_freebsd_sysvec.


237981 02-Jul-2012 mav

Add acpi_asus_wmi(4) -- driver for random extras found on WMI-compatible
Asus laptops. It is alike to acpi_asus(4), but uses WMI interface instead
of separate ACPI device.

On Asus EeePC T101MT netbook it allows to handle hotkeys and on/off WLAN,
Bluetooth, LCD backlight, camera, cardreader and touchpad.

On Asus UX31A ultrabook it allows to handle hotkeys, on/off WLAN, Bluetooth,
Wireless LED, control keyboard backlight brightness, monitor temperature
and fan speed. LCD brightness control doesn't work now for unknown reason,
possibly requiring some video card initialization.

Sponsored by: iXsystems, Inc.


237819 29-Jun-2012 np

cxgbe(4): support for IPv6 TSO and LRO.

Submitted by: bz (this is a modified version of that patch)


237605 26-Jun-2012 takawata

Add nand core module and module dependency information.

Reviewed by:gber


237560 25-Jun-2012 uqs

Fix 'make depend'.


237263 19-Jun-2012 np

- Updated TOE support in the kernel.

- Stateful TCP offload drivers for Terminator 3 and 4 (T3 and T4) ASICs.
These are available as t3_tom and t4_tom modules that augment cxgb(4)
and cxgbe(4) respectively. The cxgb/cxgbe drivers continue to work as
usual with or without these extra features.

- iWARP driver for Terminator 3 ASIC (kernel verbs). T4 iWARP in the
works and will follow soon.

Build-tested with make universe.

30s overview
============
What interfaces support TCP offload? Look for TOE4 and/or TOE6 in the
capabilities of an interface:
# ifconfig -m | grep TOE

Enable/disable TCP offload on an interface (just like any other ifnet
capability):
# ifconfig cxgbe0 toe
# ifconfig cxgbe0 -toe

Which connections are offloaded? Look for toe4 and/or toe6 in the
output of netstat and sockstat:
# netstat -np tcp | grep toe
# sockstat -46c | grep toe

Reviewed by: bz, gnn
Sponsored by: Chelsio communications.
MFC after: ~3 months (after 9.1, and after ensuring MFC is feasible)


236884 11-Jun-2012 mm

Introduce "feature flags" for ZFS pools (bump SPA version to 5000).
Add first feature "com.delphix:async_destroy" (asynchronous destroy
of ZFS datasets).
Implement features support in ZFS boot code.

Illumos revisions merged:
13700:2889e2596bd6
13701:1949b688d5fb
2619 asynchronous destruction of ZFS file systems
2747 SPA versioning with zfs feature flags

References:
https://www.illumos.org/issues/2619
https://www.illumos.org/issues/2747

Obtained from: illumos (issue #2619, #2747)
MFC after: 1 month


236621 05-Jun-2012 obrien

Only build filemon(4) on x86.


236592 04-Jun-2012 obrien

Add the 'filemon' device. 'filemon' is a kernel module that provides a device
interface for processes to record system calls of its children.

Submitted by: Juniper Networks.


236549 04-Jun-2012 gber

Restore changes accidentally removed in r235537.

Noticed by: avg


236514 03-Jun-2012 uqs

Fix make depend


236311 30-May-2012 uqs

Unbreak make depend.


236256 29-May-2012 luigi

add support to build netmap as a module,
but for the time being keep it disconnected from the main build.

MFC after: 3 days


235964 25-May-2012 bz

MFp4 bz_ipv6_fast:

Add TSO6 and LRO/IPv6 support.
Fix the module Makefile to at least properly inlcude opt_inet6.h
and allow builds without INET or INET6.

Sponsored by: The FreeBSD Foundation
Sponsored by: iXsystems

Reviewed by: gnn (as part of the whole)
MFC After: 3 days


235963 25-May-2012 bz

MFp4 bz_ipv6_fast:

Allow LRO to work on IPv6 as well.
Fix the module Makefile to at least properly inlcude opt_inet6.h
and allow builds without INET or INET6.

Sponsored by: The FreeBSD Foundation
Sponsored by: iXsystems

Reviewed by: gnn (as part of the whole)
MFC After: 3 days


235911 24-May-2012 mav

MFprojects/zfsd:
Revamp the CAM enclosure services driver.
This updated driver uses an in-kernel daemon to track state changes and
publishes physical path location information\for disk elements into the
CAM device database.

Sponsored by: Spectra Logic Corporation
Sponsored by: iXsystems, Inc.
Submitted by: gibbs, will, mav


235879 24-May-2012 obrien

style.Makefile(5)


235859 23-May-2012 kib

Enable drm2 modules build.

Sponsored by: The FreeBSD Foundation
MFC after: 1 month


235847 23-May-2012 kib

The drm2 modules makefiles commit.
Still not attached to the build.

Sponsored by: The FreeBSD Foundation
MFC after: 1 month


235782 22-May-2012 kib

A rewrite of the i810 bits of the agp(4) driver. New driver supports
operations required by GEMified i915.ko. It also attaches to SandyBridge
and IvyBridge CPU northbridges now.

Sponsored by: The FreeBSD Foundation
MFC after: 1 month


235775 22-May-2012 uqs

Fix make depend.


235680 20-May-2012 adrian

Migrate most of the beacon handling functions out to if_ath_beacon.c.

This is also in preparation for supporting AR9300 and later NICs.


235679 20-May-2012 adrian

Migrate the TDMA management functions out of if_ath.c into if_ath_tdma.c.

There's some TX path TDMA code in if_ath_tx.c which should be migrated
out, but first I should likely try and verify/fix/repair the TDMA support
in 9.x and -HEAD.


235677 20-May-2012 adrian

.. and update this.


235537 17-May-2012 gber

Import work done under project/nand (@235533) into head.

The NAND Flash environment consists of several distinct components:
- NAND framework (drivers harness for NAND controllers and NAND chips)
- NAND simulator (NANDsim)
- NAND file system (NAND FS)
- Companion tools and utilities
- Documentation (manual pages)

This work is still experimental. Please use with caution.

Obtained from: Semihalf
Supported by: FreeBSD Foundation, Juniper Networks


235233 10-May-2012 bschmidt

Add support for Ralink RT2800/RT3000 chipsets.

Thanks to ray@, Sevan and Sergey Dyatko for feedback and testing!

Obtained from: OpenBSD
MFC after: 3 weeks


235078 06-May-2012 uqs

Fix make depend


234866 01-May-2012 uqs

Fix make depend.


234848 30-Apr-2012 mav

Add to GEOM RAID class module, supporting the DDF metadata format, as
defined by the SNIA Common RAID Disk Data Format Specification v2.0.

Supports multiple volumes per array and multiple partitions per disk.
Supports standard big-endian and Adaptec's little-endian byte ordering.
Supports all single-layer RAID levels. Dual-layer RAID levels except
RAID10 are not supported now because of GEOM RAID design limitations.

Some work is still to be done, but the present code already manages basic
interoperation with RAID BIOS of the Adaptec 1430SA SATA RAID controller.

MFC after: 1 month
Sponsored by: iXsystems, Inc.


234524 21-Apr-2012 marius

o Fixes:
- When switching to 4-bit operation, send a SET_CLR_CARD_DETECT command
to disconnect the card-detect pull-up resistor from the DAT3 line before
sending the SET_BUS_WIDTH command.
- Add the missing "reserved" zero entry to the mantissa table used to
decode various CSD fields. This was causing SD cards to report that they
could run at 30 MHz instead of the maximum 25 MHz mandated in the spec.
o Enhancements:
- At the MMC layer, format various info from the CID into a string that
uniquely identifies the card instance (manufacturer number, serial
number, product name and revision, etc). Export it as an instance
variable.
- At the MMCSD layer, display the formatted card ID string, and also
report the clock speed of the hardware (not the card's max speed), and
the number of bits and number of blocks per transfer. It comes out like
this now:
mmcsd0: 968MB <SD SD01G 8.0 SN 276886905 MFG 08/2008 by 3 SD> at mmc0
22.5MHz/4bit/128-block
o Use DEVMETHOD_END.
o Use NULL instead of 0 for pointers.

PR: 156496
Submitted by: Ian Lepore
MFC after: 1 week


234481 20-Apr-2012 delphij

Fix build.


234458 19-Apr-2012 mav

Add to GEOM RAID class module for reading non-degraded RAID5 volumes and
some environment to differentiate 4 possible RAID5 on-disk layouts.

Tested with Intel and AMD RAID BIOSes.

MFC after: 2 weeks


234427 18-Apr-2012 marcel

Compensate for the replacement of uart_cpu_{amd64|i386}.c with
uart_cpu_x86.c

Pointy hat: marcel


234425 18-Apr-2012 jpaetzel

Unbreak tinderbox.

Fix FreeBSD paradigms in the upstream code.

PR: bin/166933
Submitted by: Garrett Cooper <yanegomi@gmail.com>


234284 14-Apr-2012 bz

Fix LINT builds after r234233; not sure why modules need DEBUG by default.


234233 13-Apr-2012 jpaetzel

Update to version 2.3.1.0

Obtained from: Daniel Braniss <danny@cs.huji.ac.il>


234183 12-Apr-2012 jhb

Add OFED and the associated options and drivers to x86 LINT builds:
- Mark 'sdp' as requiring 'inet'.
- Always include "opt_inet.h" and "opt_inet6.h" and modify the IB
driver Makefiles to honor WITH/WITHOUT_INET/INET6/_SUPPORT options
to determine what should be enabled during a module build.
- Fix the mlxen(4) driver and the core IB code to compile without
if INET is disabled (including when both INET and INET6 are disabled).

Reviewed by: bz
MFC after: 2 weeks


233711 30-Mar-2012 ambrisko

MFhead_mfi r227068
First cut of new HW support from LSI and merge into FreeBSD.
Supports Drake Skinny and ThunderBolt cards.
MFhead_mfi r227574
Style
MFhead_mfi r227579
Use bus_addr_t instead of uintXX_t.
MFhead_mfi r227580
MSI support
MFhead_mfi r227612
More bus_addr_t and remove "#ifdef __amd64__".
MFhead_mfi r227905
Improved timeout support from Scott.
MFhead_mfi r228108
Make file.
MFhead_mfi r228208
Fixed botched merge of Skinny support and enhanced handling
in call back routine.
MFhead_mfi r228279
Remove superfluous !TAILQ_EMPTY() checks before TAILQ_FOREACH().
MFhead_mfi r228310
Move mfi_decode_evt() to taskqueue.
MFhead_mfi r228320
Implement MFI_DEBUG for 64bit S/G lists.
MFhead_mfi r231988
Restore structure layout by reverting the array header to
use [0] instead of [1].
MFhead_mfi r232412
Put wildcard pattern later in the match table.
MFhead_mfi r232413
Use lower case for hexadecimal numbers to match surrounding
style.
MFhead_mfi r232414
Add more Thunderbolt variants.
MFhead_mfi r232888
Don't act on events prior to boot or when shutting down.
Add hw.mfi.detect_jbod_change to enable or disable acting
on JBOD type of disks being added on insert and removed on
removing. Switch hw.mfi.msi to 1 by default since it works
better on newer cards.
MFhead_mfi r233016
Release driver lock before taking Giant when deleting children.
Use TAILQ_FOREACH_SAFE when items can be deleted. Make code a
little simplier to follow. Fix a couple more style issues.
MFhead_mfi r233620
Update mfi_spare/mfi_array with the actual number of elements
for array_ref and pd. Change these max. #define names to avoid
name space collisions. This will require an update to mfiutil
It avoids mfiutil having to do a magic calculation.

Add a note and #define to state that a "SYSTEM" disk is really
what the firmware calls a "JBOD" drive.

Thanks to the many that helped, LSI for the initial code drop,
mav, delphij, jhb, sbruno that all helped with code and testing.


233628 28-Mar-2012 fabient

Add software PMC support.

New kernel events can be added at various location for sampling or counting.
This will for example allow easy system profiling whatever the processor is
with known tools like pmcstat(8).

Simultaneous usage of software PMC and hardware PMC is possible, for example
looking at the lock acquire failure, page fault while sampling on
instructions.

Sponsored by: NETASQ
MFC after: 1 month


233411 24-Mar-2012 gonzo

Jusy use i386 version of cyclic_machdep.c on all supported architectures.
It's generic enough to cover all of them.


233410 24-Mar-2012 gonzo

Make lockstat and profile modules x86-only


233354 23-Mar-2012 dim

Work around the following clang warning in mps(4):

sys/dev/mps/mps_sas.c:861:1: error: function 'mpssas_discovery_timeout' is not needed and will not be emitted [-Werror,-Wunneeded-internal-declaration]
mpssas_discovery_timeout(void *data)
^

Because the driver is obtained from upstream, we don't want to modify
it; just silence the warning instead, it is harmless.

MFC after: 3 days


233177 19-Mar-2012 ae

Connect geom_part_ldm module to the build.

MFC after: 1 month


233049 16-Mar-2012 rmh

Remove gratuitous DEBUG_FLAGS="-g" setting (this is already the default
option with GENERIC kernels).

Reviewed by: ken


232946 13-Mar-2012 bschmidt

Update the rt2860's firmware and add a Makefile for the module. While
here remove the ucode header file which was used to generate the fw files
but by now is outdated.

Reviewed by: ray
Obtained from: OpenBSD


232937 13-Mar-2012 adrian

Add module building Makefile entries for NFSv4 and POSIX.1e ACL handling.


232921 13-Mar-2012 melifaro

Use rt_numfibs variable instead of compile-time RT_NUMFIBS.

Reviewed by: glebius (previous version)
Approved by: kib(mentor), ae(mentor)


232614 06-Mar-2012 bz

Provide wbwd(4), a driver for the watchdog timer found on various
Winbond Super I/O chips.

With minor efforts it should be possible the extend the driver to support
further chips/revisions available from Winbond. In the simplest case
only new IDs need to be added, while different chipsets might require
their own function to enter extended function mode, etc.

Sponsored by: Sandvine Incorporated ULC (in 2011)
Reviewed by: emaste, brueffer
MFC after: 2 weeks


232540 05-Mar-2012 hselasky

Add DWC OTG module to ARM builds.

MFC after: 1 week


232506 04-Mar-2012 eadler

Explicitly list dependency

PR: misc/160463
Submitted by: Garrett Cooper <yanegomi@gmail.com>
Helped by: kan
Approved by: cperciva
MFC after: 3 days


232337 01-Mar-2012 mav

Add driver for the RME HDSPe AIO/RayDAT sound cards -- snd_hdspe(4).
Cards are expensive and so rare, so leave the driver as module.

Submitted by: Ruslan Bukin <br@bsdpad.com>
MFC after: 2 weeks


232263 28-Feb-2012 dim

Define several extra macros in bsd.sys.mk and sys/conf/kern.pre.mk, to
get rid of testing explicitly for clang (using ${CC:T:Mclang}) in
individual Makefiles.

Instead, use the following extra macros, for use with clang:
- NO_WERROR.clang (disables -Werror)
- NO_WCAST_ALIGN.clang (disables -Wcast-align)
- NO_WFORMAT.clang (disables -Wformat and friends)
- CLANG_NO_IAS (disables integrated assembler)
- CLANG_OPT_SMALL (adds flags for extra small size optimizations)

As a side effect, this enables setting CC/CXX/CPP in src.conf instead of
make.conf! For clang, use the following:

CC=clang
CXX=clang++
CPP=clang-cpp

MFC after: 2 weeks


232176 26-Feb-2012 jhibbits

Fix the scc(4) module build. Without the file it's missing a required symbol.

Approved by: nwhitehorn (mentor)
MFC after: 3 days


232016 23-Feb-2012 yongari

Connect smcphy(4) to mii module build.


231982 21-Feb-2012 dim

When building with clang, disable -Wformat-security for
sys/dev/hpt27xx/osm_bsd.c, since it gets the following warnings:

sys/dev/hpt27xx/osm_bsd.c:1180:25: error: format string is not a string literal (potentially insecure) [-Werror,-Wformat-security]
S_IRUSR | S_IWUSR, driver_name);
^~~~~~~~~~~
@/dev/hpt27xx/hpt27xx_config.h:46:21: note: expanded from:
#define driver_name hpt27xx_driver_name
^~~~~~~~~~~~~~~~~~~

Since 'hpt27xx_driver_name' is a constant string symbol (coming from the
proprietary hpt27xx_lib.o file), there is no security problem.

Because this driver is provided by the vendor, and applying changes
requires re-certification and other bureaucratic exercises, just disable
the warning for now.

MFC after: 1 week


231927 20-Feb-2012 adrian

Break out the radar code into a separate source file.

This mirrors the internal HAL organisation and reduces the differences
between the HAL codebases slightly.

Obtained from: Atheros


231844 16-Feb-2012 jkim

Merge ACPICA 20120215.


231838 16-Feb-2012 uqs

Fix 'make depend'.


231512 11-Feb-2012 bz

Depend on the relevant header files.


231437 10-Feb-2012 luigi

Add a driver for Emulex OneConnect ethernet cards (10 Gbit PCIe)
A manpage will come in a future commit.

Submitted by: Naresh Raju Gottumukkala (emulex)


231296 09-Feb-2012 jimharris

Remove explicit CC assignment in isci(4) Makefile to allow for building
with clang. Also fix a number of warnings uncovered when building with
clang around some implicit enum conversions.

Sponsored by: Intel
Approved by: scottl


231136 07-Feb-2012 jimharris

Fix r231134. svn:keywords needs to be 'FreeBSD=%H', not 'FreeBSD:%H'.

Approved by: scottl


231134 07-Feb-2012 jimharris

Add svn:keywords for isci driver files.

Sponsored by: Intel
Approved by: scottl


231118 07-Feb-2012 dim

Consistently set RPCGEN_CPP when running rpcgen, so the C preprocessor
set via ${CPP} is used, instead of always using hardcoded /usr/bin/cpp.

MFC after: 1 week


231014 05-Feb-2012 jhibbits

Add exca to powerpc modules build as a dependency for cbb.


230972 04-Feb-2012 rmh

Add MK_SOURCELESS build option. Setting MK_SOURCELESS to "no" will disable
kernel modules that include binary-only code.

More fine-grained control is provided via MK_SOURCELESS_HOST (for native code
that runs on host CPU) and MK_SOURCELESS_UCODE (for microcode).

Reviewed by: julian, delphij, freebsd-arch
Approved by: kib (mentor)
MFC after: 2 weeks


230915 02-Feb-2012 joel

Remove leftovers from previous commits.

Approved by: jhb


230898 02-Feb-2012 pfg

Cleanup some sound headers that don't need to be in the modules makefiles.

Approved by: jhb (mentor)
MFC after: 1 week


230859 01-Feb-2012 jhibbits

Enable the pccard/cardbus modules for powerpc.

Approved by: nwhitehorn (mentor)


230843 31-Jan-2012 jimharris

Add isci(4) driver for amd64 and i386 targets.

The isci driver is for the integrated SAS controller in the Intel C600
(Patsburg) chipset. Source files in sys/dev/isci directory are
FreeBSD-specific, and sys/dev/isci/scil subdirectory contains
an OS-agnostic library (SCIL) published by Intel to control the SAS
controller. This library is used primarily as-is in this driver, with
some post-processing to better integrate into the kernel build
environment.

isci.4 and a README in the sys/dev/isci directory contain a few
additional details.

This driver is only built for amd64 and i386 targets.

Sponsored by: Intel
Reviewed by: scottl
Approved by: scottl


230775 30-Jan-2012 jfv

New hardware support: Intel X540 adapter support added.
Some shared code reorganization along with the new adapter.
Sync changes to OACTIVE in igb into this driver.
Misc small fixes.


230592 26-Jan-2012 ken

Bring in the LSI-supported version of the mps(4) driver.

This involves significant changes to the mps(4) driver, but is not a
complete rewrite.

Some of the changes in this version of the driver:
- Integrated RAID (IR) support.
- Support for WarpDrive controllers.
- Support for SCSI protection information (EEDP).
- Support for TLR (Transport Level Retries), needed for tape drives.
- Improved error recovery code.
- ioctl interface compatible with LSI utilities.

mps.4: Update the mps(4) driver man page somewhat for the driver
changes. The list of supported hardware still needs to be
updated to reflect the full list of supported cards.

conf/files: Add the new driver files.

mps/mpi/*: Updated version of the MPI header files, with a BSD style
copyright.

mps/*: See above for a description of the new driver features.

modules/mps/Makefile:
Add the new mps(4) driver files.

Submitted by: Kashyap Desai <Kashyap.Desai@lsi.com>
Reviewed by: ken
MFC after: 1 week


230443 22-Jan-2012 bz

Fix ip_divert handling of inet and inet6 and module building some more.

Properly sort the "carp" case in modules/Makefile after it was renamed.

Reported by: bde (most)
Reviewed by: bde
MFC after: 3 days


230401 20-Jan-2012 pfg

Replace GPLd headers from the Maestro3 driver with BSD licensed
versions derived from /usr/ports/audio/oss.

The particular headers used were taken from the
attic/drv/oss_allegro directory and are mostly identical
to the previous files.

The Maestro3 driver is now free from the GPL.

NOTE: due to lack of testers this driver is being
considered for deprecation and removal.

PR: kern/153920
Approved by: jhb (mentor)
MFC after: 2 weeks


230303 18-Jan-2012 schweikh

Connect the bktr module(s) to the amd64 build.

MFC after: 7 days


230273 17-Jan-2012 adrian

Tidy-up.


230153 15-Jan-2012 adrian

Fix the situation where net80211 is built with IEEE80211_SUPPORT_TDMA but a module
is used.

Although the module _builds_, it fails to load because of a missing symbol from
ieee80211_tdma.c.

Specifics:

* Always build ieee80211_tdma.c in the module;
* only compile in the code if IEEE80211_SUPPORT_TDMA is defined.


230151 15-Jan-2012 adrian

Begin breaking out the AR71xx specific functional drivers into modules.

The USB code as it stands includes the bus glue along _with_ the controller
code. So the ohci/ehci modules actually build the USB controller code and
the PCI bus glue.

It'd be nice to ship separate modules for the PCI glue and the USB
controller (so for example if there were a USB controller hanging off
the internal SoC bus as well as an external PCI device) it could be done.

This is primarily done to save a few bytes here and there on embedded
systems with limited flash space for kernels - a very limited (sub-1MB)
space may be available for the kernel and may only support gzip encoding.
The rootfs can be LZMA compressed.


230150 15-Jan-2012 adrian

Allow building the GPIO bus and associated bits as modules.

This is primarily done to save a few bytes here and there on embedded
systems with limited flash space for kernels - a very limited (sub-1MB)
space may be available for the kernel and may only support gzip encoding.
The rootfs can be LZMA compressed.


230130 15-Jan-2012 mav

Major snd_hda driver rewrite:
- Huge old hdac driver was split into three independent pieces: HDA
controller driver (hdac), HDA CODEC driver (hdacc) and HDA sudio function
driver (hdaa).
- Support for multichannel recording was added. Now, as specification
defines, driver checks input associations for pins with sequence numbers
14 and 15, and if found (usually) -- works as before, mixing signals
together. If it doesn't, it configures input association as multichannel.
- Signal tracer was improved to look for cases where several DACs/ADCs in
CODEC can work with the same audio signal. If such case found, driver
registers additional playback/record stream (channel) for the pcm device.
- New controller streams reservation mechanism was implemented. That
allows to have more pcm devices then streams supported by the controller
(usually 4 in each direction). Now it limits only number of simultaneously
transferred audio streams, that is rarely reachable and properly reported
if happens.
- Codec pins and GPIO signals configuration was exported via set of
writable sysctls. Another sysctl dev.hdaa.X.reconfig allows to trigger
driver reconfiguration in run-time.
- Driver now decodes pins location and connector type names. In some cases
it allows to hint user where on the system case connectors, related to the
pcm device, are located. Number of channels supported by pcm device,
reported now (if it is not 2), should also make search easier.
- Added workaround for digital mic on some Asus laptops/netbooks.

MFC after: 2 months
Sponsored by: iXsystems, Inc.


229989 11-Jan-2012 jkim

Merge ACPICA 20120111.


229981 11-Jan-2012 pfg

Replace GPL'd headers in the emu10kx snd driver code.

This uses the emuxkireg.h already used in the emu10k1
snd driver. Special thanks go to Alexander Motin as
he was able to find some errors and reverse engineer
some wrong values in the emuxkireg header.

The emu10kx driver is now free from the GPL.

PR: 153901
Tested by: mav, joel
Approved by: jhb (mentor)
MFC after: 2 weeks


229970 11-Jan-2012 adrian

Introduce wtap, the beginnings of a net80211 wlan simulator.

This introduces:

* a basic wtap interface
* a HAL, which implements an abstraction layer for implementing
different device behavious;
* A visibility plugin, which allows for control over which nodes
see other nodes (useful for mesh work.)

It doesn't yet implement sta/adhoc/hostap modes but these are quite
feasible to implement.

Monthadar uses it to do 802.11s mesh verification.

The userland tools will be committed in a follow-up commit.

Submitted by: Monthadar Al Jaberi <monthadar@gmail.com>


229887 09-Jan-2012 jkim

Enable hardware RNG for VIA Nano processors.

PR: kern/163974


229560 05-Jan-2012 adrian

Re-enable this bit of logic from before, which only sets a default
opt_ah.h file if KERNBUILDDIR isn't defined.

For now, AH_SUPPORT_AR5416 is required, so I'll just fix any
configuration file in /usr/src which is missing this option.

Pointy hat when things do break to: adrian


229537 04-Jan-2012 ray

GEOM_UNCOMPRESS module, can be used with uzip images and with new ulzma images.

Approved by: adrian (mentor)


229519 04-Jan-2012 jhb

Fix 'make clean' for this module so it cleans up the generated gssd.h.

MFC after: 1 week


229430 03-Jan-2012 pfg

Replace a GPL'd header in the emu10k1 snd driver code.

This brings in the emuxkireg.h from NetBSD (dev/pci) which
is used for the same purpose but is smaller. The emu10k1
is now free from the GPL.

PR: 153901
Obtained from: NetBSD
Approved by: core (mentor implicit)
MFC after: 2 weeks


229032 30-Dec-2011 marius

Add header required by cfi_bus_fdt.c.


228994 30-Dec-2011 dim

Disable several instances instances of clang's -Wself-assign warning.
All of these are harmless, and are in fact used to shut up warnings from
lint.

While here, remove -Wno-missing-prototypes from the xfs module
Makefile, as I could not reproduce those warnings either with gcc or
clang.

MFC after: 1 week


228981 30-Dec-2011 marcel

Add a module for cfi(4). Build only for arm and powerpc, as there are
only bus attachments only for these.


228978 30-Dec-2011 dim

For several files in sys/dev/drm, disable -Wunused-value when building
with clang. There are several macros in these files that return values,
and in some cases nothing is done with them, but it is completely
harmless. For some other files, also disable -Wconstant-conversion,
since that triggers a false positive with the DMA_BIT_MASK() macro.

MFC after: 1 week


228971 29-Dec-2011 dim

For sys/dev/ce/tau32-ddk.c, disable the following warning when building
with clang:

sys/dev/ce/tau32-ddk.c:1228:37: warning: implicit truncation from 'int' to bitfield changes value from 65532 to 8188 [-Wconstant-conversion]

Since this file is obfuscated C, we can never determine (in a sane way,
at least :) if this points to a real problem or not. The driver has
been in the tree for more than five years, so it most likely isn't.

MFC after: 1 week


228940 28-Dec-2011 delphij

Import the first release of HighPoint RocketRAID 27xx SAS 6Gb/s HBA card
driver. This driver works for FreeBSD/i386 and FreeBSD/amd64 platforms.

Many thanks to HighPoint for providing this driver.

MFC after: 2 weeks


228887 26-Dec-2011 adrian

First pass of LED related code changes.

Migrate the LED code out of if_ath.c and into if_ath_led.c.
These routines are _all_ software based LED blinking.


228865 24-Dec-2011 dim

Amend r228781 by also disabling -Warray-bounds warnings for the asr
module.

MFC after: 1 week


228861 24-Dec-2011 dim

Set WERROR= for the nve(4) module. This driver gives several warnings
with clang, which will probably never be fixed, as it is unmaintained,
and superseded by nfe(4).

MFC after: 1 week


228818 22-Dec-2011 dim

Disable various warnings for the ath module in a more fine-grained way:
only add the option for the specific .c files that need them, like via
sys/conf/files.

MFC after: 1 week


228811 22-Dec-2011 glebius

In FreeBSD we always have bpf(4) API, either real or stub. No need
in detecting presense of 'device bpf'.


228805 22-Dec-2011 dim

Disable -Wconstant-conversion warnings for the aic7xxx module in a more
fine-grained way: only add the option for the specific .c files that
need them, like via sys/conf/files.

MFC after: 1 week


228793 21-Dec-2011 dim

Amend r228783 by also disabling -Wshift-count-negative
-Wshift-count-overflow warnings for the ath module.

MFC after: 1 week


228789 21-Dec-2011 dim

Amend r228779 by also disabling -Wconstant-conversion warnings for the
aic7xxx module.

MFC after: 1 week


228576 16-Dec-2011 glebius

- Rename if_carp.ko to carp.ko.
- carp.ko depends on sha1.c


228561 16-Dec-2011 np

Many updates to cxgbe(4)

- Device configuration via plain text config file. Also able to operate
when not attached to the chip as the master driver.

- Generic "work request" queue that serves as the base for both ctrl and
ofld tx queues.

- Generic interrupt handler routine that can process any event on any
kind of ingress queue (via a dispatch table).

- A couple of new driver ioctls. cxgbetool can now install a firmware
to the card ("loadfw" command) and can read the card's memory
("memdump" and "tcb" commands).

- Lots of assorted information within dev.t4nex.X.misc.* This is
primarily for debugging and won't show up in sysctl -a.

- Code to manage the L2 tables on the chip.

- Updates to cxgbe(4) man page to go with the tunables that have changed.

- Updates to the shared code in common/

- Updates to the driver-firmware interface (now at fw 1.4.16.0)

MFC after: 1 month


228483 14-Dec-2011 hselasky

Implement better support for USB controller suspend and resume.

This patch should remove the need for kldunload of USB
controller drivers at suspend and kldload of USB controller
drivers at resume.

This patch also fixes some build issues in avr32dci.c

MFC after: 2 weeks


228445 12-Dec-2011 eadler

- Add support for ASCII art splash screens in TheDraw format

PR: kern/143370
Submitted by: Antony Mawer <antony@mawer.org>
Reviewed by: gjb (doc)
Reviewed by: des (style)
Approved by: ed
MFC after: 1 month


228431 12-Dec-2011 fabient

Add watchdog support for VIA south bridge chipset.
Tested on VT8251, VX900 but CX700, VX800, VX855 should works.

MFC after: 1 month
Sponsored by: NETASQ


228110 28-Nov-2011 jkim

Merge ACPICA 20111123.


228026 27-Nov-2011 marius

Compile cam_machdep.c if it exists, missed in r228022.


227982 25-Nov-2011 marius

Deorbit the broken amd(4) (see PR 124667), which was superseded by esp(4)
as of r227006.


227662 18-Nov-2011 philip

Limit building sfxge(4) to amd64 only to unbreak the tinderboxen. The driver
should also work on (at least) i386 but hasn't been built/tested for a while.

MFC after: 3 weeks


227652 18-Nov-2011 grehan

Import virtio base, PCI front-end, and net/block/balloon drivers.
Tested on Qemu/KVM, VirtualBox, and BHyVe.

Currently built as modules-only on i386/amd64. Man pages not yet hooked
up, pending review.

Submitted by: Bryan Venteicher bryanv at daemoninthecloset dot org
Reviewed by: bz
MFC after: 4 weeks or so


227650 18-Nov-2011 kevlo

Add unicode support to msdosfs and smbfs; original pathes from imura,
bug fixes by Kuan-Chung Chiu <buganini at gmail dot com>.

Tested by me in production for several days at work.


227569 16-Nov-2011 philip

Add the sfxge(4) device driver, providing support for 10Gb Ethernet adapters
based on Solarflare SFC9000 family controllers. The driver supports jumbo
frames, transmit/receive checksum offload, TCP Segmentation Offload (TSO),
Large Receive Offload (LRO), VLAN checksum offload, VLAN TSO, and Receive Side
Scaling (RSS) using MSI-X interrupts.

This work was sponsored by Solarflare Communications, Inc.

My sincere thanks to Ben Hutchings for doing a lot of the hard work!

Sponsored by: Solarflare Communications, Inc.
MFC after: 3 weeks


227433 10-Nov-2011 adrian

Revert this previous commit for now - although this override unfortunately
results in the HAL being built without HAL debugging/diagnostic support,
the module building process needs to be somehow taught to not build AR5416+
NICs if AH_SUPPORT_AR5416 isn't defined in opt_ah.h .


227421 10-Nov-2011 adrian

Add a missing reference to AR9287.

Sponsored by: Hobnob, Inc.


227413 09-Nov-2011 adrian

Since these include wlan/ath/ah headers and these can change
definitions based on the state of the kernel compile environment,
ensure the opt_*.h files are available.


227412 09-Nov-2011 adrian

Use the system-provided opt_ah.h if one is provided.

This implies that users who are building the driver do so with
KERNBUILDDIR set to the compile/CONFIG directory so the various
opt_* sources can be pulled in.


227085 04-Nov-2011 bz

Always use the opt_*.h options for ipfw.ko, not just when
compiled into the kernel.
Do not try to build the module in case of no INET support but
keep #error calls for now in case we would compile it into the
kernel.

This should fix an issue where the module would fail to enable
IPv6 support from the rc framework, but also other INET and INET6
parts being silently compiled out without giving a warning in the
module case.

While here garbage collect unneeded opt_*.h includes.
opt_ipdn.h is not used anywhere but we need to leave the DUMMYNET
entry in options for conditional inclusion in kernel so keep the
file with the same name.

Reported by: pluknet
Reviewed by: plunket, jhb
MFC After: 3 days


227064 03-Nov-2011 bz

Add QLogic 10 Gigabit Ethernet & CNA Adapter Driver version 1.30
for 3200 and 8200 series cards.

Submitted by: David C Somayajulu (david.somayajulu@qlogic.com),
Qlogic Corporation
MFC After: 3 days


227006 01-Nov-2011 marius

Add a PCI front-end to esp(4) allowing it to support AMD Am53C974 and
replace amd(4) with the former in the amd64, i386 and pc98 GENERIC kernel
configuration files. Besides duplicating functionality, amd(4), which
previously also supported the AMD Am53C974, unlike esp(4) is no longer
maintained and has accumulated enough bit rot over time to always cause
a panic during boot as long as at least one target is attached to it
(see PR 124667).

PR: 124667
Obtained from: NetBSD (based on)
MFC after: 3 days


226995 01-Nov-2011 marius

- Import the common MII bitbang'ing code from NetBSD and convert drivers to
take advantage of it instead of duplicating it. This reduces the size of
the i386 GENERIC kernel by about 4k. The only potential in-tree user left
unconverted is xe(4), which generally should be changed to use miibus(4)
instead of implementing PHY handling on its own, as otherwise it makes not
much sense to add a dependency on miibus(4)/mii_bitbang(4) to xe(4) just
for the MII bitbang'ing code. The common MII bitbang'ing code also is
useful in the embedded space for using GPIO pins to implement MII access.
- Based on lessons learnt with dc(4) (see r185750), add bus barriers to the
MII bitbang read and write functions of the other drivers converted in
order to ensure the intended ordering. Given that register access via an
index register as well as register bank/window switching is subject to the
same problem, also add bus barriers to the respective functions of smc(4),
tl(4) and xl(4).
- Sprinkle some const.

Thanks to the following testers:
Andrew Bliznak (nge(4)), nwhitehorn@ (bm(4)), yongari@ (sis(4) and ste(4))
Thanks to Hans-Joerg Sirtl for supplying hardware to test stge(4).

Reviewed by: yongari (subset of drivers)
Obtained from: NetBSD (partially)


226738 25-Oct-2011 pjd

Don't look for includes in userland directories. There is no need for it
and it breaks building the kernel without userland sources.

Reported by: andre, imp
MFC after: 3 days


226154 08-Oct-2011 marius

- Follow the lead of dcphy(4) and pnphy(4) and move the reminder of the PHY
drivers that only ever attach to a particular MAC driver, i.e. inphy(4),
ruephy(4) and xlphy(4), to the directory where the respective MAC driver
lives and only compile it into the kernel when the latter is also there,
also removing it from miibus.ko and moving it into the module of the
respective MAC driver.
- While at it, rename exphy.c, which comes from NetBSD where the MAC driver
it corresponds to also is named ex(4) instead of xl(4) but that in FreeBSD
actually identifies itself as xlphy(4), and its function names accordingly
for consistency.
- Additionally while at it, fix some minor style issues like whitespace
in the register headers and add multi-inclusion protection to inphyreg.h.


226026 04-Oct-2011 delphij

Add the 9750 SATA+SAS 6Gb/s RAID controller card driver, tws(4). Many
thanks for their contiued support to FreeBSD.

This is version 10.80.00.003 from codeset 10.2.1 [1]

Obtained from: LSI http://kb.lsi.com/Download16574.aspx [1]


225793 27-Sep-2011 bz

Unbreak no-ip and no-inet6 module builds with ipfw. For now continue to
build the ip_fw_pfil.c hooks and ipfw even in case of no-ip under the
assumption that the private L2 hook (which hopefully eventually will be a
pfil hook as well) can still be useful.

Allow building the module without inet as well.

Glanced at by: jhb
MFC after: 3 days


225586 15-Sep-2011 ae

Add IPv6 support to the ng_ipfw(4) [1]. Also add ifdefs to be able
build it with and without INET/INET6 support.

Submitted by: Alexander V. Chernikov <melifaro at yandex-team.ru> [1]
Tested by: Alexander V. Chernikov <melifaro at yandex-team.ru> [1]
Approved by: re (bz)
MFC after: 2 weeks


225518 12-Sep-2011 jhb

Allow the ipfw.ko module built with a kernel to honor any IPFIREWALL_*
options defined in the kernel config. This more closely matches the
behavior of other modules which inherit configuration settings from the
kernel configuration during a kernel + modules build.

Reviewed by: luigi
Approved by: re (kib)
MFC after: 1 week


225517 12-Sep-2011 brueffer

Connect the vxge(4) module to the i386/amd64 build.

Catcher of stupid errors: kib
Approved by: re (kib)


225214 27-Aug-2011 rwatson

Follow up to r225203 refining break-to-debugger run-time configuration
improvements:

(1) Implement new model in previously missed at91 UART driver
(2) Move BREAK_TO_DEBUGGER and ALT_BREAK_TO_DEBUGGER from opt_comconsole.h
to opt_kdb.h (spotted by np)
(3) Garbage collect now-unused opt_comconsole.h

MFC after: 3 weeks
Approved by: re (bz)


224876 15-Aug-2011 rwatson

Fix two cases involving opt_capsicum.h and module builds:

(1) opt_capsicum.h is no longer required in ffs_alloc.c, so remove the
#include.

(2) portalfs depends on opt_capsicum.h, so have the Makefile generate one
if required.

These affect only modules built without a kernel (i.e, not buildkernel,
but yes buildworld if the dubious MODULES_WITH_WORLD is used).

Approved by: re (bz)
Sponsored by: Google Inc


223864 08-Jul-2011 hselasky

Add new USB 3G driver.

Submitted by: PseudoCylon <moonlightakkiy@yahoo.ca>
MFC after: 14 days


223637 28-Jun-2011 bz

Update packet filter (pf) code to OpenBSD 4.5.

You need to update userland (world and ports) tools
to be in sync with the kernel.

Submitted by: mlaier
Submitted by: eri


223593 27-Jun-2011 glebius

Add possibility to pass IPv6 packets to a divert(4) socket.

Submitted by: sem


223483 23-Jun-2011 uqs

Fix make buildworld -DMODULES_WITH_WORLD
Sort opt_ srcs


223467 23-Jun-2011 hselasky

- Add more USB templates for various USB device classes
- Add basic template support for USB 3.0
- Export definition of template sysctl numbers through usb_ioctl.h

MFC after: 7 days


223309 19-Jun-2011 rmacklem

Fix the kgssapi so that it can be loaded as a module. Currently
the NFS subsystems use five of the rpcsec_gss/kgssapi entry points,
but since it was not obvious which others might be useful, all
nineteen were included. Basically the nineteen entry points are
set in a structure called rpc_gss_entries and inline functions
defined in sys/rpc/rpcsec_gss.h check for the entry points being
non-NULL and then call them. A default value is returned otherwise.
Requested by rwatson.

Reviewed by: jhb
MFC after: 2 weeks


223280 18-Jun-2011 rmacklem

Add DTrace support to the new NFS client. This is essentially
cloned from the old NFS client, plus additions for NFSv4. A
review of this code is in progress, however it was felt by the
reviewer that it could go in now, before code slush. Any changes
required by the review can be committed as bug fixes later.


222696 04-Jun-2011 hselasky

Rename recently added USB serial driver.

Suggested by: YongHyeon PYUN
MFC after: 7 days


222585 01-Jun-2011 adrian

Flesh out the radar detection related operations for the ath driver.

This is in no way a complete DFS/radar detection implementation!
It merely creates an abstracted interface which allows for future
development of the DFS radar detection code.

Note: Net80211 already handles the bulk of the DFS machinery,
all we need to do here is figure out that a radar event has occured
and inform it as such. It then drives the DFS state engine for us.

The "null" DFS radar detection module is included by default;
it doesn't require a device line.

This commit:

* Adds a simple abstracted layer for radar detection state -
sys/dev/ath/ath_dfs/;
* Implements a null DFS module which doesn't do anything;
(ie, implements the exact behaviour at the moment);
* Adds hooks to the ath driver to process received radar events
and gives the DFS module a chance to determine whether
a radar has been detected.

Obtained from: Atheros


222578 01-Jun-2011 hselasky

Add support for new USB serial driver.

Submitted by: Lev Serebryakov, lev @
MFC after: 14 days


222509 30-May-2011 np

L2 table code. This is enough to get the T4's switch + L2 rewrite
filters working. (All other filters - switch without L2 info rewrite,
steer, and drop - were already fully-functional).

Some contrived examples of "switch" filters with L2 rewriting:

# cxgbetool t4nex0 iport 0 dport 80 action switch vlan +9 eport 3
Intercept all packets received on physical port 0 with TCP port 80 as
destination, insert a vlan tag with VID 9, and send them out of port 3.

# cxgbetool t4nex0 sip 192.168.1.1/32 ivlan 5 action switch \
vlan =9 smac aa:bb:cc:dd:ee:ff eport 0
Intercept all packets (received on any port) with source IP address
192.168.1.1 and VLAN id 5, rewrite the VLAN id to 9, rewrite source mac
to aa:bb:cc:dd:ee:ff, and send it out of port 0.

MFC after: 1 week


222325 26-May-2011 adrian

Introduce AR9287 support to the FreeBSD HAL.


222161 21-May-2011 bschmidt

Fix a typo, it is MPDU not MDPU.


221961 15-May-2011 brix

Add I2C bus driver for the AMD Geode LX series CS5536 Companion
Device.

Reviewed by: jhb (newbus bits only), adrian


221869 14-May-2011 attilio

Disconnect sun4v architecture from the three.

Some files keep the SUN4V tags as a code reference, for the future,
if any rewamped sun4v support wants to be added again.

Reviewed by: marius
Tested by: sbruno
Approved by: re


221477 05-May-2011 np

T4 packet timestamps.

Reference code that shows how to get a packet's timestamp out of
cxgbe(4). Disabled by default because we don't have a standard way
today to pass this information up the stack.

The timestamp is 60 bits wide and each increment represents 1 tick of
the T4's core clock. As an example, the timestamp granularity is ~4.4ns
for this card:

# sysctl dev.t4nex.0.core_clock
dev.t4nex.0.core_clock: 228125

MFC after: 1 week


221407 03-May-2011 marius

- Remove attempts to implement setting of BMCR_LOOP/MIIF_NOLOOP
(reporting IFM_LOOP based on BMCR_LOOP is left in place though as
it might provide useful for debugging). For most mii(4) drivers it
was unclear whether the PHYs driven by them actually support
loopback or not. Moreover, typically loopback mode also needs to
be activated on the MAC, which none of the Ethernet drivers using
mii(4) implements. Given that loopback media has no real use (and
obviously hardly had a chance to actually work) besides for driver
development (which just loopback mode should be sufficient for
though, i.e one doesn't necessary need support for loopback media)
support for it is just dropped as both NetBSD and OpenBSD already
did quite some time ago.
- Let mii_phy_add_media() also announce the support of IFM_NONE.
- Restructure the PHY entry points to use a structure of entry points
instead of discrete function pointers, and extend this to include
a "reset" entry point. Make sure any PHY-specific reset routine is
always used, and provide one for lxtphy(4) which disables MII
interrupts (as is done for a few other PHYs we have drivers for).
This includes changing NIC drivers which previously just called the
generic mii_phy_reset() to now actually call the PHY-specific reset
routine, which might be crucial in some cases. While at it, the
redundant checks in these NIC drivers for mii->mii_instance not being
zero before calling the reset routines were removed because as soon
as one PHY driver attaches mii->mii_instance is incremented and we
hardly can end up in their media change callbacks etc if no PHY driver
has attached as mii_attach() would have failed in that case and not
attach a miibus(4) instance.
Consequently, NIC drivers now no longer should call mii_phy_reset()
directly, so it was removed from EXPORT_SYMS.
- Add a mii_phy_dev_attach() as a companion helper to mii_phy_dev_probe().
The purpose of that function is to perform the common steps to attach
a PHY driver instance and to hook it up to the miibus(4) instance and to
optionally also handle the probing, addition and initialization of the
supported media. So all a PHY driver without any special requirements
has to do in its bus attach method is to call mii_phy_dev_attach()
along with PHY-specific MIIF_* flags, a pointer to its PHY functions
and the add_media set to one. All PHY drivers were updated to take
advantage of mii_phy_dev_attach() as appropriate. Along with these
changes the capability mask was added to the mii_softc structure so
PHY drivers taking advantage of mii_phy_dev_attach() but still
handling media on their own do not need to fiddle with the MII attach
arguments anyway.
- Keep track of the PHY offset in the mii_softc structure. This is done
for compatibility with NetBSD/OpenBSD.
- Keep track of the PHY's OUI, model and revision in the mii_softc
structure. Several PHY drivers require this information also after
attaching and previously had to wrap their own softc around mii_softc.
NetBSD/OpenBSD also keep track of the model and revision on their
mii_softc structure. All PHY drivers were updated to take advantage
as appropriate.
- Convert the mebers of the MII data structure to unsigned where
appropriate. This is partly inspired by NetBSD/OpenBSD.
- According to IEEE 802.3-2002 the bits actually have to be reversed
when mapping an OUI to the MII ID registers. All PHY drivers and
miidevs where changed as necessary. Actually this now again allows to
largely share miidevs with NetBSD, which fixed this problem already
9 years ago. Consequently miidevs was synced as far as possible.
- Add MIIF_NOMANPAUSE and mii_phy_flowstatus() calls to drivers that
weren't explicitly converted to support flow control before. It's
unclear whether flow control actually works with these but typically
it should and their net behavior should be more correct with these
changes in place than without if the MAC driver sets MIIF_DOPAUSE.

Obtained from: NetBSD (partially)
Reviewed by: yongari (earlier version), silence on arch@ and net@


221267 30-Apr-2011 bz

Update carp, gre and pf module builds to be depenent on INET and/or
INET6_SUPPORT.

Reviewed by: gnn (slightly earlier version without pf)
Sponsored by: The FreeBSD Foundation
Sponsored by: iXsystems
MFC after: 2 weeks


221167 28-Apr-2011 gnn

Exar driver for X3100 10GbE Server/Storage adapters

Features: Jumbo frames (up to 9600), LRO (Large Receive Offload),
TSO (TCP segmentation offload), RTH (Receive Traffic Hash).

Submitted by: Sriram Rapuru at Exar
MFC after: 2 weeks


221166 28-Apr-2011 jhb

Sync with several changes in UFS/FFS:
- 77115: Implement support for O_DIRECT.
- 98425: Fix a performance issue introduced in 70131 that was causing
reads before writes even when writing full blocks.
- 98658: Rename the BALLOC flags from B_* to BA_* to avoid confusion with
the struct buf B_ flags.
- 100344: Merge the BA_ and IO_ flags so so that they may both be used in
the same flags word. This merger is possible by assigning the IO_ flags
to the low sixteen bits and the BA_ flags the high sixteen bits.
- 105422: Fix a file-rewrite performance case.
- 129545: Implement IO_INVAL in VOP_WRITE() by marking the buffer as
"no cache".
- Readd the DOINGASYNC() macro and use it to control asynchronous writes.
Change i-node updates to honor DOINGASYNC() instead of always being
synchronous.
- Use a PRIV_VFS_RETAINSUGID check instead of checking cr_uid against 0
directly when deciding whether or not to clear suid and sgid bits.

Submitted by: Pedro F. Giffuni giffunip at yahoo


221163 28-Apr-2011 adrian

Introduce AR9130 (HOWL) WMAC support to the FreeBSD HAL.

The AR9130 is an AR9160/AR5416 family WMAC which is glued directly
to the AR913x SoC peripheral bus (APB) rather than via a PCI/PCIe
bridge.

The specifics:

* A new build option is required to use the AR9130 - AH_SUPPORT_AR9130.
This is needed due to the different location the RTC registers live
with this chip; hopefully this will be undone in the future.
This does currently mean that enabling this option will break non-AR9130
builds, so don't enable it unless you're specifically building an image
for the AR913x SoC.

* Add the new probe, attach, EEPROM and PLL methods specific to Howl.

* Add a work-around to ah_eeprom_v14.c which disables some of the checks
for endian-ness and magic in the EEPROM image if an eepromdata block
is provided. This'll be fixed at a later stage by porting the ath9k
probe code and making sure it doesn't break in other setups (which
my previous attempt at this did.)

* Sprinkle Howl modifications throughput the interrupt path - it doesn't
implement the SYNC interrupt registers, so ignore those.

* Sprinkle Howl chip powerup/down throughout the reset path; the RTC methods
were

* Sprinkle some other Howl workarounds in the reset path.

* Hard-code an alternative setup for the AR_CFG register for Howl, that
sets up things suitable for Big-Endian MIPS (which is the only platform
this chip is glued to.)

This has been tested on the AR913x based TP-Link WR-1043nd mode, in
legacy, HT/20 and HT/40 modes.

Caveats:

* 2ghz has only been tested. I've not seen any 5ghz radios glued to this
chipset so I can't test it.

* AR5416_INTERRUPT_MITIGATION is not supported on the AR9130. At least,
it isn't implemented in ath9k. Please don't enable this.

* This hasn't been tested in MBSS mode or in RX/TX block-aggregation mode.


221071 26-Apr-2011 mav

- Add shim to simplify migration to the CAM-based ATA. For each new adaX
device in /dev/ create symbolic link with adY name, trying to mimic old ATA
numbering. Imitation is not complete, but should be enough in most cases to
mount file systems without touching /etc/fstab.
- To know what behavior to mimic, restore ATA_STATIC_ID option in cases
where it was present before.
- Add some more details to UPDATING.


221032 25-Apr-2011 rmacklem

Fix the experimental NFS client so that it does not bogusly
set the f_flags field of "struct statfs". This had the interesting
effect of making the NFSv4 mounts "disappear" after r221014,
since NFSMNT_NFSV4 and MNT_IGNORE became the same bit.
Move the files used for a diskless NFS root from sys/nfsclient
to sys/nfs in preparation for them to be used by both NFS
clients. Also, move the declaration of the three global data
structures from sys/nfsclient/nfs_vfsops.c to sys/nfs/nfs_diskless.c
so that they are defined when either client uses them.

Reviewed by: jhb
MFC after: 2 weeks


221031 25-Apr-2011 davidch

- Removed duplicate {_bxe} definition.

MFC after: One week


221030 25-Apr-2011 davidch

- Added bxe(4) driver for i386 and amd64. Currently untested on other
CPU architectures.

MFC after: One week


220922 21-Apr-2011 pjd

Instead of allocating memory for all the keys at device attach,
create reasonably large cache for the keys that is filled when
needed. The previous version was problematic for very large providers
(hundreds of terabytes or serval petabytes). Every terabyte of data
needs around 256kB for keys. Make the default cache limit big enough
to fit all the keys needed for 4TB providers, which will eat at most
1MB of memory.

MFC after: 2 weeks


220893 20-Apr-2011 bschmidt

Add firmware images for the 6000 series g2a and g2b adapters.


220892 20-Apr-2011 bschmidt

Update iwn(4) firmware blobs:
- bump iwn1000fw to 39.31.5.1
- bump iwn5000fw to 8.83.5.1
- bump iwn6050fw to 41.28.5.1


220814 19-Apr-2011 uqs

Fix make buildworld -DMODULES_WITH_WORLD after r220454.


220712 16-Apr-2011 brucec

Remove missing include directory in preparation for adding
-Wmissing-include-dirs to CWARNFLAGS.


220663 15-Apr-2011 jkim

Merge ACPICA 20110413.


220603 13-Apr-2011 yongari

Remove mii(4) dependency and unneeded headers.

Reviewed by: davidch


220593 13-Apr-2011 adrian

Bring over the antenna diversity logic support for Kite.

Again, this is just the code ported from ath9k and included in the build,
it isn't yet enabled.


220587 13-Apr-2011 adrian

Add the initial AR9285 PHY glue for supporting antenna diversity.
This code isn't currently used anywhere; it's just linked into the build.


220470 09-Apr-2011 uqs

Fix make buildworld -DMODULES_WITH_WORLD on i386


220437 08-Apr-2011 art

Stripped '32' suffix from linux systrace module name on i386.

Approved by: avg


220371 05-Apr-2011 uqs

Fix buildworld -DMODULES_WITH_WORLD


220275 02-Apr-2011 adrian

Add missing include.

Reported by: Ulrich Sporlein <uqs@spoerlein.net>


220238 01-Apr-2011 kib

Add support for executing the FreeBSD 1/i386 a.out binaries on amd64.

In particular:
- implement compat shims for old stat(2) variants and ogetdirentries(2);
- implement delivery of signals with ancient stack frame layout and
corresponding sigreturn(2);
- implement old getpagesize(2);
- provide a user-mode trampoline and LDT call gate for lcall $7,$0;
- port a.out image activator and connect it to the build as a module
on amd64.

The changes are hidden under COMPAT_43.

MFC after: 1 month


220231 01-Apr-2011 np

Allow multiple modules within sys/modules/cxgbe. The first one is if_cxgbe.

MFC after: 3 days


220190 31-Mar-2011 adrian

ath_ahb shouldn't be compiled normally; it is atheros chip specific.
Remove it from here; users can compile it manually if needed.


220185 31-Mar-2011 adrian

Break out the ath PCI logic into a separate device/module.

Introduce the AHB glue for Atheros embedded systems. Right now it's
hard-coded for the AR9130 chip whose support isn't yet in this HAL;
it'll be added in a subsequent commit.

Kernel configuration files now need both 'ath' and 'ath_pci' devices; both
modules need to be loaded for the ath device to work.


220124 29-Mar-2011 ae

Do not build ip_fw_nat.c for ipfw.ko. It can be build as separate module.

MFC after: 1 week


219974 24-Mar-2011 mav

MFgraid/head:
Add new RAID GEOM class, that is going to replace ataraid(4) in supporting
various BIOS-based software RAIDs. Unlike ataraid(4) this implementation
does not depend on legacy ata(4) subsystem and can be used with any disk
drivers, including new CAM-based ones (ahci(4), siis(4), mvs(4), ata(4)
with `options ATA_CAM`). To make code more readable and extensible, this
implementation follows modular design, including core part and two sets
of modules, implementing support for different metadata formats and RAID
levels.

Support for such popular metadata formats is now implemented:
Intel, JMicron, NVIDIA, Promise (also used by AMD/ATI) and SiliconImage.

Such RAID levels are now supported:
RAID0, RAID1, RAID1E, RAID10, SINGLE, CONCAT.

For any all of these RAID levels and metadata formats this class supports
full cycle of volume operations: reading, writing, creation, deletion,
disk removal and insertion, rebuilding, dirty shutdown detection
and resynchronization, bad sector recovery, faulty disks tracking,
hot-spare disks. For Intel and Promise formats there is support multiple
volumes per disk set.

Look graid(8) manual page for additional details.

Co-authored by: imp
Sponsored by: Cisco Systems, Inc. and iXsystems, Inc.


219898 23-Mar-2011 jeff

- Move ofed modules into the i386 and amd64 specific sections to fix
universe on other architectures.


219849 21-Mar-2011 jeff

- For now, disable ofed module build unless MK_OFED is set.


219820 21-Mar-2011 jeff

- Merge in OFED 1.5.3 from projects/ofed/head


219804 20-Mar-2011 kib

Retire opt_ffs_broken_fixme.h.
Instead of directly calling ffs_snapgone(), use UFS_SNAPGONE() with
usual layering.

Requested by: bde
MFC after: 1 week


219656 15-Mar-2011 davidch

- Inadvertently committed files with +x attribute, fixed.
- Minor change to info output string.


219647 14-Mar-2011 davidch

- Initial release of bxe(4) to support Broadcom NetXtreme II 10GbE.
(BCM57710, BCM57711, BCM57711E)

MFC after: One month


219561 12-Mar-2011 avg

add DTrace systrace support for linux32 and freebsd32 on amd64 syscalls

Add systrace_linux32 and systrace_freebsd32 modules which provide
support for tracing compat system calls in addition to native system
call tracing provided by systrace module.

Provided that all the systrace modules are loaded now you can select
what syscalls to trace in the following manner:

syscall::xxx:yyy - work on all system calls that match the specification
syscall:freebsd:xxx:yyy - only native system calls
syscall:linux32:xxx:yyy - linux32 compat system calls
syscall:freebsd32:xxx:yyy - freebsd32 compat system calls on amd64

PR: kern/152822
Submitted by: Artem Belevich <fbsdlist@src.cx>
Reviewed by: jhb (earlier version)
MFC after: 3 weeks


219481 11-Mar-2011 adrian

Port over the AR9285 PA calibration and initial calibration code from
Linux ath9k.

The ath9k ar9002_hw_init_cal() isn't entirely clear about what
is supposed to be called for what chipsets, so I'm ignoring the
rest of it and just porting the AR9285 init cal path as-is and
leaving the rest alone. Subsequent commits may also tidy up the
Merlin (AR9285) and other chipset support.

Obtained from: Linux ath9k


219393 08-Mar-2011 adrian

Implement open-loop TX power control (OLC) for Merlin (AR9280) and
generally tidy up the TX power programming code.

Enforce that the TX power offset for Merlin is -5 dBm, rather than
any other value programmable in the EEPROM. This requires some
further code to be ported over from ath9k, so until that is done
and tested, fail to attach NICs whose TX power offset isn't -5
dBm.

This improves both legacy and HT transmission on my merlin board.
It allows for stable MCS TX up to MCS15.

Specifics:

* Refactor out a bunch of the TX power calibration code -
setting/obtaining the power detector / gain boundaries,
programming the PDADC
* Take the -5 dBm TX power offset into account on Merlin -
"0" in the per-rate TX power register means -5 dBm, not
0 dBm
* When doing OLC
* Enforce min (0) and max (AR5416_MAX_RATE_POWER) when fiddling
with the TX power, to avoid the TX power values from wrapping
when low.
* Implement the 1 dBm cck power offset when doing OLC
* Implement temperature compensation for 2.4ghz mode when doing OLC
* Implement an AR9280 specific TX power calibration routine which
includes the OLC twiddles, leaving the earlier chipset path
(AR5416, AR9160) alone

Whilst here, use these refactored routines for the AR9285 TX power
calibration/programming code and enforce correct overflow/underflow
handling when fiddling with TX power values.

Obtained from: linux ath9k


219185 02-Mar-2011 adrian

Break the keycache management functions out into if_ath_keycache.c .


219182 02-Mar-2011 glebius

Add support for NetFlow version 9 into ng_netflow(4) node.

Submitted by: Alexander V. Chernikov <melifaro ipfw.ru>


219180 02-Mar-2011 adrian

Migrate the sysctl related routines (statistics, debugging, etc) out of
if_ath.c and into if_ath_sysctl.c .


219146 01-Mar-2011 nwhitehorn

Fix misuse of TARGET_ARCH. This should be MACHINE_ARCH.


219089 27-Feb-2011 pjd

Finally... Import the latest open-source ZFS version - (SPA) 28.

Few new things available from now on:

- Data deduplication.
- Triple parity RAIDZ (RAIDZ3).
- zfs diff.
- zpool split.
- Snapshot holds.
- zpool import -F. Allows to rewind corrupted pool to earlier
transaction group.
- Possibility to import pool in read-only mode.

MFC after: 1 month


219059 26-Feb-2011 glebius

Connect uep.ko to build

PR: kern/155044
Submitted by: Carl <k0802647 telus.net>
MFC after: 1 week


218893 20-Feb-2011 dim

Upgrade our copy of llvm/clang to r126079, from upstream's trunk.

This contains many improvements, primarily better C++ support, an
integrated assembler for x86 and support for -pg.


218792 18-Feb-2011 np

cxgbe(4) - NIC driver for Chelsio T4 (Terminator 4) based 10Gb/1Gb adapters.

MFC after: 3 weeks


218729 16-Feb-2011 hselasky

Add support for new USB to ethernet controller:
Moschip MCS7730/MCS7830

Submitted by: Rick van der Zwet <info@rickvanderzwet.nl>
Approved by: thompsa (mentor)


218616 12-Feb-2011 dchagin

Move linux_clone(), linux_fork(), linux_vfork() to a MI path.


218590 12-Feb-2011 jkim

Merge ACPICA 20110211.


218159 01-Feb-2011 adrian

Include some preliminary TX HT rate scenario setup code.

The AR5416 and later TX descriptors have new fields for supporting
11n bits (eg 20/40mhz mode, short/long GI) and enabling/disabling
RTS/CTS protection per rate.

These functions will be responsible for initialising the TX descriptors
for the AR5416 and later chips for both HT and legacy frames.

Beacon frames will remain using the non-11n TX descriptor setup for now;
Linux ath9k does much the same.

Note that these functions aren't yet used anywhere; a few more framework
changes are needed before all of the right rate information is available
for TX.


218155 01-Feb-2011 lstewart

Import an implementation of the CAIA-Hamilton-Delay (CHD) congestion control
algorithm described in the paper "Improved coexistence and loss tolerance for
delay based TCP congestion control" by Hayes and Armitage. It is implemented as
a kernel module compatible with the recently committed modular congestion
control framework.

CHD enhances the approach taken by the Hamilton-Delay (HD) algorithm to provide
tolerance to non-congestion related packet loss and improvements to coexistence
with loss-based congestion control algorithms. A key idea in improving
coexistence with loss-based congestion control algorithms is the use of a shadow
window, which attempts to track how NewReno's congestion window (cwnd) would
evolve. At the next packet loss congestion event, CHD uses the shadow window to
correct cwnd in a way that reduces the amount of unfairness CHD experiences when
competing with loss-based algorithms.

In collaboration with: David Hayes <dahayes at swin edu au> and
Grenville Armitage <garmitage at swin edu au>
Sponsored by: FreeBSD Foundation
Reviewed by: bz and others along the way
MFC after: 3 months


218153 01-Feb-2011 lstewart

Import a clean-room implementation of the Hamilton-Delay (HD) congestion control
algorithm based on the paper "A strategy for fair coexistence of loss and
delay-based congestion control algorithms" by Budzisz, Stanojevic, Shorten and
Baker. It is implemented as a kernel module compatible with the recently
committed modular congestion control framework.

HD uses a probabilistic approach to reacting to delay-based congestion. The
probability of reducing cwnd is zero when the queuing delay is very small,
increasing to a maximum at a set threshold, then back down to zero again when
the queuing delay is high. Normal operation keeps the queuing delay below the
set threshold. However, since loss-based congestion control algorithms push the
queuing delay high when probing for bandwidth, having the probability of
reducing cwnd drop back to zero for high delays allows HD to compete with
loss-based algorithms.

In collaboration with: David Hayes <dahayes at swin edu au> and
Grenville Armitage <garmitage at swin edu au>
Sponsored by: FreeBSD Foundation
Reviewed by: bz and others along the way
MFC after: 3 months


218152 01-Feb-2011 lstewart

Import a clean-room implementation of the VEGAS congestion control algorithm
based on the paper "TCP Vegas: end to end congestion avoidance on a global
internet" by Brakmo and Peterson. It is implemented as a kernel module
compatible with the recently committed modular congestion control framework.

VEGAS uses network delay as a congestion indicator and unlike regular loss-based
algorithms, attempts to keep the network operating with stable queuing delays
and no congestion losses. By keeping network buffers used along the path within
a set range, queuing delays are kept low while maintaining high throughput.

In collaboration with: David Hayes <dahayes at swin edu au> and
Grenville Armitage <garmitage at swin edu au>
Sponsored by: FreeBSD Foundation
Reviewed by: bz and others along the way
MFC after: 3 months


218065 29-Jan-2011 adrian

Migrate the TX path code out of if_ath and into a separate source file.

There's two reasons for this:

* the raw and non-raw TX path shares a lot of duplicate code which should be
refactored;
* the 11n-ready chip TX path needs a little reworking.


218058 29-Jan-2011 adrian

Break out the debug macros from if_ath.c into if_ath_debug.[ch] .

This is prep work for breaking out the TX path into a separate
set of source files.


217806 24-Jan-2011 lstewart

Import the ERTT (Enhanced Round Trip Time) Khelp module. ERTT uses the
Khelp/Hhook KPIs to hook into the TCP stack and maintain a per-connection, low
noise estimate of the instantaneous RTT. ERTT's implementation is robust even in
the face of delayed acknowledgements and/or TSO being in use for a connection.

A high quality, low noise RTT estimate is a requirement for applications such as
delay-based congestion control, for which we will be importing some algorithm
implementations shortly.

In collaboration with: David Hayes <dahayes at swin edu au> and
Grenville Armitage <garmitage at swin edu au>
Sponsored by: FreeBSD Foundation
Reviewed by: bz and others along the way
MFC after: 3 months


217773 24-Jan-2011 lstewart

Add build infrastructure for Khelp modules.

Sponsored by: FreeBSD Foundation
Reviewed by: bz
MFC after: 3 months


217631 20-Jan-2011 adrian

Push the non-AR5416 related stuff into chipset specific directories.

sys/dev/ath/ath_hal/ar5416/ is getting very crowded and further
commits will make it even more crowded. Now is a good time to
shuffle these files out before any more extensive work is done
on them.

Create an ar9003 directory whilst I'm here; ar9003 specific
chipset code will eventually live there.


217515 17-Jan-2011 jkim

Add reader/writer lock around mem_range_attr_get() and mem_range_attr_set().
Compile sys/dev/mem/memutil.c for all supported platforms and remove now
unnecessary dev_mem_md_init(). Consistently define mem_range_softc from
mem.c for all platforms. Add missing #include guards for machine/memdev.h
and sys/memrange.h. Clean up some nearby style(9) nits.

MFC after: 1 month


217070 06-Jan-2011 imp

No need to genreate these here


216829 31-Dec-2010 yongari

Add driver for DM&P Vortex86 RDC R6040 Fast Ethernet.
The controller is commonly found on DM&P Vortex86 x86 SoC. The
driver supports all hardware features except flow control. The
flow control was intentionally disabled due to silicon bug.

DM&P Electronics, Inc. provided all necessary information including
sample board to write driver and answered many questions I had.
Many thanks for their support of FreeBSD.

H/W donated by: DM&P Electronics, Inc.


216828 31-Dec-2010 yongari

Add RDC Semiconductor R6040 10/100 PHY driver.


216559 19-Dec-2010 bschmidt

Update firmware for wpi(4) from version 2.14.4 to 15.32.2.9.

PR: kern/142907
Submitted by: Craig Butler <craig001 at lerwick.hopto.org>
MFC after: 2 weeks


216471 15-Dec-2010 jkim

Merge ACPICA 20101209.


216115 02-Dec-2010 lstewart

Import a clean-room implementation of the experimental H-TCP congestion control
algorithm based on the Internet-Draft "draft-leith-tcp-htcp-06.txt". It is
implemented as a kernel module compatible with the recently committed modular
congestion control framework.

H-TCP was designed to provide increased throughput in fast and long-distance
networks. It attempts to maintain fairness when competing with legacy NewReno
TCP in lower speed scenarios where NewReno is able to operate adequately. The
paper "H-TCP: A framework for congestion control in high-speed and long-distance
networks" provides additional detail.

In collaboration with: David Hayes <dahayes at swin edu au> and
Grenville Armitage <garmitage at swin edu au>
Sponsored by: FreeBSD Foundation
Reviewed by: rpaulo (older patch from a few weeks ago)
MFC after: 3 months


216114 02-Dec-2010 lstewart

Import a clean-room implementation of the experimental CUBIC congestion control
algorithm based on the Internet-Draft "draft-rhee-tcpm-cubic-02.txt". It is
implemented as a kernel module compatible with the recently committed modular
congestion control framework.

CUBIC was designed for provide increased throughput in fast and long-distance
networks. It attempts to maintain fairness when competing with legacy NewReno
TCP in lower speed scenarios where NewReno is able to operate adequately. The
paper "CUBIC: A New TCP-Friendly High-Speed TCP Variant" provides additional
detail.

In collaboration with: David Hayes <dahayes at swin edu au> and
Grenville Armitage <garmitage at swin edu au>
Sponsored by: FreeBSD Foundation
Reviewed by: rpaulo (older patch from a few weeks ago)
MFC after: 3 months


216109 02-Dec-2010 lstewart

Add build infrastructure for the forthcoming CC algorithm modules.

Sponsored by: FreeBSD Foundation
Submitted by: David Hayes <dahayes at swin edu au>
MFC after: 3 months


216093 01-Dec-2010 ken

Add smp_all.c to the cam module build to un-break it.

Reported by: jkim


215911 26-Nov-2010 jfv

Update ixgbe driver to verion 2.3.6
- This adds a VM SRIOV interface, ixv, it is however
transparent to the user, it links with the ixgbe.ko,
but when ixgbe is loaded in a virtualized guest with
SRIOV configured this will be detected.
- Sync shared code to latest
- Many bug fixes and improvements, thanks to everyone
who has been using the driver and reporting issues.


215649 22-Nov-2010 weongyo

Adds a USB packet filter feature to the stack that it could capture
packets which go through each USB host controllers. Its implementations
are almost based on BPF code and very similar with it except it's
little bit customized for USB packet only. The userland program
usbdump(8) would be committed soon.

Discussed with: hps, thompsa, yongari


215255 13-Nov-2010 imp

Correct mips/arm elimination of sym


215201 12-Nov-2010 jkim

Warn users that acpi.ko is deprecated and exit immediately unless the user
set FORCE_BUILD. This is to avoid foot-shooting while making MFC to stable
branches easier.

Discussed with: jhb


215200 12-Nov-2010 jkim

MFamd64: (based on) r209957

Move logic of building ACPI headers for acpi_wakeup.c into better places,
remove intermediate makefile and shell script, and reduce diff between i386
and amd64.


215072 10-Nov-2010 jkim

Refactor acpi_machdep.c for amd64 and i386, move APM emulation into a new
file acpi_apm.c, and place it on sys/x86/acpica.


215012 08-Nov-2010 jhb

Move the MADT parser for amd64 and i386 to sys/x86/acpica now that it is
identical on both platforms.


215007 08-Nov-2010 jhb

Disconnect acpi.ko from the build on i386. ACPI is now only supported when
compiled into the kernel, not as a loadable module.


214603 31-Oct-2010 nwhitehorn

Add a driver for the Apple Uninorth AGP host bridge found in all PowerPC
Macintoshes with an AGP bus.


214069 19-Oct-2010 bschmidt

Fix an undefined behaviour if the desired ratectl algo is not available.
This can happen if the algos are built as modules but are not loaded. If
the selected ratectl algo is not available, try to load it (The load
module functions does nothing currently). Add a dummy ratectl algo which
always selects the first available rate. Use that one if the desired algo
is not available.

MFC after: 1 week


214056 19-Oct-2010 rpaulo

Revert r206418


213993 17-Oct-2010 scottl

Re-add opt_mps.h and opt_cam.h, lost in the previous rev.


213900 15-Oct-2010 marius

Now that all previous users of mii_phy_probe() have been converted
in r213893 and r213894 to use mii_attach() instead remove the former
and along with it the "EVIL HACK".

MFC after: never


213898 15-Oct-2010 mdf

Currently only opt_compat.h is included by the mps(4) driver. Also
enable /dev/mps0, which was missing from my previous patches enabling
f/w upload and download.

opt_compat.h issue noticed by scottl.


213884 14-Oct-2010 jkim

Stop hard coding nm(1) and make it overridable.


213878 14-Oct-2010 marius

Add a NetBSD-compatible mii_attach(), which is intended to eventually
replace mii_phy_probe() altogether. Compared to the latter the advantages
of mii_attach() are:
- intended to be called multiple times in order to attach PHYs in multiple
passes (f.e. in order to only use sub-ranges of the 0 to MII_NPHY - 1
range)
- being able to pass along the capability mask from the NIC to the PHY
drivers
- being able to specify at which address (phyloc) to probe for a PHY
(instead of always probing at all addresses from 0 to MII_NPHY - 1)
- being able to specify which PHY instance (offloc) to attach
- being able to pass along MIIF_* flags from the NIC to the PHY drivers
(f.e. as required to indicated to the PHY drivers that flow control is
supported by the NIC driver, which actually is the motivation for this
change).

While at it, I used the opportunity to get rid of some hacks in mii(4)
like miibus_probe() generally doing work besides sheer probing and the
"EVIL HACK" (which will vanish entirely along with mii_phy_probe()) by
passing the struct ifnet pointer via an argument of mii_attach() as well
as to fix some resource leaks in mii(4) in case something fails.
Commits which will update the PHY drivers to honor the MII flags passed
down from the NIC drivers and take advantage of mii_attach() to get rid
of certain types of hacks in NIC and PHY drivers as well as a conversion
of the remaining uses of mii_phy_probe() will follow shortly.

Reviewed by: jhb, yongari
Obtained from: NetBSD (partially)


213805 13-Oct-2010 hselasky

USB Network:
- Add new driver for iPhone tethering
- Supports the iPhone 3G/3GS/4G ethernet protocol

Approved by: thompsa (mentor)


213781 13-Oct-2010 rpaulo

Add opt_compat.h to SRCS.


213437 04-Oct-2010 hselasky

Link the XHCI (USB 3.0 hardware driver) into the default kernel build.

Approved by: thompsa (mentor)


213388 03-Oct-2010 antoine

Unbreak build.


213383 03-Oct-2010 nwhitehorn

Add a memory-range interface to /dev/mem on PowerPC using PAT attributes.
Unlike actual MTRR, this only controls the mapping attributes for
subsequent mmap() of /dev/mem. Nonetheless, the support is sufficiently
MTRR-like that Xorg can use it, which translates into an enormous increase
in graphics performance on PowerPC.

MFC after: 2 weeks


213103 24-Sep-2010 attilio

Make the RPC specific __rpc_inet_ntop() and __rpc_inet_pton() general
in the kernel (just as inet_ntoa() and inet_aton()) are and sync their
prototype accordingly with already mentioned functions.

Sponsored by: Sandvine Incorporated
Reviewed by: emaste, rstone
Approved by: dfr
MFC after: 2 weeks


212761 16-Sep-2010 jkim

Merge ACPICA 20100915.


212725 16-Sep-2010 marius

Merge r207585 from cas(4):
- Don't probe for PHYs if we already know to use a SERDES. Unlike as with
cas(4) this only serves to speed up the the device attach though and can
only be determined via the OFW device tree but not from the VPD.
- Don't touch the MIF when using a SERDES.
- Add some missing bus space barriers, mainly in the PCS code path.


212543 13-Sep-2010 imp

Simplify atomic selection


212523 13-Sep-2010 imp

MFtbemd: use MACHINE_CPUARCH


212496 12-Sep-2010 ivoras

List low-level Blowfish ECB module in the SRCS. It looks like it was dropped
by accident (and it would be inconvenient to implement it otherwise because it
uses internal non-published headers).

MFC after: 1 week


212420 10-Sep-2010 ken

MFp4 (//depot/projects/mps/...)

Bring in a driver for the LSI Logic MPT2 6Gb SAS controllers.

This driver supports basic I/O, and works with SAS and SATA drives and
expanders.

Basic error recovery works (i.e. timeouts and aborts) as well.

Integrated RAID isn't supported yet, and there are some known bugs.

So this isn't ready for production use, but is certainly ready for
testing and additional development. For the moment, new commits to this
driver should go into the FreeBSD Perforce repository first
(//depot/projects/mps/...) and then get merged into -current once
they've been vetted.

This has only been added to the amd64 GENERIC, since that is the only
architecture I have tested this driver with.

Submitted by: scottl
Discussed with: imp, gibbs, will
Sponsored by: Yahoo, Spectra Logic Corporation


211926 28-Aug-2010 rpaulo

Add the path necessary to find fasttrap_isa.h to CFLAGS.

Sponsored by: The FreeBSD Foundation


211753 24-Aug-2010 rpaulo

Enable fasttrap and make dtraceall depend on fasttrap when building i386
or amd64.

Sponsored by: The FreeBSD Foundation
> Description of fields to fill in above: 76 columns --|
> PR: If a GNATS PR is affected by the change.
> Submitted by: If someone else sent in the change.
> Reviewed by: If someone else reviewed your modification.
> Approved by: If you needed approval for this commit.
> Obtained from: If the change is from a third party.
> MFC after: N [day[s]|week[s]|month[s]]. Request a reminder email.
> Security: Vulnerability reference (one per line) or description.
> Empty fields above will be automatically removed.

M dtrace/dtraceall/dtraceall.c
M dtrace/Makefile


211746 24-Aug-2010 rpaulo

Update for the recent location of the fasttrap code.

Sponsored by: The FreeBSD Foundation


211690 23-Aug-2010 imp

MFtbemd:

Use MACHINE_CPUARCH in preference to MACHINE_ARCH. The former is the
source code location of the machine, the latter the binary output. In
general, we want to use MACHINE_CPUARCH instead of MACHINE_ARCH unless
we're tesitng for a specific target. The isn't even moot for
i386/amd64 where there's momemntum towards a MACHINE_CPUARCH == x86,
although a specific cleanup for that likely would be needed...


211615 22-Aug-2010 rpaulo

Remove an elif and add an or-clause.

Sponsored by: The FreeBSD Foundation


211501 19-Aug-2010 anchie

MFp4: anchie_soc2009 branch:

Add kernel side support for Secure Neighbor Discovery (SeND), RFC 3971.

The implementation consists of a kernel module that gets packets from
the nd6 code, sends them to user space on a dedicated socket and reinjects
them back for further processing.

Hooks are used from nd6 code paths to divert relevant packets to the
send implementation for processing in user space. The hooks are only
triggered if the send module is loaded. In case no user space
application is connected to the send socket, processing continues
normaly as if the module would not be loaded. Unloading the module
is not possible at this time due to missing nd6 locking.

The native SeND socket is similar to a raw IPv6 socket but with its own,
internal pseudo-protocol.

Approved by: bz (mentor)


211400 16-Aug-2010 yongari

Remove unnecessary clean target in em(4), igb(4) and ixgbe(4).
While here also remove man target in igb(4).

Reviewed by: jfv


211339 15-Aug-2010 kib

Add missed dependency.

Submitted by: gcooper
MFC after: 1 week


211270 13-Aug-2010 takawata

Hook tpm.4 manual to build.


211249 12-Aug-2010 imp

This depends on ACPI, so only build on i386:i386, amd64:amd64 and
ia64:ia64. It can't possibly work on pc98, or any of the embedded
platforms, since they lack ACPI.


211201 12-Aug-2010 takawata

Add tpm(4) driver for Trusted Platform Module.
You may want to look at http://bsssd.sourceforge.net/ .

Submitted by: Hans-Joerg Hoexer <Hans-Joerg_Hoexer@genua.de>


211157 11-Aug-2010 will

Allow carp(4) to be loaded as a kernel module. Follow precedent set by
bridge(4), lagg(4) etc. and make use of function pointers and
pf_proto_register() to hook carp into the network stack.

Currently, because of the uncertainty about whether the unload path is free
of race condition panics, unloads are disallowed by default. Compiling with
CARPMOD_CAN_UNLOAD in CFLAGS removes this anti foot shooting measure.

This commit requires IP6PROTOSPACER, introduced in r211115.

Reviewed by: bz, simon
Approved by: ken (mentor)
MFC after: 2 weeks


211058 08-Aug-2010 jkim

Do not build real mode emulator for i386. We use VM86 again since r210877.


210976 06-Aug-2010 jkim

Merge ACPICA 20100806.


210668 31-Jul-2010 rpaulo

pci_if.h is required to build atacore.


210477 25-Jul-2010 rpaulo

Remove the acpi_aiboost driver. It has been replaced by aibs(4).


210455 24-Jul-2010 rmacklem

Move sys/nfsclient/nfs_lock.c into sys/nfs and build it as a separate
module that can be used by both the regular and experimental nfs
clients. This fixes the problem reported by jh@ where /dev/nfslock
would be registered twice when both nfs clients were used.
I also defined the size of the lm_fh field to be the correct value,
as it should be the maximum size of an NFSv3 file handle.

Reviewed by: jh
MFC after: 2 weeks


210409 23-Jul-2010 kib

Crypto(4) driver for AESNI.

The aeskeys_{amd64,i386}.S content was mostly obtained from OpenBSD,
no objections to the license from core.

Hardware provided by: Sentex Communications
Tested by: fabient, pho (previous versions)
MFC after: 1 month


210193 17-Jul-2010 nwhitehorn

Add OpenSolaris atomics for powerpc64 and connect ZFS to the build on
this platform.

Reviewed by: pjd


210113 15-Jul-2010 bschmidt

- Update 6000 firmware to 9.221.4.1
- Add 6050 firmware

MFC after: 2 weeks


210005 13-Jul-2010 jkim

Define SMP unconditionally for amd64 and remove opt_global.h from SRCS.
Note it is done just for correctness sake because we do not build, ship, or
support acpi.ko on amd64.

Prodded by: bde


209991 13-Jul-2010 nwhitehorn

Make kernel modules build correctly on 64-bit PowerPC.


209962 13-Jul-2010 mm

Merge ZFS version 15 and almost all OpenSolaris bugfixes referenced
in Solaris 10 updates 141445-09 and 142901-14.

Detailed information:
(OpenSolaris revisions and Bug IDs, Solaris 10 patch numbers)

7844:effed23820ae
6755435 zfs_open() and zfs_close() needs to use ZFS_ENTER/ZFS_VERIFY_ZP (141445-01)

7897:e520d8258820
6748436 inconsistent zpool.cache in boot_archive could panic a zfs root filesystem upon boot-up (141445-01)

7965:b795da521357
6740164 zpool attach can create an illegal root pool (141909-02)

8084:b811cc60d650
6769612 zpool_import() will continue to write to cachefile even if altroot is set (N/A)

8121:7fd09d4ebd9c
6757430 want an option for zdb to disable space map loading and leak tracking (141445-01)

8129:e4f45a0bfbb0
6542860 ASSERT: reason != VDEV_LABEL_REMOVE||vdev_inuse(vd, crtxg, reason, 0) (141445-01)

8188:fd00c0a81e80
6761100 want zdb option to select older uberblocks (141445-01)

8190:6eeea43ced42
6774886 zfs_setattr() won't allow ndmp to restore SUNWattr_rw (141445-01)

8225:59a9961c2aeb
6737463 panic while trying to write out config file if root pool import fails (141445-01)

8227:f7d7be9b1f56
6765294 Refactor replay (141445-01)

8228:51e9ca9ee3a5
6572357 libzfs should do more to avoid mnttab lookups (141909-01)
6572376 zfs_iter_filesystems and zfs_iter_snapshots get objset stats twice (141909-01)

8241:5a60f16123ba
6328632 zpool offline is a bit too conservative (141445-01)
6739487 ASSERT: txg <= spa_final_txg due to scrub/export race (141445-01)
6767129 ASSERT: cvd->vdev_isspare, in spa_vdev_detach() (141445-01)
6747698 checksum failures after offline -t / export / import / scrub (141445-01)
6745863 ZFS writes to disk after it has been offlined (141445-01)
6722540 50% slowdown on scrub/resilver with certain vdev configurations (141445-01)
6759999 resilver logic rewrites ditto blocks on both source and destination (141445-01)
6758107 I/O should never suspend during spa_load() (141445-01)
6776548 codereview(1) runs off the page when faced with multi-line comments (N/A)
6761406 AMD errata 91 workaround doesn't work on 64-bit systems (141445-01)

8242:e46e4b2f0a03
6770866 GRUB/ZFS should require physical path or devid, but not both (141445-01)

8269:03a7e9050cfd
6674216 "zfs share" doesn't work, but "zfs set sharenfs=on" does (141445-01)
6621164 $SRC/cmd/zfs/zfs_main.c seems to have a syntax error in the translation note (141445-01)
6635482 i18n problems in libzfs_dataset.c and zfs_main.c (141445-01)
6595194 "zfs get" VALUE column is as wide as NAME (141445-01)
6722991 vdev_disk.c: error checking for ddi_pathname_to_dev_t() must test for NODEV (141445-01)
6396518 ASSERT strings shouldn't be pre-processed (141445-01)

8274:846b39508aff
6713916 scrub/resilver needlessly decompress data (141445-01)

8343:655db2375fed
6739553 libzfs_status msgid table is out of sync (141445-01)
6784104 libzfs unfairly rejects numerical values greater than 2^63 (141445-01)
6784108 zfs_realloc() should not free original memory on failure (141445-01)

8525:e0e0e525d0f8
6788830 set large value to reservation cause core dump (141445-01)
6791064 want sysevents for ZFS scrub (141445-01)
6791066 need to be able to set cachefile on faulted pools (141445-01)
6791071 zpool_do_import() should not enable datasets on faulted pools (141445-01)
6792134 getting multiple properties on a faulted pool leads to confusion (141445-01)

8547:bcc7b46e5ff7
6792884 Vista clients cannot access .zfs (141445-01)

8632:36ef517870a3
6798384 It can take a village to raise a zio (141445-01)

8636:7e4ce9158df3
6551866 deadlock between zfs_write(), zfs_freesp(), and zfs_putapage() (141909-01)
6504953 zfs_getpage() misunderstands VOP_GETPAGE() interface (141909-01)
6702206 ZFS read/writer lock contention throttles sendfile() benchmark (141445-01)
6780491 Zone on a ZFS filesystem has poor fork/exec performance (141445-01)
6747596 assertion failed: DVA_EQUAL(BP_IDENTITY(&zio->io_bp_orig), BP_IDENTITY(zio->io_bp))); (141445-01)

8692:692d4668b40d
6801507 ZFS read aggregation should not mind the gap (141445-01)

8697:e62d2612c14d
6633095 creating a filesystem with many properties set is slow (141445-01)

8768:dfecfdbb27ed
6775697 oracle crashes when overwriting after hitting quota on zfs (141909-01)

8811:f8deccf701cf
6790687 libzfs mnttab caching ignores external changes (141445-01)
6791101 memory leak from libzfs_mnttab_init (141445-01)

8845:91af0d9c0790
6800942 smb_session_create() incorrectly stores IP addresses (N/A)
6582163 Access Control List (ACL) for shares (141445-01)
6804954 smb_search - shortname field should be space padded following the NULL terminator (N/A)
6800184 Panic at smb_oplock_conflict+0x35() (N/A)

8876:59d2e67b4b65
6803822 Reboot after replacement of system disk in a ZFS mirror drops to grub> prompt (141445-01)

8924:5af812f84759
6789318 coredump when issue zdb -uuuu poolname/ (141445-01)
6790345 zdb -dddd -e poolname coredump (141445-01)
6797109 zdb: 'zdb -dddddd pool_name/fs_name inode' coredump if the file with inode was deleted (141445-01)
6797118 zdb: 'zdb -dddddd poolname inum' coredump if I miss the fs name (141445-01)
6803343 shareiscsi=on failed, iscsitgtd failed request to share (141445-01)

9030:243fd360d81f
6815893 hang mounting a dataset after booting into a new boot environment (141445-01)

9056:826e1858a846
6809691 'zpool create -f' no longer overwrites ufs infomation (141445-01)

9179:d8fbd96b79b3
6790064 zfs needs to determine uid and gid earlier in create process (141445-01)

9214:8d350e5d04aa
6604992 forced unmount + being in .zfs/snapshot/<snap1> = not happy (141909-01)
6810367 assertion failed: dvp->v_flag & VROOT, file: ../../common/fs/gfs.c, line: 426 (141909-01)

9229:e3f8b41e5db4
6807765 ztest_dsl_dataset_promote_busy needs to clean up after ENOSPC (141445-01)

9230:e4561e3eb1ef
6821169 offlining a device results in checksum errors (141445-01)
6821170 ZFS should not increment error stats for unavailable devices (141445-01)
6824006 need to increase issue and interrupt taskqs threads in zfs (141445-01)

9234:bffdc4fc05c4
6792139 recovering from a suspended pool needs some work (141445-01)
6794830 reboot command hangs on a failed zfs pool (141445-01)

9246:67c03c93c071
6824062 System panicked in zfs_mount due to NULL pointer dereference when running btts and svvs tests (141909-01)

9276:a8a7fc849933
6816124 System crash running zpool destroy on broken zpool (141445-03)

9355:09928982c591
6818183 zfs snapshot -r is slow due to set_snap_props() doing txg_wait_synced() for each new snapshot (141445-03)

9391:413d0661ef33
6710376 log device can show incorrect status when other parts of pool are degraded (141445-03)

9396:f41cf682d0d3 (part already merged)
6501037 want user/group quotas on ZFS (141445-03)
6827260 assertion failed in arc_read(): hdr == pbuf->b_hdr (141445-03)
6815592 panic: No such hold X on refcount Y from zfs_znode_move (141445-03)
6759986 zfs list shows temporary %clone when doing online zfs recv (141445-03)

9404:319573cd93f8
6774713 zfs ignores canmount=noauto when sharenfs property != off (141445-03)

9412:4aefd8704ce0
6717022 ZFS DMU needs zero-copy support (141445-03)

9425:e7ffacaec3a8
6799895 spa_add_spares() needs to be protected by config lock (141445-03)
6826466 want to post sysevents on hot spare activation (141445-03)
6826468 spa 'allowfaulted' needs some work (141445-03)
6826469 kernel support for storing vdev FRU information (141445-03)
6826470 skip posting checksum errors from DTL regions of leaf vdevs (141445-03)
6826471 I/O errors after device remove probe can confuse FMA (141445-03)
6826472 spares should enjoy some of the benefits of cache devices (141445-03)

9443:2a96d8478e95
6833711 gang leaders shouldn't have to be logical (141445-03)

9463:d0bd231c7518
6764124 want zdb to be able to checksum metadata blocks only (141445-03)

9465:8372081b8019
6830237 zfs panic in zfs_groupmember() (141445-03)

9466:1fdfd1fed9c4
6833162 phantom log device in zpool status (141445-03)

9469:4f68f041ddcd
6824968 add ZFS userquota support to rquotad (141445-03)

9470:6d827468d7b5
6834217 godfather I/O should reexecute (141445-03)

9480:fcff33da767f
6596237 Stop looking and start ganging (141909-02)

9493:9933d599bc93
6623978 lwb->lwb_buf != NULL, file ../../../uts/common/fs/zfs/zil.c, line 787, function zil_lwb_commit (141445-06)

9512:64cafcbcc337
6801810 Commit of aligned streaming rewrites to ZIL device causes unwanted disk reads (N/A)

9515:d3b739d9d043
6586537 async zio taskqs can block out userland commands (142901-09)

9554:787363635b6a
6836768 zfs_userspace() callback has no way to indicate failure (N/A)

9574:1eb6a6ab2c57
6838062 zfs panics when an error is encountered in space_map_load() (141909-02)

9583:b0696cd037cc
6794136 Panic BAD TRAP: type=e when importing degraded zraid pool. (141909-03)

9630:e25a03f552e0
6776104 "zfs import" deadlock between spa_unload() and spa_async_thread() (141445-06)

9653:a70048a304d1
6664765 Unable to remove files when using fat-zap and quota exceeded on ZFS filesystem (141445-06)

9688:127be1845343
6841321 zfs userspace / zfs get userused@ doesn't work on mounted snapshot (N/A)
6843069 zfs get userused@S-1-... doesn't work (N/A)

9873:8ddc892eca6e
6847229 assertion failed: refcount_count(&tx->tx_space_written) + delta <= tx->tx_space_towrite in dmu_tx.c (141445-06)

9904:d260bd3fd47c
6838344 kernel heap corruption detected on zil while stress testing (141445-06)

9951:a4895b3dd543
6844900 zfs_ioc_userspace_upgrade leaks (N/A)

10040:38b25aeeaf7a
6857012 zfs panics on zpool import (141445-06)

10000:241a51d8720c
6848242 zdb -e no longer works as expected (N/A)

10100:4a6965f6bef8
6856634 snv_117 not booting: zfs_parse_bootfs: error2 (141445-07)

10160:a45b03783d44
6861983 zfs should use new name <-> SID interfaces (N/A)
6862984 userquota commands can hang (141445-06)

10299:80845694147f
6696858 zfs receive of incremental replication stream can dereference NULL pointer and crash (N/A)

10302:a9e3d1987706
6696858 zfs receive of incremental replication stream can dereference NULL pointer and crash (fix lint) (N/A)

10575:2a8816c5173b (partial merge)
6882227 spa_async_remove() shouldn't do a full clear (142901-14)

10800:469478b180d9
6880764 fsync on zfs is broken if writes are greater than 32kb on a hard crash and no log attached (142901-09)
6793430 zdb -ivvvv assertion failure: bp->blk_cksum.zc_word[2] == dmu_objset_id(zilog->zl_os) (N/A)

10801:e0bf032e8673 (partial merge)
6822816 assertion failed: zap_remove_int(ds_next_clones_obj) returns ENOENT (142901-09)

10810:b6b161a6ae4a
6892298 buf->b_hdr->b_state != arc_anon, file: ../../common/fs/zfs/arc.c, line: 2849 (142901-09)

10890:499786962772
6807339 spurious checksum errors when replacing a vdev (142901-13)

11249:6c30f7dfc97b
6906110 bad trap panic in zil_replay_log_record (142901-13)
6906946 zfs replay isn't handling uid/gid correctly (142901-13)

11454:6e69bacc1a5a
6898245 suspended zpool should not cause rest of the zfs/zpool commands to hang (142901-10)

11546:42ea6be8961b (partial merge)
6833999 3-way deadlock in dsl_dataset_hold_ref() and dsl_sync_task_group_sync() (142901-09)

Discussed with: pjd
Approved by: delphij (mentor)
Obtained from: OpenSolaris (multiple Bug IDs)
MFC after: 2 months


209957 12-Jul-2010 jkim

Move i386-inherited logic of building ACPI headers for acpi_wakeup.c into
better places and remove intermediate makefile and shell scripts. This
makes parallel kernel build little bit safer for amd64.


209662 03-Jul-2010 lstewart

Import the Statistical Information For TCP Research (SIFTR) kernel module into
FreeBSD. SIFTR logs a range of statistics on active TCP connections to a log
file, providing the ability to make highly granular measurements of TCP
connection state. The tool is aimed at system administrators, developers and
researchers alike. Please take it for a spin and test it out - the man page
should have all the information required to get you going.

Many thanks go to the Cisco University Research Program Fund at Community
Foundation Silicon Valley and the FreeBSD Foundation. Their support of our work
at the Centre for Advanced Internet Architectures, Swinburne University of
Technology is greatly appreciated.

Sponsored by: Cisco URP, FreeBSD Foundation
Reviewed by: dwmalone, gnn, rpaulo
Tested by: Many on freebsd-current@ and elsewhere over the years
MFC after: 1 month


209637 01-Jul-2010 jfv

Add new source to the loadable em build, thought
it wasnt needed but it is.


209616 30-Jun-2010 jfv

OK, I was a bit sleep this morning and checked in
the core changes but left out the shared code, lol.
Well, and a couple fixes to the core... hopefully
this will all be complete now.

Happy happy joy joy :)


209523 25-Jun-2010 rpaulo

Import the acpi_aibs(4) driver written by Constantine A. Murenin.
It has more features than acpi_aiboost(4) and it will eventually replace
acpi_aiboost(4).

Submitted by: Constantine A. Murenin <cnst at FreeBSD.org>
Reviewed by: freebsd-acpi, imp
MFC after: 1 month


209442 22-Jun-2010 thompsa

Add missing opt_compat.h dependency.

Found by: Garrett Cooper


208946 09-Jun-2010 ae

New netgraph node ng_patch(4). It performs data modification of packets
passing through. Modifications are restricted to a subset of C language
operations on unsigned integers of 8, 16, 32 or 64 bit size.
These are: set to new value (=), addition (+=), subtraction (-=),
multiplication (*=), division (/=), negation (= -), bitwise AND (&=),
bitwise OR (|=), bitwise eXclusive OR (^=), shift left (<<=),
shift right (>>=). Several operations are all applied to a packet
sequentially in order they were specified by user.

Submitted by: Maxim Ignatenko <gelraen.ua at gmail.com>
Vadim Goncharov <vadimnuclight at tpu.ru>
Discussed with: net@
Approved by: mav (mentor)
MFC after: 1 month


208770 03-Jun-2010 pjd

opensolaris_kmem.c is already part of opensolaris.ko which zfs.ko depends on.

Reported by: avg
MFC after: 3 days


208591 27-May-2010 rpaulo

Revert r208590. A license ack is not needed as per r186984.


208590 27-May-2010 rpaulo

Make the user ack the license before using this firmware.

MFC after: 3 days


208565 26-May-2010 kib

Remove a check that should be always true.

Discussed with: pjd
MFC after: 1 week


208554 25-May-2010 glebius

Add uep(4), driver for USB onscreen touch panel from eGalax.

The driver is stub. It just creates device entry and feeds
reassembled packets from hardware into it.

If in future we would port wsmouse(4) from NetBSD, or make
sysmouse(4) to support absolute motion events, then the driver
can be extended to act as system mouse. Meanwhile, it just
presents a /dev/uep0, that can be utilized by X driver, that
I am going to commit to ports tree soon.

The name for the driver is chosen to be the same as in NetBSD,
however, due to different USB stacks this driver isn't a port.


208486 24-May-2010 wkoszek

Bring USB fixes for linux(4).

Intention of this commit is to let us take a full advantage
of libusb(8) ported to Linux. This decreases a possibility of getting
any collisions within ioctl() "command" space, especially with
relation to LINUX_SNDCTL_SEQ... stuff.

Basically, we provide commands, that will be mapped in the kernel
to correct ones and forward those to the USB layer. Port enabling
functionality brought with this patch is here:

http://www.freebsd.org/cgi/query-pr.cgi?pr=146895

Bump __FreeBSD_version to catch, since which version installing a
port makes sense.

This patch should bring no regressions. So far, only i386 is tested.

Tested by: thompsa@
Reviewed by: thompsa@
OKed by: netchild@


208468 23-May-2010 marius

At least on sparc64 these modules require ata_machdep.c.

MFC after: 3 days


208462 23-May-2010 marius

Correct the path to the MD source so r206569 actually works as intended.


208455 23-May-2010 pjd

ZIO_USE_UMA is no longer used.

MFC after: 3 days


208183 17-May-2010 mav

Make mvs_if.c to not be always linked statically into the kernel.
Link it same way as mvs.c.


208143 16-May-2010 marius

Add the ofw_bus_if.h dependency introduced with r207585.


207979 12-May-2010 brueffer

Build the ixgbe(4) and mwlfw(4) modules by default.

PR: 144494
Submitted by: John Giacomoni <John.Giacomoni@LineRateSystems.com>, brucec


207920 11-May-2010 pjd

Back out r205134. It is not stable.

MFC after: 3 days


207536 02-May-2010 mav

Import mvs(4) - Marvell 88SX50XX/88SX60XX/88SX70XX/SoC SATA controllers
driver for CAM ATA subsystem. This driver supports same hardware as
atamarvell, ataadaptec and atamvsata drivers from ata(4), but provides
many additional features, such as NCQ, PMP, etc.


207404 29-Apr-2010 thompsa

usb_controller.c requires opt_ddb.h


207344 28-Apr-2010 jkim

Merge ACPICA 20100428.


206900 20-Apr-2010 rpaulo

The amd64 version of the cyclic dtrace module is a verbatim copy of the
i386 version, so instead having a copy of the same file, use Makefile
foo to include the i386 version on amd64.


206625 14-Apr-2010 yongari

Add driver for Silicon Integrated Systems SiS190/191 Fast/Gigabit Ethernet.
This driver was written by Alexander Pohoyda and greatly enhanced
by Nikolay Denev. I don't have these hardwares but this driver was
tested by Nikolay Denev and xclin.

Because SiS didn't release data sheet for this controller, programming
information came from Linux driver and OpenSolaris. Unlike other open
source driver for SiS190/191, sge(4) takes full advantage of TX/RX
checksum offloading and does not require additional copy operation in
RX handler.
The controller seems to have advanced offloading features like VLAN
hardware tag insertion/stripping, TCP segmentation offload(TSO) as
well as jumbo frame support but these features are not available
yet. Special thanks to xclin <xclin<> cs dot nctu dot edu dot tw>
who sent fix for receiving VLAN oversized frames.


206569 13-Apr-2010 imp

Only compile in uart_cpu_$MACHINE.c if it exists. I'm not sure how
useful it will be, but we really need to be keying off something other
than MACHINE for this anyway since on arm and mips we have lots of
these running around (one for each SoC family)...


206512 12-Apr-2010 imp

Doh! Last minute changes bites me in the butt....

Remove _ to make things build again.


206501 12-Apr-2010 imp

bce, bwi, bwn, mfi, mpt and siba_bwn all now compile that arm and mips
have added a BUS_SPACE_UNSPECIFIED definition. Add them back to the
mix on these platforms.


206497 12-Apr-2010 luigi

Bring in geom_sched, support for scheduling disk I/O requests
in a device independent manner. Also include an example anticipatory
scheduler, gsched_rr, which gives very nice performance improvements
in presence of competing random access patterns.

This is joint work with Fabio Checconi, developed last year
and presented at BSDCan 2009. You can find details in the
README file or at

http://info.iet.unipi.it/~luigi/geom_sched/


206446 10-Apr-2010 bschmidt

Update firmware for the 6000 series Intel cards to version 9.193.4.1.

Approved by: rpaulo (mentor)
MFC after: 2 weeks


206418 09-Apr-2010 rpaulo

Add ieee80211_{amrr,rssadapt}.c.

MFC after: 1 month


206380 07-Apr-2010 jkim

Correct beastie_saver module name.


206366 07-Apr-2010 jkim

Reconnect the old Beastie logo_saver to build as beastie_saver.


206365 07-Apr-2010 jkim

Copy logo_saver module to beastie_saver.


206358 07-Apr-2010 rpaulo

net80211 rate control framework (net80211 ratectl).

This framework allows drivers to abstract the rate control algorithm and
just feed the framework with the usable parameters. The rate control
framework will now deal with passing the parameters to the selected
algorithm. Right now we have AMRR (the default) and RSSADAPT but there's
no way to select one with ifconfig, yet.
The objective is to have more rate control algorithms in the net80211
stack so all drivers[0] can use it. Ideally, we'll have the well-known
sample rate control algorithm in the net80211 at some point so all
drivers can use it (not just ath).

[0] all drivers that do rate control in software, that is.

Reviewed by: bschmidt, thompsa, weyongo
MFC after: 1 months


206341 07-Apr-2010 luigi

add priority scheduler to the module


206089 02-Apr-2010 fabient

- Support for uncore counting events: one fixed PMC with the uncore
domain clock, 8 programmable PMC.
- Westmere based CPU (Xeon 5600, Corei7 980X) support.
- New man pages with events list for core and uncore.
- Updated Corei7 events with Intel 253669-033US December 2009 doc.
There is some removed events in the documentation, they have been
kept in the code but documented in the man page as obsolete.
- Offcore response events can be setup with rsp token.

Sponsored by: NETASQ


205959 31-Mar-2010 lstewart

Add support for ALQ(9) to be compiled and loaded as a kernel module.

Sponsored by: FreeBSD Foundation
Reviewed by: dwmalone, jeff, rpaulo, rwatson
Approved by: kmacy (mentor)
MFC after: 1 month


205869 29-Mar-2010 jfv

Update to igb and em:

em revision 7.0.0:
- Using driver devclass, seperate legacy (pre-pcie) code
into a seperate source file. This will at least help
protect against regression issues. It compiles along
with em, and is transparent to end use, devices in each
appear to be 'emX'. When using em in a modular form this
also allows the legacy stuff to be defined out.
- Add tx and rx rings as in igb, in the 82574 this becomes
actual multiqueue for the first time (2 queues) while in
other PCIE adapters its just make code cleaner.
- Add RX mbuf handling logic that matches igb, this will
eliminate packet drops due to temporary mbuf shortage.

igb revision 1.9.3:
- Following the ixgbe code, use a new approach in what
was called 'get_buf', the routine now has been made
independent of rxeof, it now does the update to the
engine TDT register, this design allows temporary
mbuf resources to become non-critical, not requiring
a packet to be discarded, instead it just returns and
does not increment the tail pointer.
- With the above change it was also unnecessary to keep
'spare' maps around, since we do not have the discard
issue.
- Performance tweaks and improvements to the code also.

MFC in a week


205852 29-Mar-2010 imp

Arm defines intr_disable() as a macro, which causes problems for cxgb.
Rather than remove it for all architectures (which was a botch in
r205845), remove it only for arm and mips until that can be sorted out.

Pointy Hat: imp

Submitted by: Navdeep Parhar
MFC after: 7 days


205845 29-Mar-2010 imp

Make all the modules build on arm (modulo ipfilter, which I'm looking
into):

o Don't build vpo and syscons on mips or arm either
o Add a section for mips and arm breakages, and document why.
This is easier than opting in on all the other architectures:
# no BUS_SPACE_UNSPECIFIED: bce, bwi, bwn, mfi, mpt, siba_bwn
# No barrier instruction support (specific to this driver): sym
# no uart_cpu_$MACHINE_ARCH: uart

(mips has, by inspection, the same issues as arm, so ditto for it)

MFC after: 7 days


205727 27-Mar-2010 marcel

Bring up-to-date:
o Switch to ITANIUM2 has the cpu. This has absolutely no effect
on the code, but makes for a better example.
o Drop COMPAT_FREEBSD6. We're tier 2, so you're supposed to run
8-stable or newer.
o Add PREEMPTION. It works now.
o Remove HWPMC_HOOKS. We don't have support for hwpmc yet.

o Add a bunch of new devices: atapist, hptiop, amr, ips, twa, igb,
ixgbe, ae, age, alc, ale, bce, bfe, et, jme, msk, nge, sk, ste,
stge, tx, vge, axe, rue, udav, fwip, and all USB serial.
o Remove "legacy" devices: le, vx, dc, pcn, rl, sis.

Make sure to the module list is a superset of what goes into GENERIC.


205720 27-Mar-2010 jfv

Update the driver to Intel version 2.1.6
- add some new hardware support for 82599
- Big change to interrupt architecture, it now
uses a queue which contains an RX/TX pair as
the recipient of the interrupt. This will reduce
overall system interrupts/msix usage.
- Improved RX mbuf handling: the old get_buf routine
is no longer synchronized with rxeof, this allows
the elimination of packet discards due to mbuf
allocation failure.
- Much simplified and improved AIM code, it now
happens in the queue interrupt context and takes
into account both the traffic on the RX AND TX
side.
- variety of small tweaks, like ring size, that have
been seen as performance improvements.
- Thanks to those that provided feedback or suggested
changes, I hope I've caught all of them.


205620 24-Mar-2010 luigi

make the module loadable

Submitted by: Marcin Wisnicki


205134 13-Mar-2010 kmacy

make UMA the default allocator for ZFS buffers - this avoids
a great deal of contention in kmem_alloc

MFC after: 7 days


205014 11-Mar-2010 nwhitehorn

Provide groundwork for 32-bit binary compatibility on non-x86 platforms,
for upcoming 64-bit PowerPC and MIPS support. This renames the COMPAT_IA32
option to COMPAT_FREEBSD32, removes some IA32-specific code from MI parts
of the kernel and enhances the freebsd32 compatibility code to support
big-endian platforms.

Reviewed by: kib, jhb


204877 08-Mar-2010 jkim

Enable ACPI module build on amd64. Although we strongly recommend building
it into kernel, there is no need to prevent it from building at all.


204874 08-Mar-2010 jkim

Update module Makefile for ACPICA 20100304.

Submitted by: Paul B Mahol (onemda at gmail dot com)


204870 08-Mar-2010 nwhitehorn

Enable tmpfs unconditionally on all platforms. No one I spoke to could
remember why it was x86 only, and it works just as well on at least powerpc
as on x86.


204656 03-Mar-2010 rpaulo

Add a missing ar9285_reset.c file.


204578 02-Mar-2010 rpaulo

Add AR9285 sources.


204326 25-Feb-2010 weongyo

Add bwn(4) driver to the build.


204309 25-Feb-2010 attilio

Introduce the new kernel sub-tree x86 which should contain all the code
shared and generalized between our current amd64, i386 and pc98.

This is just an initial step that should lead to a more complete effort.
For the moment, a very simple porting of cpufreq modules, BIOS calls and
the whole MD specific ISA bus part is added to the sub-tree but ideally
a lot of code might be added and more shared support should grow.

Sponsored by: Sandvine Incorporated
Reviewed by: emaste, kib, jhb, imp
Discussed on: arch
MFC: 3 weeks


204274 24-Feb-2010 np

There is no need to test __FreeBSD_version for features that have
been around for a long time now (7.1-ish or even earlier); assume
they are present. These includes MSI, TSO, LRO, VLAN, INTR_FILTERS,
FIRMWARE, etc.

Also, eliminate some dead code and clean up in other places as part
of this quick once-over.

MFC after: 1 week


204102 19-Feb-2010 marius

Hook up nfs_common missed in r203968.

Submitted by: kib


203968 16-Feb-2010 marius

Factor out the code shared between NFS client and server into its own
module. With r203732 it became apparent that creating the sysctl nodes
twice causes at least a warning, however the whole code shouldn't be
present twice in the first place.

Discussed with: rmacklem


203945 16-Feb-2010 weongyo

adds bwn(4) driver for supporting Broadcom BCM43xx chipsets.

o uses v4 firmware instead of v3. A port will be committed to create
the bwn firmware module.
o supports B/G and LP(low power) PHYs.
o supports 32 / 64 bits DMA operations.
o tested on big / little endian machines so should work on all
architectures.

It'd not connected to the build until the firmware port is committed.


203320 31-Jan-2010 weongyo

Hook up the siba_bwn module to the build.


203319 31-Jan-2010 weongyo

Adds siba_bwn module which is used with bwn(4). Main purpose of this
module is to distinguish parts of Silicon Backplane and of Broadcom
Wireless.


203288 31-Jan-2010 rnoland

Welcome drm support for VIA unichrome chips.

MFC after: 2 weeks


203287 31-Jan-2010 rnoland

Import simple drm memory manager.

This is required for the VIA driver and at least some parts are needed
for GEM.

MFC after: 2 weeks


203286 31-Jan-2010 rpaulo

Improve previous commit and add missing ar9280.c


203285 31-Jan-2010 rpaulo

Build 928x files too.


203148 29-Jan-2010 thompsa

Uuencode the rt2870 firmware into ascii like the other firmware blobs.


203134 28-Jan-2010 thompsa

Add run(4), a driver for Ralink RT2700U/RT2800U/RT3000U USB 802.11agn devices.

This driver was written for OpenBSD by Damien Bergamini and ported over by
Akinori Furukoshi.


202981 25-Jan-2010 yongari

Build smbfs kernel module on sparc64.


202448 16-Jan-2010 antoine

Do not build netgraph kernel modules if WITHOUT_NETGRAPH is set in src.conf

Submitted by: bf
MFC after: 2 weeks


202437 16-Jan-2010 trasz

Add gmountver, disk mount verification GEOM class.

Note that due to e.g. write throttling ('wdrain'), it can stall all the disk
I/O instead of just the device it's configured for. Using it for removable
media is therefore not a good idea.

Reviewed by: pjd (earlier version)


202290 14-Jan-2010 brueffer

Build iwi(4) and iwifw(4) modules on amd64 as well.

PR: 113117
Submitted by: "O. Hartmann" <ohartman@zedat.fu-berlin.de>
MFC after: 1 week


202283 14-Jan-2010 lulf

Bring in the ext2fs work done by Aditya Sarawgi during and after Google Summer
of Code 2009:

- BSDL block and inode allocation policies for ext2fs. This involves the use
FFS1 style block and inode allocation for ext2fs. Preallocation was removed
since it was GPL'd.
- Make ext2fs MPSAFE by introducing locks to per-mount datastructures.
- Fixes for kern/122047 PR.
- Various small bugfixes.
- Move out of gnu/ directory.

Sponsored by: Google Inc.
Submitted by: Aditya Sarawgi <sarawgi.aditya AT SPAMFREE gmail DOT com>


202181 13-Jan-2010 thompsa

Add a driver by Fredrik Lindberg for Option HSDPA USB devices. These differ
from standard 3G wireless units by supplying a raw IP/IPv6 endpoint rather than
using PPP over serial. uhsoctl(1) is used to initiate and close the WAN
connection.

Obtained from: Fredrik Lindberg <fli@shapeshifter.se>


202006 10-Jan-2010 marius

Add epic(4), a driver for the front panel LEDs in Sun Fire V215/V245.
It's named after the driver doing the same job in OpenSolaris.


201742 07-Jan-2010 bz

After adding an SDT provider for opencrypto in r199884 we should also
depend on opt_kdtrace.h for the module build.

Submitted by: (Andre.Albsmeier siemens.com)
MFC after: 3 days


201209 29-Dec-2009 rpaulo

iwn(4) update. Notable changes:
* new firmware
* untested support for 1000 and 6000 series
* bgscan support
* remove unnecessary RXON changes
* allow setting of country/regdomain by enforcing channel flags read
from the EEPROM
* suspend/resume fixes
* RF kill switch fixes
* LED adjustments
* several bus_dma*() related fixes
* addressed some LORs
* many other bug fixes

Submitted by: Bernhard Schmidt <bschmidt at techwires.net>
Obtained from: Brandon Gooch <jamesbrandongooch at gmail dot com> (LED
related changes), Benjamin Kaduk <kaduk at mit dot edu>
(LOR fixes), OpenBSD


200636 17-Dec-2009 luigi

Now that ipfw is split into multiple files, we need
to list them all in the Makefile for the module,
otherwise it won't load due to missing symbols.

The problem only affected head with ipfw built as a module.

Reported by David Horn


199969 30-Nov-2009 avg

amdsbwd: new driver for AMD SB600/SB7xx watchdog timer

The hardware is compliant with WDRT specification, so I originally
considered including generic WDRT watchdog support, but decided
against it, because I couldn't find anyone to the code for me.
WDRT seems to be not very popular.
Besides, generic WDRT porbably requires a slightly different driver
approach.

Reviewed by: des, gavin, rpaulo
MFC after: 3 weeks


199822 26-Nov-2009 mav

Drop USB mass storage devices support from ata(4). It is out of the build as
long as I remember, and completely superseded by better maintained umass(4).
It's main idea was to optionally avoid CAM dependency for such devices, but
with move ATA to CAM, it is not actual any more.

No objections: hselasky@, thompsa@, arch@


199338 16-Nov-2009 jkim

Add a forgotten module Makefile change from the previous commit.


199086 09-Nov-2009 rpaulo

Driver for the Apple Touchpad present on MacBook (non-Pro & Pro).

Submitted by: Rohit Grover <rgrover1 at gmail.com>
MFC after: 2 months


199015 07-Nov-2009 avg

ichwd: don't attach to isa pnp device(s) by accident

Reviewed by: imp, des
MFC after: 1 week


198439 24-Oct-2009 rpaulo

Updates to the iwn driver:
* iwnfw has now been split into individual modules so autoloading of
firmware module(s) does work again.
* Changes have been made to RUN -> AUTH transition, this should fix the
issue reported by Glen and others.
* Brandon reported issues in iwn_cmd() with large commands, those have
been fixed to.
* DEAUTH is now handled correctly.

Submitted by: Bernhard Schmidt <bschmidt at techwires.net>


198429 23-Oct-2009 rpaulo

Updated iwn(4) driver supporting the newer series, 5000, 5150 and 5300.

Submitted by: Bernhard Schmidt <bschmidt at techwires.net>


198389 23-Oct-2009 mav

MFp4:
Move Port Multiplier support code out of ATA XPT into pmp periph driver.
This is convinient, as PMP itself is a bus target and has own state.


198279 20-Oct-2009 avg

minor: fix sorting of some amd* entries in some makefiles

MFC after: 1 week


198258 19-Oct-2009 thompsa

Add opt_gdb.h which is now needed by ucom.


198256 19-Oct-2009 thompsa

Remove the newly added uch341 driver, it will be merged into uchcom instead.

Suggested by: takawata
Submitted by: HPS


198251 19-Oct-2009 jkim

Rewrite x86bios and update its dependent drivers.

- Do not map entire real mode memory (1MB). Instead, we map IVT/BDA and
ROM area separately. Most notably, ROM area is mapped as device memory
(uncacheable) as it should be. User memory is dynamically allocated and
free'ed with contigmalloc(9) and contigfree(9). Remove now redundant and
potentially dangerous x86bios_alloc.c. If this emulator ever grows to
support non-PC hardware, we may implement it with rman(9) later.
- Move all host-specific initializations from x86emu_util.c to x86bios.c and
remove now unnecessary x86emu_util.c. Currently, non-PC hardware is not
supported. We may use bus_space(9) later when the KPI is fixed.
- Replace all bzero() calls for emulated registers with more obviously named
x86bios_init_regs(). This function also initializes DS and SS properly.
- Add x86bios_get_intr(). This function checks if the interrupt vector is
available for the platform. It is not necessary for PC-compatible hardware
but it may be needed later. ;-)
- Do not try turning off monitor if DPMS does not support the state.
- Allocate stable memory for VESA OEM strings instead of just holding
pointers to them. They may or may not be accessible always. Fix a memory
leak of video mode table while I am here.
- Add (experimental) BIOS POST call for vesa(4). This function calls VGA
BIOS POST code from the current VGA option ROM. Some video controllers
cannot save and restore the state properly even if it is claimed to be
supported. Usually the symptom is blank display after resuming from suspend
state. If the video mode does not match the previous mode after restoring,
we try BIOS POST and force the known good initial state. Some magic was
taken from NetBSD (and it was taken from vbetool, I believe.)
- Add a loader tunable for vgapci(4) to give a hint to dpms(4) and vesa(4)
to identify who owns the VESA BIOS. This is very useful for multi-display
adapter setup. By default, the POST video controller is automatically
probed and the tunable "hw.pci.default_vgapci_unit" is set to corresponding
vgapci unit number. You may override it from loader but it is very unlikely
to be necessary. Unfortunately only AGP/PCI/PCI-E controllers can be
matched because ISA controller does not have necessary device IDs.
- Fix a long standing bug in state save/restore function. The state buffer
pointer should be ES:BX, not ES:DI according to VBE 3.0. If it ever worked,
that's because BX was always zero. :-)
- Clean up register initializations more clearer per VBE 3.0.
- Fix a lot of style issues with vesa(4).


198041 13-Oct-2009 jhb

Fix this module so it at least builds. Note that it isn't hooked up to
the build however, and ubser(4) is also not present in any kernel configs
(including NOTES).


198024 13-Oct-2009 rwatson

EXPORT_SYMS is not, in fact, required, for a dependent module to access
non-static symbols in a module they depend on, so remove dtrace symbols
from nfsclient's EXPORT_SYMS again.

Suggested by: jhb


197998 12-Oct-2009 rwatson

Export DTrace symbols from nfsclient so that dtnfsclient can get to them.
This fixes DTrace with nfsclient built as a module.

MFC after: 3 days
Reported by: markm


197928 10-Oct-2009 eri

Fix typo which has survived amazingly long!

Approved by: mlaier(mentor)
MFC after: 3 days


197791 05-Oct-2009 np

cxgb(4) updates, including:
- support for the new Gen-2, BT, and LP-CR cards.
- T3 firmware 7.7.0
- shared "common code" updates.

Approved by: gnn (mentor)
Obtained from: Chelsio
MFC after: 1 month


197730 03-Oct-2009 nyan

unifdef NFSCLIENT because the nlm depends on the nfsclient even if NFSCLIENT
is not defined.

Now the nfslockd module works with the nfsclient module.

Reviewed by: kib
MFC after: 3 days


197688 01-Oct-2009 jkim

Compile ACPI debugger and disassembler for kernel modules unconditionally.
These files will generate almost empty object files without ACPI_DEBUG/DDB
options. As a result, size of acpi.ko will increase slightly.


197557 28-Sep-2009 thompsa

Add support for ChipHead 341 serial port adapter.

Submitted by: Hans Petter Selasky


197535 27-Sep-2009 nyan

Add '#define NFSCLIENT' into opt_nfs.h if the NFSCLIENT variable is 1
(the default is 1).

This makes the nfslockd module works for NFS client.

Reviewed by: dfr
MFC after: 3 days


197518 26-Sep-2009 bz

lindev(4) [1] is supposed to be a collection of linux-specific pseudo
devices that we also support, just not by default (thus only LINT or
module builds by default).

While currently there is only "/dev/full" [2], we are planning to see more
in the future. We may decide to change the module/dependency logic in the
future should the list grow too long.

This is not part of linux.ko as also non-linux binaries like kFreeBSD
userland or ports can make use of this as well.

Suggested by: rwatson [1] (name)
Submitted by: ed [2]
Discussed with: markm, ed, rwatson, kib (weeks ago)
Reviewed by: rwatson, brueffer (prev. version)
PR: kern/68961
MFC after: 6 weeks


197444 23-Sep-2009 jkim

Move sys/dev/x86bios to sys/compat/x86bios.

It may not be optimal but it is clearly better than the old place.

OK'ed by: delphij, paradox (ddkprog yahoo com)


197428 23-Sep-2009 kib

Add per-process osrel node to the procfs, to allow read and set p_osrel
value for the process.

Approved by: des (procfs maintainer)
MFC after: 3 weeks


197411 22-Sep-2009 delphij

Removed unused empty directory.

Submitted by: b. f. <bf1783 googlemail com>


197397 22-Sep-2009 delphij

Build x86bios only for i386/amd64 for now. More work is required
to make these functional on other architectures, and the current
code breaks sparc64 and powerpc.

Spotted by: tinderbox via des


197383 21-Sep-2009 delphij

Collapase interrupt supporting functions to a new module, and switch from
x86emu to this new module.

This changeset also brings a fix for bugs introduced with the initial
x86emu commit, which prevents the user from using some display mode or
cause instant reboots during mode switch.

Submitted by: paradox <ddkprog yahoo com>


197379 21-Sep-2009 delphij

Enable s3pci on amd64 which works on top of VESA, and allow
static building it into kernel on i386 and amd64.

Submitted by: swell.k at gmail.com


197105 11-Sep-2009 jkim

Catch up with ACPICA 20090903.


197075 10-Sep-2009 n_hibma

Missing opt_*.h file reference for make depend in sys/modules

MFC after: 1 week


197025 09-Sep-2009 delphij

- Teach vesa(4) and dpms(4) about x86emu. [1]
- Add vesa kernel options for amd64.
- Connect libvgl library and splash kernel modules to amd64 build.
- Connect manual page dpms(4) to amd64 build.
- Remove old vesa/dpms files.

Submitted by: paradox <ddkprog yahoo com> [1], swell k at gmail.com
(with some minor tweaks)


197019 09-Sep-2009 delphij

- Port x86emu to FreeBSD.
- Connect x86emu to build.

Tested with: make universe
Submitted by: swell.k at gmail com


196636 29-Aug-2009 imp

Connect bwi up to the build. While there are some problems with this
driver still, it generally works well for most people most of the
time. It is still too green for GENERIC, however.

Submitted by: many (latest being kwm@)
MFC after: 2 days (before RC1 if possible)


196612 28-Aug-2009 ed

Hook up the pty(4) module to the build.


196480 23-Aug-2009 ed

Allow pty(4) to be loaded as a kld.

Unfortunately, the wrappers that are present in pts(4) don't have the
mechanics to allow pty(4) to be unloaded safely, so I'm forcing this kld
to return EBUSY. This also means we have to enable some extra code in
pts(4) unconditionally.

Proposed by: rwatson


196470 23-Aug-2009 rnoland

Add kernel support for Radeon R6/7xx 3D.

You will still need Mesa from git and possibly an updated DDX driver,
but this is working fairly well now.

MFC after: 2 weeks


196322 17-Aug-2009 jhb

Purge mergeinfo in sys/ that is either empty or a subset of the parent
mergeinfo on sys/ itself.

Approved by: re (mergeinfo blanket)


196295 17-Aug-2009 pjd

Remove OpenSolaris taskq port (it performs very poorly in our kernel) and
replace it with wrappers around our taskqueue(9).
To make it possible implement taskqueue_member() function which returns 1
if the given thread was created by the given taskqueue.

Approved by: re (kib)


196007 01-Aug-2009 mjacob

Add 8Gb card firmware. Update some 2Gb and 4Gb f/w sets.
Split 4Gb and 8Gb into pieces that can be either multi_id
capable or not.

Reviewed by: scottl, ken
Approved by: re


195892 26-Jul-2009 bz

Update epair(4) to the new netisr implementation and polish
things a bit:
- use dpcpu data to track the ifps with packets queued up,
- per-cpu locking and driver flags
- along with .nh_drainedcpu and NETISR_POLICY_CPU.
- Put the mbufs in flight reference count, preventing interfaces
from going away, under INVARIANTS as this is a general problem
of the stack and should be solved in if.c/netisr but still good
to verify the internal queuing logic.
- Permit changing the MTU to virtually everythinkg like we do for loopback.

Hook epair(4) up to the build.

Approved by: re (kib)


195810 21-Jul-2009 sam

correct setup of opt_ddb.h

Submitted by: jkim
Approved by: re (kib)


195804 21-Jul-2009 rpaulo

Enable mesh support.

Submitted by: jkim
Approved by: re (kib)


195801 21-Jul-2009 mav

Add `siis` CAM driver for SiliconImage SiI3124/3132/3531 SATA2 controllers.

Driver supports Serial ATA and ATAPI devices, Port Multipliers
(including FIS-based switching), hardware command queues (31 command
per port) and Native Command Queuing. This is probably the second on
popularity, after AHCI, type of SATA2 controllers, that benefits from
using CAM, because of hardware command queuing support.

Approved by: re (kib)


195534 10-Jul-2009 scottl

Separate the parallel scsi knowledge out of the core of the XPT, and
modularize it so that new transports can be created.

Add a transport for SATA

Add a periph+protocol layer for ATA

Add a driver for AHCI-compliant hardware.

Add a maxio field to CAM so that drivers can advertise their max
I/O capability. Modify various drivers so that they are insulated
from the value of MAXPHYS.

The new ATA/SATA code supports AHCI-compliant hardware, and will override
the classic ATA driver if it is loaded as a module at boot time or compiled
into the kernel. The stack now support NCQ (tagged queueing) for increased
performance on modern SATA drives. It also supports port multipliers.

ATA drives are accessed via 'ada' device nodes. ATAPI drives are
accessed via 'cd' device nodes. They can all be enumerated and manipulated
via camcontrol, just like SCSI drives. SCSI commands are not translated to
their ATA equivalents; ATA native commands are used throughout the entire
stack, including camcontrol. See the camcontrol manpage for further
details. Testing this code may require that you update your fstab, and
possibly modify your BIOS to enable AHCI functionality, if available.

This code is very experimental at the moment. The userland ABI/API has
changed, so applications will need to be recompiled. It may change
further in the near future. The 'ada' device name may also change as
more infrastructure is completed in this project. The goal is to
eventually put all CAM busses and devices until newbus, allowing for
interesting topology and management options.

Few functional changes will be seen with existing SCSI/SAS/FC drivers,
though the userland ABI has still changed. In the future, transports
specific modules for SAS and FC may appear in order to better support
the topologies and capabilities of these technologies.

The modularization of CAM and the addition of the ATA/SATA modules is
meant to break CAM out of the mold of being specific to SCSI, letting it
grow to be a framework for arbitrary transports and protocols. It also
allows drivers to be written to support discrete hardware without
jeopardizing the stability of non-related hardware. While only an AHCI
driver is provided now, a Silicon Image driver is also in the works.
Drivers for ICH1-4, ICH5-6, PIIX, classic IDE, and any other hardware
is possible and encouraged. Help with new transports is also encouraged.

Submitted by: scottl, mav
Approved by: re


195383 05-Jul-2009 sam

catchup with action+ageq additions

Submitted by: "Paul B. Mahol" <onemda@gmail.com>
Approved by: re (implicit)


195374 05-Jul-2009 trasz

When the kernel is configured without "options FFS", build UFS as a module
without requiring any special build flags.

Approved by: re (kib)


195362 05-Jul-2009 ivoras

Add missing reference to GPT support.

Submitted by: Paul B. Mahol onemda at gmail.com
Approved by: re (kib)


195202 30-Jun-2009 dfr

Remove the old kernel RPC implementation and the NFS_LEGACYRPC option.

Approved by: re


194875 24-Jun-2009 jfv

Update for the Intel 10G driver, this adds support for
newest hardware, adds multiqueue tx interface, infrastructure
cleanup to allow up to 32 MSIX vectors on newer Nehalem systems.
Bug fixes, etc.


194865 24-Jun-2009 jfv

Updates for both the em and igb drivers, add support
for multiqueue tx, shared code updates, new device
support, and some bug fixes.


194763 23-Jun-2009 marius

- Initialize the ifnet structure, especially if_dname, before probing
the PHYs as some PHY drivers use it (but probably shouldn't). How
gem(4) has worked with brgphy(4) on powerpc without this so far is
unclear to me.
- Introduce a dying flag which is set during detach and checked in
gem_ioctl() in order to prevent active BPF listeners to clear
promiscuous mode which may lead to the tick callout being restarted
which will trigger a panic once it's actually gone.
- In gem_stop() reset rather than just disable the transmitter and
receiver in order to ensure we're not unloading DMA maps still in
use by the hardware. [1]
- The blanking time is specified in PCI clocks so we should use twice
the value when operating at 66MHz.
- Spell some 2 as ETHER_ALIGN and a 19 as GEM_STATUS_TX_COMPLETION_SHFT
to make the actual intentions clear.
- As we don't unload the peak attempts counter ignore its overflow
interrupts.
- Remove a stale setting of a variable to GEM_TD_INTERRUPT_ME which
isn't used afterwards.
- For optimum performance increment the TX kick register in multiples
of 4 if possible as suggested by the documentation.
- Partially revert r164931; drivers should only clear the watchdog
timer if all outstanding TX descriptors are done.
- Fix some debugging strings.
- Add a missing BUS_DMASYNC_POSTWRITE in gem_rint().
- As the error paths in the interrupt handler are generally unlikely
predict them as false.
- Add support for the SBus version of the GEM controller. [2]
- Add some lock assertions.
- Improve some comments.
- Fix some more or less cosmetic issues in the code of the PCI front-end.
- Change some softc members to be unsigned where more appropriate and
remove unused ones.

Approved by: re (kib)
Obtained from: NetBSD (partially) [2], OpenBSD [1]
MFC after: 2 weeks


194743 23-Jun-2009 gallatin

Implement minimal set of changes suggested by bz to make
mxge no longer depend on INET.


194701 23-Jun-2009 rpaulo

* Driver for ACPI WMI (Windows Management Instrumentation)
* Driver for ACPI HP extra functionations, which required
ACPI WMI driver.

Submitted by: Michael <freebsdusb at bindone.de>
Approved by: re
MFC after: 2 weeks


194683 23-Jun-2009 zec

Connect ng_pipe to the default build.

Approved by: julian (mentor)


194521 19-Jun-2009 kmacy

Greatly simplify cxgb by removing almost all of the custom mbuf management logic

- remove mbuf iovec - useful, but adds too much complexity when isolated to
the driver

- remove driver private caching - insufficient benefit over UMA to justify
the added complexity and maintenance overhead

- remove separate logic for managing multiple transmit queues, with the
new drbr routines the control flow can be made to much more closely resemble
legacy drivers

- remove dedicated service threads, with per-cpu callouts one can get the same
benefit much more simply by registering a callout 1 tick in the future if there
are still buffered packets

- remove embedded mbuf usage - Jeffr's changes will (I hope) soon be integrated
greatly reducing the overhead of using kernel APIs for reference counting
clusters

- add hysteresis to descriptor coalescing logic

- add coalesce threshold sysctls to allow users to decide at run-time
between optimizing for forwarding / UDP or optimizing for TCP

- add once per second watchdog to effectively close the very rare races
occurring from coalescing

- incorporate Navdeep's changes to the initialization path required to
convert port and adapter locks back to ordinary mutexes (silencing BPF
LOR complaints)

- enable prefetches in get_packet and tx cleaning

Reviewed by: navdeep@
MFC after: 2 weeks


194330 17-Jun-2009 weongyo

adds opt_inet6.h to fix a error during compiling wlan as a module.

Reviewed by: sam


194313 16-Jun-2009 jkim

Fix a typo from the previous commit.


194312 16-Jun-2009 jkim

Sync acpi(4) kld module Makefile with conf/options.


194246 15-Jun-2009 marius

Add cas(4), a driver for Sun Cassini/Cassini+ and National Semiconductor
DP83065 Saturn Gigabit Ethernet controllers. These are the successors
of the Sun GEM controllers and still have a similar but extended transmit
logic. As such this driver is based on gem(4).
Thanks to marcel@ for providing a Sun Quad GigaSwift Ethernet UTP (QGE)
card which was vital for getting this driver to work on architectures
not using Open Firmware.

Approved by: re (kib)
MFC after: 2 weeks


194225 14-Jun-2009 des

Ed forgot this in r190751.


194220 14-Jun-2009 des

Ed forgot this in r190751.


194047 12-Jun-2009 ariff

Last (hopefully) attempt to fix both parallel build and
cyclic dependencies, in a simmilar fashion to kmod.mk.

Discussed with: bde, bz


193902 10-Jun-2009 ariff

Attempt to fix parallel build.


193889 10-Jun-2009 ariff

Move all sound related scripts to its own 'sound' subdir.

Suggested by: jmallett


193880 10-Jun-2009 yongari

Add alc(4), a driver for Atheros AR8131/AR8132 PCIe ethernet
controller. These controllers are also known as L1C(AR8131) and
L2C(AR8132) respectively. These controllers resembles the first
generation controller L1 but usage of different descriptor format
and new register mappings over L1 register space requires a new
driver. There are a couple of registers I still don't understand
but the driver seems to have no critical issues for performance and
stability. Currently alc(4) supports the following hardware
features.
o MSI
o TCP Segmentation offload
o Hardware VLAN tag insertion/stripping
o Tx/Rx interrupt moderation
o Hardware statistics counters(dev.alc.%d.stats)
o Jumbo frame
o WOL
AR8131/AR8132 also supports Tx checksum offloading but I disabled
it due to stability issues. I'm not sure this comes from broken
sample boards or hardware bugs. If you know your controller works
without problems you can still enable it. The controller has a
silicon bug for Rx checksum offloading, so the feature was not
implemented.
I'd like to say big thanks to Atheros. Atheros kindly sent sample
boards to me and answered several questions I had.

HW donated by: Atheros Communications, Inc.


193821 09-Jun-2009 ariff

Each generated file should depend its own generator as well.


193818 09-Jun-2009 bz

Depend on @ machine (_ILINKS) as we do with other modules so that @
is there for parallel (-jN) builds. Ideally beforedepends in kmod.mk
should do the right thing but it seems it does not.


193744 08-Jun-2009 bz

After r193232 rt_tables in vnet.h are no longer indirectly dependent on
the ROUTETABLES kernel option thus there is no need to include opt_route.h
anymore in all consumers of vnet.h and no longer depend on it for module
builds.

Remove the hidden include in flowtable.h as well and leave the two
explicit #includes in ip_input.c and ip_output.c.


193640 07-Jun-2009 ariff

Sound Mega-commit. Expect further cleanup until code freeze.

For a slightly thorough explaination, please refer to
[1] http://people.freebsd.org/~ariff/SOUND_4.TXT.html .

Summary of changes includes:

1 Volume Per-Channel (vpc). Provides private / standalone volume control
unique per-stream pcm channel without touching master volume / pcm.
Applications can directly use SNDCTL_DSP_[GET|SET][PLAY|REC]VOL, or for
backwards compatibility, SOUND_MIXER_PCM through the opened dsp device
instead of /dev/mixer. Special "bypass" mode is enabled through
/dev/mixer which will automatically detect if the adjustment is made
through /dev/mixer and forward its request to this private volume
controller. Changes to this volume object will not interfere with
other channels.

Requirements:
- SNDCTL_DSP_[GET|SET][PLAY|REC]_VOL are newer ioctls (OSSv4) which
require specific application modifications (preferred).
- No modifications required for using bypass mode, so applications
like mplayer or xmms should work out of the box.

Kernel hints:
- hint.pcm.%d.vpc (0 = disable vpc).

Kernel sysctls:
- hw.snd.vpc_mixer_bypass (default: 1). Enable or disable /dev/mixer
bypass mode.
- hw.snd.vpc_autoreset (default: 1). By default, closing/opening
/dev/dsp will reset the volume back to 0 db gain/attenuation.
Setting this to 0 will preserve its settings across device
closing/opening.
- hw.snd.vpc_reset (default: 0). Panic/reset button to reset all
volume settings back to 0 db.
- hw.snd.vpc_0db (default: 45). 0 db relative to linear mixer value.

2 High quality fixed-point Bandlimited SINC sampling rate converter,
based on Julius O'Smith's Digital Audio Resampling -
http://ccrma.stanford.edu/~jos/resample/. It includes a filter design
script written in awk (the clumsiest joke I've ever written)
- 100% 32bit fixed-point, 64bit accumulator.
- Possibly among the fastest (if not fastest) of its kind.
- Resampling quality is tunable, either runtime or during kernel
compilation (FEEDER_RATE_PRESETS).
- Quality can be further customized during kernel compilation by
defining FEEDER_RATE_PRESETS in /etc/make.conf.

Kernel sysctls:
- hw.snd.feeder_rate_quality.
0 - Zero-order Hold (ZOH). Fastest, bad quality.
1 - Linear Interpolation (LINEAR). Slightly slower than ZOH,
better quality but still does not eliminate aliasing.
2 - (and above) - Sinc Interpolation(SINC). Best quality. SINC
quality always start from 2 and above.

Rough quality comparisons:
- http://people.freebsd.org/~ariff/z_comparison/

3 Bit-perfect mode. Bypasses all feeder/dsp effects. Pure sound will be
directly fed into the hardware.

4 Parametric (compile time) Software Equalizer (Bass/Treble mixer). Can
be customized by defining FEEDER_EQ_PRESETS in /etc/make.conf.

5 Transparent/Adaptive Virtual Channel. Now you don't have to disable
vchans in order to make digital format pass through. It also makes
vchans more dynamic by choosing a better format/rate among all the
concurrent streams, which means that dev.pcm.X.play.vchanformat/rate
becomes sort of optional.

6 Exclusive Stream, with special open() mode O_EXCL. This will "mute"
other concurrent vchan streams and only allow a single channel with
O_EXCL set to keep producing sound.

Other Changes:
* most feeder_* stuffs are compilable in userland. Let's not
speculate whether we should go all out for it (save that for
FreeBSD 16.0-RELEASE).
* kobj signature fixups, thanks to Andriy Gapon <avg@freebsd.org>
* pull out channel mixing logic out of vchan.c and create its own
feeder_mixer for world justice.
* various refactoring here and there, for good or bad.
* activation of few more OSSv4 ioctls() (see [1] above).
* opt_snd.h for possible compile time configuration:
(mostly for debugging purposes, don't try these at home)
SND_DEBUG
SND_DIAGNOSTIC
SND_FEEDER_MULTIFORMAT
SND_FEEDER_FULL_MULTIFORMAT
SND_FEEDER_RATE_HP
SND_PCM_64
SND_OLDSTEREO

Manual page updates are on the way.

Tested by: joel, Olivier SMEDTS <olivier at gid0 d org>, too many
unsung / unnamed heroes.


193588 06-Jun-2009 rwatson

Remove opt_mac.h generation for various kernel modules that no longer
require it.

Submitted by: pjd


193532 05-Jun-2009 luigi

move kernel ipfw-related sources to a separate directory,
adjust conf/files and modules' Makefiles accordingly.

No code or ABI changes so this and most of previous related
changes can be easily MFC'ed

MFC after: 5 days


193530 05-Jun-2009 jkim

Import ACPICA 20090521.


193422 04-Jun-2009 weongyo

add two prerequisites; if_zydreg.h and if_zydfw for dependency check.


193240 01-Jun-2009 sam

driver for Marvell 88W8363 Wireless LAN controller


193195 01-Jun-2009 weongyo

connect urtw(4) to the amd64/i386 build that it's not tested on the big
endian machines yet.


193156 31-May-2009 nwhitehorn

Introduce support for cpufreq on PowerPC with the dynamic frequency
switching capabilities of the MPC7447A and MPC7448.


193128 30-May-2009 kmacy

fix xdrmem_control to be safe in an if statement
fix zfs to depend on krpc
remove xdr from zfs makefile

Submitted by: dchagin@freebsd.org


193123 30-May-2009 marcel

g_part_ebr.c includes opt_geom.h


192991 28-May-2009 rmacklem

Add the kernel build glue for the experimental NFS subsystem that
includes support for NFSv4. The subsystem can optionally be linked
into the kernel using the two options:
NFSCL - the client
NFSD - the server
It is also built as three modules:
nfscl - the client
nfsd - the server
nfscommon - functions shared by the client and server

Approved by: kib (mentor)


192971 28-May-2009 kmacy

MFdevbranch 192944
- add FreeBSD implementation of xdrmem_control needed by zfs
- have zfs define xdr_ops using FreeBSD's definition
- remove solaris xdr files from zfs compile


192909 27-May-2009 thompsa

Hook ubt and ubtbcmfw back up to the build.


192873 27-May-2009 weongyo

ports urtw(4) for USB2. Additionally it supports a 8187B chipset weakly
that it needs more stabilization.


192859 26-May-2009 sson

Add the ksyms(4) pseudo driver. The ksyms driver allows a process to
get a quick snapshot of the kernel's symbol table including the symbols
from any loaded modules (the symbols are all merged into one symbol
table). Unlike like other implementations, this ksyms driver maps
memory in the process memory space to store the snapshot at the time
/dev/ksyms is opened. It also checks to see if the process has already
a snapshot open and won't allow it to open /dev/ksyms it again until it
closes first. This prevents kernel and process memory from being
exhausted. Note that /dev/ksyms is used by the lockstat(1) command.

Reviewed by: gallatin kib (freebsd-arch)
Approved by: gnn (mentor)


192855 26-May-2009 des

Move opt_apic.h closer to the "XXX: for assym.s" comment.

Suggested by: jhb
MFC after: 1 week


192853 26-May-2009 sson

Add the OpenSolaris dtrace lockstat provider. The lockstat provider
adds probes for mutexes, reader/writer and shared/exclusive locks to
gather contention statistics and other locking information for
dtrace scripts, the lockstat(1M) command and other potential
consumers.

Reviewed by: attilio jhb jb
Approved by: gnn (mentor)


192852 26-May-2009 des

opt_apic.h is i386-only.

MFC after: 1 week


192800 26-May-2009 trasz

MFp4 changes neccessary for NFSv4 ACLs support in ZFS. This is mostly
about removing a few #ifdefs and providing compatibility wrappers and
VOP implementations to get and set an ACL; ZFS does ACL enforcement all
by itself.

Note that the VOPs are ifdefed out for now, so this change should be
a no-op.

Reviewed by: pjd


192578 22-May-2009 rwatson

Remove the unmaintained University of Michigan NFSv4 client from 8.x
prior to 8.0-RELEASE. Rick Macklem's new and more feature-rich NFSv234
client and server are replacing it.

Discussed with: rmacklem


192571 21-May-2009 sam

update for r192468 (monitor mode changes)

Submitted by: jkim


192314 18-May-2009 kan

Remove empty files and do nto try to build them.
Apparently, they are problematic for CTF users.

PR: 119298
Submitted by: Julian H. Stacey


192007 12-May-2009 weongyo

connect upgt(4) to the build. It should work on all architectures.


191984 11-May-2009 kmacy

rename xdr support files to avoid conflicts when linking in to the kernel


191983 11-May-2009 weongyo

ports upgt(4) driver for USB2.


191963 10-May-2009 nwhitehorn

PowerPC does not, in general, have ISA sound devices or an ISA bus,
so add PowerPC to list of platforms for which we don't want to depend
on ISA.


191934 09-May-2009 kmacy

fix atomic.S rename and vimage breakage

The latter was pointed out by Artem Belevich


191931 09-May-2009 kmacy

- rename atomic.S and crc32.c to avoid collisions when linking zfs in to the kernel
- update Makefile
- ifdef out acl_{alloc, free}, they aren't used by zfs and conflict with existing in-kernel routines


191919 08-May-2009 ed

Burn TTY ioctl bridges in compat layers.

I really don't want any pieces of code to include ioctl_compat.h, so let
the ibcs2 and svr4 compat leave sgtty alone. If they want to support
sgtty, they should emulate it on top of termios, not sgtty.

The code has been marked with BURN_BRIDGES for a long time. ibcs2 and
svr4 are not really popular pieces of code anyway.


191877 07-May-2009 dchagin

Add preliminary KTR(9) support to the linux emulation layer.

Approved by: kib (mentor)
MFC after: 1 month


191762 03-May-2009 imp

Bring in Andrew Thompson's port of Sepherosa Ziehau's bwi driver for
Broadcom BCM43xx chipsets. This driver uses the v3 firmware that
needs to be fetched separately. A port will be committed to create
the bwi firmware module.

The driver matches the following chips: Broadcom BCM4301, BCM4307,
BCM4306, BCM4309, BCM4311, BCM4312, BCM4318, BCM4319

The driver works for 802.11b and 802.11g.

Limitations:
This doesn't support the 802.11a or 802.11n portion of radios.
Some BCM4306 and BCM4309 cards don't work with Channel 1, 2 or 3.
Documenation for this firmware is reverse engineered from
http://bcm.sipsolutions.net/
V4 of the firmware is needed for 11a or 11n support
http://bcm-v4.sipsolutions.net/
Firmware needs to be fetched from a third party, port to be committed

# I've tested this with a BCM4319 mini-pci and a BCM4318 CardBus card, and
# not connected it to the build until the firmware port is committed.

Obtained from: DragonFlyBSD, //depot/projects/vap
Reviewed by: sam@, thompsa@


191722 01-May-2009 sam

add ralfw


191517 26-Apr-2009 ed

Remove empty directories from the HEAD.

Discussed with: developers, imp


191280 19-Apr-2009 nwhitehorn

Build sound modules on PowerPC.


191138 16-Apr-2009 rwatson

Garbage collect unbuildable and unusable non-MPSAFE network device
drivers that depended on the historic IFF_NEEDSGIANT compatibility
mechanism:

ar(4)
ray(4)
sr(4)

Discussed on: arch@


190971 12-Apr-2009 rmacklem

Change nfsserver so that it uses the nfssvc() system call provided
in sys/nfs/nfs_nfssvc.c by registering with it using the
nfsd_call_nfsserver function pointer. Also, add the build glue for
nfs_nfssvc.c optionally based on "nfsserver" and also as a loadable
module.

Submitted by: rmacklem
Reviewed by: kib
Approved by: kib (mentor)


190874 10-Apr-2009 jfv

Add support file for 82599 in Makefile

MFC after: 2 weeks


190784 06-Apr-2009 jhb

Add opt_kdtrace.h to fix standalone module build.


190769 06-Apr-2009 weongyo

connect uath(4) to the build. uath(4) should work on all architectures.


190755 06-Apr-2009 thompsa

Remove usb_sw_transfer.[ch] which are now empty after r190735.


190688 04-Apr-2009 weongyo

Add uath(4) wireless USB driver for Atheros AR5005UG and AR5005UX
chipsets.

Reviewed by: sam


190581 30-Mar-2009 mav

Integrate user/mav/ata branch:

Add ch_suspend/ch_resume methods for PCI controllers and implement them
for AHCI. Refactor AHCI channel initialization according to it.

Fix Port Multipliers operation. It is far from perfect yet, but works now.
Tested with JMicron JMB363 AHCI + SiI 3726 PMP pair.
Previous version was also tested with SiI 4726 PMP.

Hardware sponsored by: Vitsch Electronics / VEHosting.nl


190571 30-Mar-2009 sam

Remove ATH_SUPPORT_TDMA and use IEEE80211_SUPPORT_TDMA instead. It
doesn't make much sense to configure driver support w/o net80211.
Note this means ath now depends on opt_wlan.h.


190558 30-Mar-2009 imp

New PHY driver for the internal PHY found in the AX88790. There's a
number of quirks for this device, and this implements just the basics.
The 2.5s powerdown recommended in the datasheet will be next...


190507 28-Mar-2009 lulf

Import the gvinum work that have been done during and after Summer of Code 2007.
The work have been under testing and fixing since then, and it is mature enough
to be put into HEAD for further testing.

A lot have changed in this time, and here are the most important:
- Gvinum now uses one single workerthread instead of one thread for each
volume and each plex. The reason for this is that the previous scheme was
very complex, and was the cause of many of the bugs discovered in gvinum.
Instead, gvinum now uses one worker thread with an event queue, quite
similar to what used in gmirror.
- The rebuild/grow/initialize/parity check routines no longer runs in
separate threads, but are run as regular I/O requests with special flags.
This made it easier to support mounted growing and parity rebuild.
- Support for growing striped and raid5-plexes, meaning that one can extend the
volumes for these plex types in addition to the concat type. Also works while
the volume is mounted.
- Implementation of many of the missing commands from the old vinum:
attach/detach, start (was partially implemented), stop (was partially
implemented), concat, mirror, stripe, raid5 (shortcuts for creating volumes
with one plex of these organizations).
- The parity check and rebuild no longer goes between userland/kernel, meaning
that the gvinum command will not stay and wait forever for the rebuild to
finish. You can instead watch the status with the list command.
- Many problems with gvinum have been reported since 5.x, and some has been hard
to fix due to the complicated architecture. Hopefully, it should be more
stable and better handle edge cases that previously made gvinum crash.
- Failed drives no longer disappears entirely, but now leave behind a dummy
drive that makes sure the original state is not forgotten in case the system
is rebooted between drive failures/swaps.
- Update manpage to reflect new commands and extend it with some examples.

Sponsored by: Google Summer of Code 2007
Mentored by: le
Tested by: Rick C. Petty <rick-freebsd2008 -at- kiwi-computer.com>


190501 28-Mar-2009 mr

Add support for Phenom (Family 10h) to cpufreq.
Its a newer version provided by the author than in the PR.

PR: kern/128575
Submitted by: Gen Otsuji annona2 [at] gmail.com


190452 26-Mar-2009 ambrisko

Add in forgotten module ipmi_linux.

Found by: mlaier


190445 26-Mar-2009 ambrisko

Add stuff to support upcoming BMC/IPMI flashing of newer Dell machine
via the Linux tool.
- Add Linux shim to ipmi(4)
- Create a partitions file to linprocfs to make Linux fdisk see
disks. This file is dynamic so we can see disks come and go.
- Convert msdosfs to vfat in mtab since Linux uses that for
msdosfs.
- In the Linux mount path convert vfat passed in to msdosfs
so Linux mount works on FreeBSD. Note that tasting works
so that if da0 is a msdos file system
/compat/linux/bin/mount /dev/da0 /mnt
works.
- fix a 64it bug for l_off_t.
Grabing sh, mount, fdisk, df from Linux, creating a symlink of mtab to
/compat/linux/etc/mtab and then some careful unpacking of the Linux bmc
update tool and hacking makes it work on newer Dell boxes. Note, probably
if you can't figure out how to do this, then you probably shouldn't be
doing it :-)


190419 25-Mar-2009 rwatson

Move dtnfsclient.c in the cddl tree to nfs_kdtrace.c in the nfsclient
directory, since it's under a BSD license, and this keeps NFS internals-
aware tracing parts close to NFS.

MFC after: 1 month
Suggested by: jhb


190376 24-Mar-2009 marius

Revert unintended part of r190375.


190375 24-Mar-2009 marius

Given that zfs.ko depends on opensolaris.ko also build the latter by
default on sparc64.


190374 24-Mar-2009 marius

As with ZFS use real atomic operations for sparc64.


190293 22-Mar-2009 rwatson

Add dtnfsclient, a first cut at an NFSv2/v3 client reuest DTrace
provider. The NFS client exposes 'start' and 'done' probes for NFSv2
and NFSv3 RPCs when using the new RPC implementation, passing in the
vnode, mbuf chain, credential, and NFSv2 or NFSv3 procedure number.
For 'done' probes, the error number is also available.

Probes are named in the following way:

...
nfsclient:nfs2:write:start
nfsclient:nfs2:write:done
...
nfsclient:nfs3:access:start
nfsclient:nfs3:access:done
...

Access to the unmarshalled arguments is not easily available at this
point in the stack, but the passed probe arguments are sufficient to
to a lot of interesting things in practice. Technically, these probes
may cover multiple RPC retransmits, and even transactions if the
transaction ID change as a result of authentication failure or a
jukebox error from the server, but usefully capture the intent of a
single NFS request, such as access, getattr, write, etc.

Typical use might involve profiling RPC latency by system call, number
of RPCs, how often a getattr leads to a call to access, when failed
access control checks occur, etc. More detailed RPC information might
best be provided by adding a krpc provider. It would also be useful
to add NFS client probes for events such as the access cache or
attribute cache satisfying requests without an RPC.

Sponsored by: Google, Inc.
MFC after: 1 month


190102 19-Mar-2009 thompsa

Remove empty dirs.


190100 19-Mar-2009 thompsa

Remove the uscanner(4) driver, this follows the removal of the kernel scanner
driver in Linux 2.6. uscanner was just a simple wrapper around a fifo and
contained no logic, the default interface is now libusb (supported by sane).

Reviewed by: HPS


190012 19-Mar-2009 bms

Introduce a number of changes to the MROUTING code.
This is purely a forwarding plane cleanup; no control plane
code is involved.

Summary:
* Split IPv4 and IPv6 MROUTING support. The static compile-time
kernel option remains the same, however, the modules may now
be built for IPv4 and IPv6 separately as ip_mroute_mod and
ip6_mroute_mod.
* Clean up the IPv4 multicast forwarding code to use BSD queue
and hash table constructs. Don't build our own timer abstractions
when ratecheck() and timevalclear() etc will do.
* Expose the multicast forwarding cache (MFC) and virtual interface
table (VIF) as sysctls, to reduce netstat's dependence on libkvm
for this information for running kernels.
* bandwidth meters however still require libkvm.
* Make the MFC hash table size a boot/load-time tunable ULONG,
net.inet.ip.mfchashsize (defaults to 256).
* Remove unused members from struct vif and struct mfc.
* Kill RSVP support, as no current RSVP implementation uses it.
These stubs could be moved to raw_ip.c.
* Don't share locks or initialization between IPv4 and IPv6.
* Don't use a static struct route_in6 in ip6_mroute.c.
The v6 code is still using a cached struct route_in6, this is
moved to mif6 for the time being.
* More cleanup remains to be merged from ip_mroute.c to ip6_mroute.c.

v4 path tested using ports/net/mcast-tools.
v6 changes are mostly mechanical locking and *have not* been tested.
As these changes partially break some kernel ABIs, they will not
be MFCed. There is a lot more work to be done here.

Reviewed by: Pavlin Radoslavov


189851 15-Mar-2009 rwatson

Remove IFF_NEEDSGIANT, a compatibility infrastructure introduced
in FreeBSD 5.x to allow network device drivers to run with Giant
despite the network stack being Giant-free. This significantly
simplifies calls into ioctl() on network interfaces, especially
in the multicast code, as well as eliminates deferred invocation
of interface if_start routines.

Disable the build on device drivers still depending on
IFF_NEEDSGIANT as they no longer compile. They will be removed
in a few weeks if they haven't been made MPSAFE in that time.
Disabled drivers:

if_ar
if_axe
if_aue
if_cdce
if_cue
if_kue
if_ray
if_rue
if_rum
if_sr
if_udav
if_ural
if_zyd

Drivers that were already disabled because of tty changes:

if_ppp
if_sl

Discussed on: arch@


189768 13-Mar-2009 rpaulo

Rename the k8temp driver to amdtemp.

MFC after: 2 weeks


189499 07-Mar-2009 rnoland

Import support for ATI Radeon R600 and R700 series chips.

Tested on an HD3850 (RV670) on loan from Warren Block.

Currently, you need one of the following for this to be useful:

x11-drivers/xf86-video-radeonhd-devel (not tested)
xf86-video-ati from git (EXA works, xv is too fast)
xf86-video-radeonhd from git (EXA works, xv works)

There is no 3d support available from dri just yet.

MFC after: 2 weeks


189488 07-Mar-2009 weongyo

o port NDIS USB support from USB1 to the new usb(USB2).
o implement URB_FUNCTION_ABORT_PIPE handling.
o remove unused code related with canceling the timer list for USB
drivers.
o whitespace cleanup and style(9)

Obtained from: hps's original patch


188957 23-Feb-2009 thompsa

Move the uaudio and ata-usb drivers into their correct locations.


188943 23-Feb-2009 thompsa

Hook up new USB modules.


188939 23-Feb-2009 thompsa

Move usb to a graveyard location under sys/legacy/dev, it is intended that the
new USB2 stack will fully replace this for 8.0.

Remove kernel modules, a subsequent commit will update conf/files. Unhook
usbdevs from the build.


188746 18-Feb-2009 thompsa

Switch over to usbdevs.h generated at compile time.


188537 12-Feb-2009 cognet

Unbreak build by making svr4 conditional on i386.


188516 12-Feb-2009 n_hibma

Fix a few problems related to building modules in /sys/modules (not
checked whether this applies to builds in /sys/*/compile/* as well):

- Create empty opt_*.h files were missing
- Hook up svr4 to the build. It compiles fine here, so no reason to
disconnect it in the Makefile. were missing
- Hook up svr4 to the build. It compiles fine here, so no reason to
disconnect it in the Makefile.


188423 09-Feb-2009 thompsa

Hook uslcom2 up to the build.


188422 09-Feb-2009 thompsa

Remove usb2_config_td.[ch], they are no longer used.


188354 09-Feb-2009 marcel

Add the EBR scheme. The EBR scheme supports the Extended Boot Records
found inside extended partitions and used to create logical partitions.
At this time write/modify support is not (yet) present.
The EBR and MBR schemes both check the parent scheme. The MBR will
back-off when nested under another MBR, whereas the EBR only nests
under a MBR.


188294 07-Feb-2009 piso

Add SCTP NAT support.

Submitted by: CAIA (http://caia.swin.edu.au)


187816 28-Jan-2009 glebius

Fix typo in last commit.


187813 28-Jan-2009 imp

at91dci isn't useful except on arm.


187692 25-Jan-2009 nwhitehorn

Add support for the I2S and davbus audio controllers found in Apple PowerPC
hardware.

Submitted by: Marco Trillo


187633 23-Jan-2009 jkim

- Add few VIA bridges to agp_via.c and connect it to amd64 build
as they support Intel Core/Core 2 and VIA Nano processors.
- Align "optional agp" in conf/files.* for consistency while I am here.


187623 23-Jan-2009 weongyo

urtw(4) works also on amd64.

Tested by: kevlo


187612 23-Jan-2009 weongyo

Connect urtw(4) to the i386 build only because it's not tested on amd64
architecture but expect it'd work. In cases on other architectures it'd
not work yet.


187610 23-Jan-2009 weongyo

Add a new USB wireless driver, urtw(4) for supporting Realtek's 8187L
chipset.


187160 13-Jan-2009 thompsa

MFp4: //depot/projects/usb@155869

Initial version of ATMEGA USB device controller
driver. Has not been tested on real hardware yet.
The driver is based upon the AT91DCI driver.

Submitted by: Hans Petter Selasky


187112 12-Jan-2009 jkim

Connect padlock(4) to amd64 build for VIA Nano processors.


186984 09-Jan-2009 sam

remove license ack requirement; this was never needed

Reviewed by: core


186851 07-Jan-2009 rafan

- Remove snd_au88x0 which seems never got compiled into kernel nor as a kernel
module. These files cause manual interaction when building
ports/audio/aureal-kmod which provides a usable i386-only driver (it requires
linking against some linux object files distributed by vendor which bankrupted
back in 2000).

MFC after: 1 week


186730 04-Jan-2009 alfred

Sync with usb4bsd:

src/lib/libusb20/libusb20_desc.c

Make "libusb20_desc_foreach()" more readable.

src/sys/dev/usb2/controller/*.[ch]
src/sys/dev/usb2/core/*.[ch]

Implement support for USB power save for all HC's.

Implement support for Big-endian EHCI.

Move Huawei quirks back into "u3g" driver.

Improve device enumeration.

src/sys/dev/usb2/ethernet/*[ch]

Patches for supporting new AXE Gigabit chipset.

src/sys/dev/usb2/serial/*[ch]

Fix IOCTL return code.

src/sys/dev/usb2/wlan/*[ch]

Sync with old USB stack.

Submitted by: hps


186514 27-Dec-2008 weongyo

unbreak the build. Decoupled the USB2's NDIS build from the default
build.

Pointy hat to: me


186507 27-Dec-2008 weongyo

Integrate the NDIS USB support code to CURRENT.

Now the NDISulator supports NDIS USB drivers that it've tested with
devices as follows:

- Anygate XM-142 (Conexant)
- Netgear WG111v2 (Realtek)
- U-Khan UW-2054u (Marvell)
- Shuttle XPC Accessory PN20 (Realtek)
- ipTIME G054U2 (Ralink)
- UNiCORN WL-54G (ZyDAS)
- ZyXEL G-200v2 (ZyDAS)

All of them succeeded to attach and worked though there are still some
problems that it's expected to be solved.

To use NDIS USB support, you should rebuild and install ndiscvt(8) and
if you encounter a problem to attach please set `hw.ndisusb.halt' to
0 then retry.

I expect no changes of the NDIS code for PCI, PCMCIA devices.

Obtained from: //depot/projects/ndisusb/...


186490 25-Dec-2008 mav

Rejoin ng_tty module to the build.


186486 25-Dec-2008 julian

Hook up the ether_echo node and fix the man page


186481 25-Dec-2008 julian

Add a trivial node to reflect ethernet frames to whence they came.

MFC after: 1 month


186119 15-Dec-2008 qingli

This main goals of this project are:
1. separating L2 tables (ARP, NDP) from the L3 routing tables
2. removing as much locking dependencies among these layers as
possible to allow for some parallelism in the search operations
3. simplify the logic in the routing code,

The most notable end result is the obsolescent of the route
cloning (RTF_CLONING) concept, which translated into code reduction
in both IPv4 ARP and IPv6 NDP related modules, and size reduction in
struct rtentry{}. The change in design obsoletes the semantics of
RTF_CLONING, RTF_WASCLONE and RTF_LLINFO routing flags. The userland
applications such as "arp" and "ndp" have been modified to reflect
those changes. The output from "netstat -r" shows only the routing
entries.

Quite a few developers have contributed to this project in the
past: Glebius Smirnoff, Luigi Rizzo, Alessandro Cerri, and
Andre Oppermann. And most recently:

- Kip Macy revised the locking code completely, thus completing
the last piece of the puzzle, Kip has also been conducting
active functional testing
- Sam Leffler has helped me improving/refactoring the code, and
provided valuable reviews
- Julian Elischer setup the perforce tree for me and has helped
me maintaining that branch before the svn conversion


186094 14-Dec-2008 sam

Combine ath rate control modules with ath after bringing ath_hal
src into the tree. The old split was balanced on module dependencies
and symbol exposure that no longer exists. Users that want a module
setup with rate control algorithm other than sample must override
ATH_RATE in the ath module Makefile.

Reviewed by: imp


185878 10-Dec-2008 jhb

- Add 32-bit compat system calls for VFS_AIO. The system calls live in the
aio code and are registered via the recently added SYSCALL32_*() helpers.
- Since the aio code likes to invoke fuword and suword a lot down in the
"bowels" of system calls, add a structure holding a set of operations for
things like storing errors, copying in the aiocb structure, storing
status, etc. The 32-bit system calls use a separate operations vector to
handle fuword32 vs fuword, etc. Also, the oldsigevent handling is now
done by having seperate operation vectors with different aiocb copyin
routines.
- Split out kern_foo() functions for the various AIO system calls so the
32-bit front ends can manage things like copying in and converting
timespec structures, etc.
- For both the native and 32-bit aio_suspend() and lio_listio() calls,
just use copyin() to read the array of aiocb pointers instead of using
a for loop that iterated over fuword/fuword32. The error handling in
the old case was incomplete (lio_listio() just ignored any aiocb's that
it got an EFAULT trying to read rather than reporting an error), and
possibly slower.

MFC after: 1 month


185571 02-Dec-2008 bz

Rather than using hidden includes (with cicular dependencies),
directly include only the header files needed. This reduces the
unneeded spamming of various headers into lots of files.

For now, this leaves us with very few modules including vnet.h
and thus needing to depend on opt_route.h.

Reviewed by: brooks, gnn, des, zec, imp
Sponsored by: The FreeBSD Foundation


185544 02-Dec-2008 ps

Fix world by including opt_route.h


185522 01-Dec-2008 sam

Switch to ath hal source code. Note this removes the ath_hal
module; the ath module now brings in the hal support. Kernel
config files are almost backwards compatible; supplying

device ath_hal

gives you the same chip support that the binary hal did but you
must also include

options AH_SUPPORT_AR5416

to enable the extended format descriptors used by 11n parts.
It is now possible to control the chip support included in a
build by specifying exactly which chips are to be supported
in the config file; consult ath_hal(4) for information.


185428 29-Nov-2008 bz

make 'make universe' not complain about
In file included from /src/sys/modules/powermac_nvram/../../dev/powermac_nvram/powermac_nvram.c:38:
@/dev/ofw/ofw_bus.h:36:24: error: ofw_bus_if.h: No such file or directory
I am not sure for how long this had not worked and if it was just the
latest vimage commit that had revealed this or if nobody had built
universe successfully in a while. Btw, the tinderbox did not complain
either so that is probably the reason noone had noticed.


185363 27-Nov-2008 jkoshy

- Add support for PMCs in Intel CPUs of Family 6, model 0xE (Core Solo
and Core Duo), models 0xF (Core2), model 0x17 (Core2Extreme) and
model 0x1C (Atom).

In these CPUs, the actual numbers, kinds and widths of PMCs present
need to queried at run time. Support for specific "architectural"
events also needs to be queried at run time.

Model 0xE CPUs support programmable PMCs, subsequent CPUs
additionally support "fixed-function" counters.

- Use event names that are close to vendor documentation, taking in
account that:
- events with identical semantics on two or more CPUs in this family
can have differing names in vendor documentation,
- identical vendor event names may map to differing events across
CPUs,
- each type of CPU supports a different subset of measurable
events.

Fixed-function and programmable counters both use the same vendor
names for events. The use of a class name prefix ("iaf-" or
"iap-" respectively) permits these to be distinguished.

- In libpmc, refactor pmc_name_of_event() into a public interface
and an internal helper function, for use by log handling code.

- Minor code tweaks: staticize a global, freshen a few comments.

Tested by: gnn


185299 25-Nov-2008 dfr

Fix standalone module build by generating opt_kgssapi.h.

Submitted by: n_hibma


185291 25-Nov-2008 bz

Unbreak the build until alfred@ is back to fix it correctly.
For now disconnect the nonexistent serial_3g.


185290 25-Nov-2008 alfred

src/lib/libusb20/libusb20_compat01.c

Fix some issues about re-scanning of the devices.

src/lib/libusb20/libusb20_ugen20.c

Fix issue about libusb20 having to release the
USB transfers before doing a SET_CONFIG, else
the kernel will kill the file handle.

src/sys/dev/usb2/core/usb2_device.
src/sys/dev/usb2/core/usb2_generic.c
src/sys/dev/usb2/core/usb2_generic.h

Add support for U3G devices.
Improve and cleanup FIFO free handling.
Improve device re-enumeration.

src/sys/dev/usb2/core/usb2_msctest.c
src/sys/dev/usb2/core/usb2_msctest.h

Fix some problems in the USB Mass Storage Test.
Add Huawei vendor specific quirks.

src/sys/dev/usb2/core/usb2_request.c

Improve device re-enumeration.

src/sys/dev/usb2/ethernet/if_aue2.c
src/sys/dev/usb2/include/usb2_devid.h
src/sys/dev/usb2/include/usb2_devtable.h
src/sys/dev/usb2/quirk/usb2_quirk.c

Integrate changes from the old USB driver.

src/sys/dev/usb2/include/usb2_standard.h

Add definition of USB3.0 structures from USB.org.

src/sys/dev/usb2/serial/u3g2.c
src/sys/dev/usb2/serial/ugensa2.c
src/sys/modules/usb2/Makefile
src/sys/modules/usb2/serial_3g/Makefile

Import U3G driver.

Submitted by: Hans Petter Selasky (usb4bsd)


185188 22-Nov-2008 marcel

Include the QUICC backend in the kernel module.

PR: 127120


185029 17-Nov-2008 pjd

Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes.

This bring huge amount of changes, I'll enumerate only user-visible changes:

- Delegated Administration

Allows regular users to perform ZFS operations, like file system
creation, snapshot creation, etc.

- L2ARC

Level 2 cache for ZFS - allows to use additional disks for cache.
Huge performance improvements mostly for random read of mostly
static content.

- slog

Allow to use additional disks for ZFS Intent Log to speed up
operations like fsync(2).

- vfs.zfs.super_owner

Allows regular users to perform privileged operations on files stored
on ZFS file systems owned by him. Very careful with this one.

- chflags(2)

Not all the flags are supported. This still needs work.

- ZFSBoot

Support to boot off of ZFS pool. Not finished, AFAIK.

Submitted by: dfr

- Snapshot properties

- New failure modes

Before if write requested failed, system paniced. Now one
can select from one of three failure modes:
- panic - panic on write error
- wait - wait for disk to reappear
- continue - serve read requests if possible, block write requests

- Refquota, refreservation properties

Just quota and reservation properties, but don't count space consumed
by children file systems, clones and snapshots.

- Sparse volumes

ZVOLs that don't reserve space in the pool.

- External attributes

Compatible with extattr(2).

- NFSv4-ACLs

Not sure about the status, might not be complete yet.

Submitted by: trasz

- Creation-time properties

- Regression tests for zpool(8) command.

Obtained from: OpenSolaris


184950 14-Nov-2008 ps

Fix world

Approved by: kmacy


184895 12-Nov-2008 bz

Add opt_inet.h which has been needed since r184718, which had
introduced checks for #ifdef INET.

MFC after: 54 days


184894 12-Nov-2008 bz

Add opt_inet.h which has been needed since r184717 introducing
checks for #ifdef INET.

MFC after: 54 days


184893 12-Nov-2008 bz

Add opt_inet.h which has been needed since r184714, r184715 introducing
checks for #ifdef INET.

Submitted by: kmacy (r184876, I splitted lines)
MFC after: 54 days


184870 12-Nov-2008 yongari

Add ale(4), a driver for Atheros AR8121/AR8113/AR8114 PCIe ethernet
controller. The controller is also known as L1E(AR8121) and
L2E(AR8113/AR8114). Unlike its predecessor Attansic L1,
AR8121/AR8113/AR8114 uses completely different Rx logic such that
it requires separate driver. Datasheet for AR81xx is not available
to open source driver writers but it shares large part of Tx and
PHY logic of L1. I still don't understand some part of register
meaning and some MAC statistics counters but the driver seems to
have no critical issues for performance and stability.

The AR81xx requires copy operation to pass received frames to upper
stack such that ale(4) consumes a lot of CPU cycles than that of
other controller. A couple of silicon bugs also adds more CPU
cycles to address the known hardware bug. However, if you have fast
CPU you can still saturate the link.
Currently ale(4) supports the following hardware features.
- MSI.
- TCP Segmentation offload.
- Hardware VLAN tag insertion/stripping with checksum offload.
- Tx TCP/UDP checksum offload and Rx IP/TCP/UDP checksum offload.
- Tx/Rx interrupt moderation.
- Hardware statistics counters.
- Jumbo frame.
- WOL.

AR81xx PCIe ethernet controllers are mainly found on ASUS EeePC or
P5Q series of ASUS motherboards. Special thanks to Jeremy Chadwick
who sent the hardware to me. Without his donation writing a driver
for AR81xx would never have been possible. Big thanks to all people
who reported feedback or tested patches.

HW donated by: koitsu
Tested by: bsam, Joao Barros <joao.barros <> gmail DOT com >
Jan Henrik Sylvester <me <> janh DOT de >
Ivan Brawley < ivan <> brawley DOT id DOT au >,
CURRENT ML


184802 09-Nov-2008 jkoshy

- Separate PMC class dependent code from other kinds of machine
dependencies. A 'struct pmc_classdep' structure describes operations
on PMCs; 'struct pmc_mdep' contains one or more 'struct pmc_classdep'
structures depending on the CPU in question.

Inside PMC class dependent code, row indices are relative to the
PMCs supported by the PMC class; MI code in "hwpmc_mod.c" translates
global row indices before invoking class dependent operations.

- Augment the OP_GETCPUINFO request with the number of PMCs present
in a PMC class.

- Move code common to Intel CPUs to file "hwpmc_intel.c".

- Move TSC handling to file "hwpmc_tsc.c".


184716 06-Nov-2008 des

Unbreak NFS.

Pointy hat to: dfr


184700 05-Nov-2008 rodrigc

Merge latest DTrace changes from Perforce.

Approved by: jb


184689 05-Nov-2008 ed

Reintroduce the snp(4) driver.

Because the TTY hooks interface was not finished when I imported the
MPSAFE TTY layer, I had to disconnect the snp(4) driver. This snp(4)
implementation has been sitting in my P4 branch for some time now.
Unfortunately it still doesn't use the same error handling as snp(4)
(returning codes through FIONREAD), but it should already be usable.

I'm committing this to SVN, hoping someone else could polish off its
rough edges. It's always better than having a broken driver sitting in
the tree.


184610 04-Nov-2008 alfred

Bring in USB4BSD, Hans Petter Selasky rework of the USB stack
that includes significant features and SMP safety.

This commit includes a more or less complete rewrite of the *BSD USB
stack, including Host Controller and Device Controller drivers and
updating all existing USB drivers to use the new USB API:

1) A brief feature list:

- A new and mutex enabled USB API.

- Many USB drivers are now running Giant free.

- Linux USB kernel compatibility layer.

- New UGEN backend and libusb library, finally solves the "driver
unloading" problem. The new BSD licensed libusb20 library is fully
compatible with libusb-0.1.12 from sourceforge.

- New "usbconfig" utility, for easy configuration of USB.

- Full support for Split transactions, which means you can use your
full speed USB audio device on a high speed USB HUB.

- Full support for HS ISOC transactions, which makes writing drivers
for various HS webcams possible, for example.

- Full support for USB on embedded platforms, mostly cache flushing
and buffer invalidating stuff.

- Safer parsing of USB descriptors.

- Autodetect of annoying USB install disks.

- Support for USB device side mode, also called USB gadget mode,
using the same API like the USB host side. In other words the new
USB stack is symmetric with regard to host and device side.

- Support for USB transfers like I/O vectors, means more throughput
and less interrupts.

- ... see the FreeBSD quarterly status reports under "USB project"

2) To enable the driver in the default kernel build:

2.a) Remove all existing USB device options from your kernel config
file.

2.b) Add the following USB device options to your kernel configuration
file:

# USB core support
device usb2_core

# USB controller support
device usb2_controller
device usb2_controller_ehci
device usb2_controller_ohci
device usb2_controller_uhci

# USB mass storage support
device usb2_storage
device usb2_storage_mass

# USB ethernet support, requires miibus
device usb2_ethernet
device usb2_ethernet_aue
device usb2_ethernet_axe
device usb2_ethernet_cdce
device usb2_ethernet_cue
device usb2_ethernet_kue
device usb2_ethernet_rue
device usb2_ethernet_dav

# USB wireless LAN support
device usb2_wlan
device usb2_wlan_rum
device usb2_wlan_ral
device usb2_wlan_zyd

# USB serial device support
device usb2_serial
device usb2_serial_ark
device usb2_serial_bsa
device usb2_serial_bser
device usb2_serial_chcom
device usb2_serial_cycom
device usb2_serial_foma
device usb2_serial_ftdi
device usb2_serial_gensa
device usb2_serial_ipaq
device usb2_serial_lpt
device usb2_serial_mct
device usb2_serial_modem
device usb2_serial_moscom
device usb2_serial_plcom
device usb2_serial_visor
device usb2_serial_vscom

# USB bluetooth support
device usb2_bluetooth
device usb2_bluetooth_ng

# USB input device support
device usb2_input
device usb2_input_hid
device usb2_input_kbd
device usb2_input_ms

# USB sound and MIDI device support
device usb2_sound

2) To enable the driver at runtime:

2.a) Unload all existing USB modules. If USB is compiled into the
kernel then you might have to build a new kernel.

2.b) Load the "usb2_xxx.ko" modules under /boot/kernel having the same
base name like the kernel device option.

Submitted by: Hans Petter Selasky hselasky at c2i dot net
Reviewed by: imp, alfred


184588 03-Nov-2008 dfr

Implement support for RPCSEC_GSS authentication to both the NFS client
and server. This replaces the RPC implementation of the NFS client and
server with the newer RPC implementation originally developed
(actually ported from the userland sunrpc code) to support the NFS
Lock Manager. I have tested this code extensively and I believe it is
stable and that performance is at least equal to the legacy RPC
implementation.

The NFS code currently contains support for both the new RPC
implementation and the older legacy implementation inherited from the
original NFS codebase. The default is to use the new implementation -
add the NFS_LEGACYRPC option to fall back to the old code. When I
merge this support back to RELENG_7, I will probably change this so
that users have to 'opt in' to get the new code.

To use RPCSEC_GSS on either client or server, you must build a kernel
which includes the KGSSAPI option and the crypto device. On the
userland side, you must build at least a new libc, mountd, mount_nfs
and gssd. You must install new versions of /etc/rc.d/gssd and
/etc/rc.d/nfsd and add 'gssd_enable=YES' to /etc/rc.conf.

As long as gssd is running, you should be able to mount an NFS
filesystem from a server that requires RPCSEC_GSS authentication. The
mount itself can happen without any kerberos credentials but all
access to the filesystem will be denied unless the accessing user has
a valid ticket file in the standard place (/tmp/krb5cc_<uid>). There
is currently no support for situations where the ticket file is in a
different place, such as when the user logged in via SSH and has
delegated credentials from that login. This restriction is also
present in Solaris and Linux. In theory, we could improve this in
future, possibly using Brooks Davis' implementation of variant
symlinks.

Supporting RPCSEC_GSS on a server is nearly as simple. You must create
service creds for the server in the form 'nfs/<fqdn>@<REALM>' and
install them in /etc/krb5.keytab. The standard heimdal utility ktutil
makes this fairly easy. After the service creds have been created, you
can add a '-sec=krb5' option to /etc/exports and restart both mountd
and nfsd.

The only other difference an administrator should notice is that nfsd
doesn't fork to create service threads any more. In normal operation,
there will be two nfsd processes, one in userland waiting for TCP
connections and one in the kernel handling requests. The latter
process will create as many kthreads as required - these should be
visible via 'top -H'. The code has some support for varying the number
of service threads according to load but initially at least, nfsd uses
a fixed number of threads according to the value supplied to its '-n'
option.

Sponsored by: Isilon Systems
MFC after: 1 month


184577 03-Nov-2008 scottl

Add amr_cam module directory that was missed in the previous commit.


184573 03-Nov-2008 scottl

Move the CAM passthrough code into a true module so that it doesn't have to be
compiled into the main AMR driver. It's code that is nice to have but not
required for normal operation, and it is reported to cause problems for some
people.


184559 02-Nov-2008 imp

Make RL_TWISTER_ENABLE a tunable/sysctl. Eliminate it as an option.
Fix module build.

Submitted by: Kostik Belousov


184515 31-Oct-2008 imp

Add RL_TWISTER_ENABLE option. This enables the magic bits to do long
cable tuning. This has helped in some installations for hardware
deployed by a former employer. Made optional because the lists aren't
full of complaints about these cards... even when they were wildly
popular.

Reviewed by: attilio@, jhb@, trhodes@ (all an older version of the patch)


184331 27-Oct-2008 rwatson

Break mac_bsdextended.c out into multiple .c files, with the base access
control logic and policy registration remaining in that file, and access
control checks broken out into other files by class of check.

Obtained from: TrustedBSD Project


184221 24-Oct-2008 n_hibma

After adding U3G_DEBUG to LINT we need to create the opt_u3g.h file when
building the module.


184138 21-Oct-2008 mav

Import sdhci (PCI SD Host Controller) driver.
Driver supports PCI devices with class 8 and subclass 5 according to
SD Host Controller Specification.

Update NOTES, enable module and static build.
Enable related mmc and mmcsd modules build.

Discussed on: mobile@, current@


183735 09-Oct-2008 n_hibma

Say hello to the u3g driver, implementing support for 3G modems.

This was located in the ubsa driver, but should be moved into a separate
driver:

- 3G modems provide multiple serial ports to allow AT commands while the PPP
connection is up.
- 3G modems do not provide baud rate or other serial port settings.
- Huawei cards need specific initialisation.
- ubsa is for Belkin adapters, an Linuxy choice for another device like 3G.

Speeds achieved here with a weak signal at best is ~40kb/s (UMTS). No spooky
STALLED messages as well.

Next: Move over all entries for Sierra and Novatel cards once I have found
testers, and implemented serial port enumeration for Sierra (or rather have
Andrea Guzzo do it). They list all endpoints in 1 iface instead of 4 ifaces.

Submitted by: aguzzo@anywi.com
MFC after: 3 weeks


183730 09-Oct-2008 n_hibma

Obfuscated by other diffs while committing r183728:

Remove the files for the HCI interfaces from the usb module.


183728 09-Oct-2008 n_hibma

Add modules for the HCI part of USB. This is convenient when having a UHCI
controller in your laptop but inserting a (OHCI-based) Option Cardbus card.


183724 09-Oct-2008 sos

This is the roumored ATA modulerisation works, and it needs a little explanation.

If you just config KERNEL as usual there should be no apparent changes, you'll get all chipset support code compiled in.

However there is now a way to only compile in code for chipsets needed on a pr vendor basis. ATA now has the following "device" entries:

atacore: ATA core functionality, always needed for any ATA setup

atacard: CARDBUS support
atacbus: PC98 cbus support
ataisa: ISA bus support
atapci: PCI bus support only generic chipset support.

ataahci: AHCI support, also pulled in by some vendor modules.

ataacard, ataacerlabs, ataadaptec, ataamd, ataati, atacenatek, atacypress, atacyrix, atahighpoint, ataintel, ataite, atajmicron, atamarvell, atamicron, atanational, atanetcell, atanvidia, atapromise, ataserverworks, atasiliconimage, atasis, atavia; Vendor support, ie atavia for VIA chipsets

atadisk: ATA disk driver
ataraid: ATA softraid driver

atapicd: ATAPI cd/dvd driver
atapifd: ATAPI floppy/flashdisk driver
atapist: ATAPI tape driver

atausb: ATA<>USB bridge
atapicam: ATA<>CAM bridge

This makes it possible to config a kernel with just VIA chipset support by having the following ATA lines in the kernel config file:

device atacore
device atapci
device atavia

And then you need the atadisk, atapicd etc lines in there just as usual.

If you use ATA as modules loaded at boot there is few changes except the rename of the "ata" module to "atacore", things looks just as usual.
However under atapci you now have a whole bunch of vendor specific drivers, that you can kldload individually depending on you needs. Drivers have the same names as used in the kernel config explained above.


183674 07-Oct-2008 sam

the 3945 firmware license does not require acknowledging the EULA,
remove the sysctl ack requirement

Pointed out by: Joerg Sonnenberger
Reviewed by: thompsa
Approved by: core


183567 03-Oct-2008 stas

- Add driver for Attansic L2 FastEthernet controller found on
Asus EeePC and some Asus mainboards.

Reviewed by: yongari, rpaulo, jhb
Tested by: many
Approved by: kib (mentor)
MFC after: 1 week


183321 24-Sep-2008 kmacy

- Remove default NIC dependency on ulp headers
- make toe module build dependent on kernel support

Submitted by: Chelsio Inc.
MFC after: 1 week


183292 23-Sep-2008 kmacy

Update cxgb include paths to not require prefixing with dev/cxgb

Submitted by: Chelsio Inc.


183055 15-Sep-2008 sam

add ddb support (default to off unless built with the kernel)


183040 15-Sep-2008 ed

Allow COMPAT_SVR4 to be built without COMPAT_43.

It seems we only depend on COMPAT_43 to implement the send() and recv()
routines. We can easily implement them using sendto() and recvfrom(),
just like we do inside our very own C library.

I wasn't able to really test it, apart from simple compilation testing.
I've heard rumours that COMPAT_SVR4 is broken inside execve() anyway.
It's still worth to fix this, because I suspect we'll get rid of
COMPAT_43 somewhere in the future...

Reviewed by: rdivacky
Discussed with: jhb


182952 12-Sep-2008 takawata

Connect ufoma(4) to build and,
disable handsfree interface that is not yet ported to newtty.


182912 10-Sep-2008 jhb

Resurrect the sbni(4) driver. Someone finally tested the MPSAFE patches and
the driver worked ok with them.

Tested by: friends of yar


182897 09-Sep-2008 rpaulo

Build k8temp on i386.


182668 02-Sep-2008 imp

Per email to arch@ a little while ago (that was greeted with silence),
prefer the more common > ${.TARGET} over > opt_foo.h in modules
makefiles.


182481 30-Aug-2008 imp

opt_bus.h isn't needed here anymore. It never was really needed,
since usb has no business including it like it did...


182251 27-Aug-2008 imp

Remove opt_wi.h from module and fix typo in pccarddevs.


182125 24-Aug-2008 imp

Add uipaq. HTC smart phones use it, and it seems like a reasonable
thing to have laying around.


182081 23-Aug-2008 jhb

Add a very simple dpms(4) driver that uses the VESA BIOS DPMS calls to
turn off the external display during suspend and restore it to its
original state on resume.

MFC after: 2 weeks


182080 23-Aug-2008 rnoland

Update drm kernel drivers.

This is a sync to mesa/drm pre-gem, with a few fixes on top of that.
It also contains one local patch supplied by kib@ that I can't apply to
git.master shared code.

Approved by: flz
Obtained from: mesa/drm git.master
MFC after: 2 weeks


181905 20-Aug-2008 ed

Integrate the new MPSAFE TTY layer to the FreeBSD operating system.

The last half year I've been working on a replacement TTY layer for the
FreeBSD kernel. The new TTY layer was designed to improve the following:

- Improved driver model:

The old TTY layer has a driver model that is not abstract enough to
make it friendly to use. A good example is the output path, where the
device drivers directly access the output buffers. This means that an
in-kernel PPP implementation must always convert network buffers into
TTY buffers.

If a PPP implementation would be built on top of the new TTY layer
(still needs a hooks layer, though), it would allow the PPP
implementation to directly hand the data to the TTY driver.

- Improved hotplugging:

With the old TTY layer, it isn't entirely safe to destroy TTY's from
the system. This implementation has a two-step destructing design,
where the driver first abandons the TTY. After all threads have left
the TTY, the TTY layer calls a routine in the driver, which can be
used to free resources (unit numbers, etc).

The pts(4) driver also implements this feature, which means
posix_openpt() will now return PTY's that are created on the fly.

- Improved performance:

One of the major improvements is the per-TTY mutex, which is expected
to improve scalability when compared to the old Giant locking.
Another change is the unbuffered copying to userspace, which is both
used on TTY device nodes and PTY masters.

Upgrading should be quite straightforward. Unlike previous versions,
existing kernel configuration files do not need to be changed, except
when they reference device drivers that are listed in UPDATING.

Obtained from: //depot/projects/mpsafetty/...
Approved by: philip (ex-mentor)
Discussed: on the lists, at BSDCan, at the DevSummit
Sponsored by: Snow B.V., the Netherlands
dcons(4) fixed by: kan


181741 14-Aug-2008 imp

Move wb driver from sys/pci to sys/dev/wb.


181740 14-Aug-2008 imp

Move pcn driver from sys/pci to sys/dev/pcn.


181739 14-Aug-2008 imp

Move the ste driver from sys/pci to sys/dev/ste.


181738 14-Aug-2008 imp

Move the tl driver form sys/pci to sys/dev/tl.


181616 12-Aug-2008 kmacy

Remove cxgb private lro implementation and switch to using system implementation.

Obtained from: Chelsio Inc.
MFC after: 1 week


181578 11-Aug-2008 weongyo

Connect upgt(4) to the build.


181575 11-Aug-2008 weongyo

Add Conexant/Intersil PrismGT SoftMAC wireless USB driver - upgt(4).

This driver supports GW3887 based chipsets and works on
x86/powerpc/sparc64. You need upgtfw kernel module before loading
upgt(4). Please see the manpage.

Obtained from: OpenBSD


181524 10-Aug-2008 imp

Move sis to sys/dev/sis for consistency.


181522 10-Aug-2008 imp

Move the xl driver form sys/pci to sys/dev/xl for consistency.


181467 09-Aug-2008 philip

Add glxsb(4) driver for the Security Block in AMD Geode LX processors (as
found in Soekris hardware, for instance). The hardware supports acceleration
of AES-128-CBC accessible through crypto(4) and supplies entropy to random(4).

TODO:

o Implement rndtest(4) support
o Performance enhancements

Submitted by: Patrick Lamaizière <patfbsd -at- davenulle.org>
Reviewed by: jhb, sam
MFC after: 1 week


181430 08-Aug-2008 stas

- Add cpuctl(4) pseudo-device driver to provide access to some low-level
features of CPUs like reading/writing machine-specific registers,
retrieving cpuid data, and updating microcode.
- Add cpucontrol(8) utility, that provides userland access to
the features of cpuctl(4).
- Add subsequent manpages.

The cpuctl(4) device operates as follows. The pseudo-device node cpuctlX
is created for each cpu present in the systems. The pseudo-device minor
number corresponds to the cpu number in the system. The cpuctl(4) pseudo-
device allows a number of ioctl to be preformed, namely RDMSR/WRMSR/CPUID
and UPDATE. The first pair alows the caller to read/write machine-specific
registers from the correspondent CPU. cpuid data could be retrieved using
the CPUID call, and microcode updates are applied via UPDATE.

The permissions are inforced based on the pseudo-device file permissions.
RDMSR/CPUID will be allowed when the caller has read access to the device
node, while WRMSR/UPDATE will be granted only when the node is opened
for writing. There're also a number of priv(9) checks.

The cpucontrol(8) utility is intened to provide userland access to
the cpuctl(4) device features. The utility also allows one to apply
cpu microcode updates.

Currently only Intel and AMD cpus are supported and were tested.

Approved by: kib
Reviewed by: rpaulo, cokane, Peter Jeremy
MFC after: 1 month


181391 07-Aug-2008 imp

Add card_if.h and pccarddevs.h


181233 03-Aug-2008 ed

Disconnect drivers that haven't been ported to MPSAFE TTY yet.

As clearly mentioned on the mailing lists, there is a list of drivers
that have not been ported to the MPSAFE TTY layer yet. Remove them from
the kernel configuration files. This means people can now still use
these drivers if they explicitly put them in their kernel configuration
file, which is good.

People should keep in mind that after August 10, these drivers will not
work anymore. Even though owners of the hardware are capable of getting
these drivers working again, I will see if I can at least get them to a
compilable state (if time permits).


181040 31-Jul-2008 ps

Unbreak the build by creating opt_nfs.h


181034 30-Jul-2008 emax

Hook up Bluetooth SCO sockets code to the build

MFC after: 3 months


181030 30-Jul-2008 jfv

Change Makefile to reflect new directory structure

MFC after:ASAP


181029 30-Jul-2008 jfv

Change to build module with new directory tree

MFC after:ASAP


180925 28-Jul-2008 antoine

Remove a file that is not used and does not exist.


180781 24-Jul-2008 marius

Prefer the opt_global.h from KERNBUILDDIR if existent so we obtain all
macros that might be relevant.


180686 22-Jul-2008 marius

For sun4v ensure there is an opt_global.h with SUN4V defined included,
even for the stand-alone build.


180593 18-Jul-2008 dwmalone

Add an accept filter for TCP based DNS requests. It waits until the
whole first request is present before returning from accept.


180583 18-Jul-2008 kmacy

import vendor fixes to cxgb


180267 04-Jul-2008 jhb

Remove the sbsh(4) driver. No one responded to requests for testing the
MPSAFE patches on current@ and stable@. This driver also has a fundamental
issue in that it sleeps when sending commands to the card including in the
if_init/if_start routines (which can be called from interrupt context). As
such, the driver shouldn't be working reliably even on 4.x.


180265 04-Jul-2008 jhb

Remove the sbni(4) driver. No one responded to calls to test it on
current@ and stable@.


180261 04-Jul-2008 jhb

Remove the cnw(4) driver. No one responded to calls to test it on current@
and stable@. It also is a driver for an older non-802.11 wireless PC card
that is quite slow in comparison to say, wi(4). I know Warner wants this
driver axed as well.


180259 04-Jul-2008 jhb

Remove the oltr(4) driver. No one responded to calls for testing on
current@ and stable@ for the locking patches. The driver can always be
revived if someone tests it.

This driver also sleeps in its if_init routine, so it likely doesn't really
work at all anyway in modern releases.


180257 04-Jul-2008 jhb

Remove the arl(4) driver. It is reported to not work on 6.x or later
even though the driver hasn't changed since 4.x (last known working
release).


180059 27-Jun-2008 jhb

Rework the lifetime management of the kernel implementation of POSIX
semaphores. Specifically, semaphores are now represented as new file
descriptor type that is set to close on exec. This removes the need for
all of the manual process reference counting (and fork, exec, and exit
event handlers) as the normal file descriptor operations handle all of
that for us nicely. It is also suggested as one possible implementation
in the spec and at least one other OS (OS X) uses this approach.

Some bugs that were fixed as a result include:
- References to a named semaphore whose name is removed still work after
the sem_unlink() operation. Prior to this patch, if a semaphore's name
was removed, valid handles from sem_open() would get EINVAL errors from
sem_getvalue(), sem_post(), etc. This fixes that.
- Unnamed semaphores created with sem_init() were not cleaned up when a
process exited or exec'd. They were only cleaned up if the process
did an explicit sem_destroy(). This could result in a leak of semaphore
objects that could never be cleaned up.
- On the other hand, if another process guessed the id (kernel pointer to
'struct ksem' of an unnamed semaphore (created via sem_init)) and had
write access to the semaphore based on UID/GID checks, then that other
process could manipulate the semaphore via sem_destroy(), sem_post(),
sem_wait(), etc.
- As part of the permission check (UID/GID), the umask of the proces
creating the semaphore was not honored. Thus if your umask denied group
read/write access but the explicit mode in the sem_init() call allowed
it, the semaphore would be readable/writable by other users in the
same group, for example. This includes access via the previous bug.
- If the module refused to unload because there were active semaphores,
then it might have deregistered one or more of the semaphore system
calls before it noticed that there was a problem. I'm not sure if
this actually happened as the order that modules are discovered by the
kernel linker depends on how the actual .ko file is linked. One can
make the order deterministic by using a single module with a mod_event
handler that explicitly registers syscalls (and deregisters during
unload after any checks). This also fixes a race where even if the
sem_module unloaded first it would have destroyed locks that the
syscalls might be trying to access if they are still executing when
they are unloaded.

XXX: By the way, deregistering system calls doesn't do any blocking
to drain any threads from the calls.
- Some minor fixes to errno values on error. For example, sem_init()
isn't documented to return ENFILE or EMFILE if we run out of semaphores
the way that sem_open() can. Instead, it should return ENOSPC in that
case.

Other changes:
- Kernel semaphores now use a hash table to manage the namespace of
named semaphores nearly in a similar fashion to the POSIX shared memory
object file descriptors. Kernel semaphores can now also have names
longer than 14 chars (up to MAXPATHLEN) and can include subdirectories
in their pathname.
- The UID/GID permission checks for access to a named semaphore are now
done via vaccess() rather than a home-rolled set of checks.
- Now that kernel semaphores have an associated file object, the various
MAC checks for POSIX semaphores accept both a file credential and an
active credential. There is also a new posixsem_check_stat() since it
is possible to fstat() a semaphore file descriptor.
- A small set of regression tests (using the ksem API directly) is present
in src/tools/regression/posixsem.

Reported by: kris (1)
Tested by: kris
Reviewed by: rwatson (lightly)
MFC after: 1 month


180034 26-Jun-2008 thompsa

Remove the non-existent rt2860 subdir. Note, the ralfw module is not used in
the build yet.

PR: kern/125015
Submitted by: Dan Cojocar


180025 26-Jun-2008 dfr

Re-implement the client side of rpc.lockd in the kernel. This implementation
provides the correct semantics for flock(2) style locks which are used by the
lockf(1) command line tool and the pidfile(3) library. It also implements
recovery from server restarts and ensures that dirty cache blocks are written
to the server before obtaining locks (allowing multiple clients to use file
locking to safely share data).

Sponsored by: Isilon Systems
PR: 94256
MFC after: 2 weeks


179938 23-Jun-2008 thompsa

Always create opt_ah.h regardless of KERNBUILDDIR.


179895 20-Jun-2008 delphij

Add et(4), a port of DragonFly's Agere ET1310 10/100/Gigabit
Ethernet device driver, written by sephe@

Obtained from: DragonFly
Sponsored by: iXsystems
MFC after: 2 weeks


179785 14-Jun-2008 wkoszek

Remove obselete PECOFF image activator support.

PRs assigned at the time of removal: kern/80742

Discussed on: freebsd-current (silence), IRC
Tested by: make universe
Approved by: cognet (mentor)


179738 11-Jun-2008 jfv

Remove compile of tcp_lro since its now in netinet


179645 07-Jun-2008 marcel

Add support for the Apple Big Mac (BMAC) Ethernet controller,
found on various Apple G3 models.

Submitted by: Nathan Whitehorn


179452 31-May-2008 jb

Add the DTrace test kernel module so that people can run the tests.


179422 30-May-2008 sam

don't let KERNBUILDDIR control whether we copy opt_ah.h

Submitted by: jkim


179403 29-May-2008 sam

opt_ah.h is not constructed by config, it always comes from
the hal so don't let KERNBUILDDIR control whether or not we
copy it into the build dir


179386 28-May-2008 jhb

Add a module for cnw(4) and build it on i386.


179338 27-May-2008 yongari

Hook up jme(4) to the build.


179336 27-May-2008 yongari

Connect jmphy(4) to the build.


179308 25-May-2008 rwatson

Remove netatm from HEAD as it is not MPSAFE and relies on the now removed
NET_NEEDS_GIANT. netatm has been disconnected from the build for ten
months in HEAD/RELENG_7. Specifics:

- netatm include files
- netatm command line management tools
- libatm
- ATM parts in rescue and sysinstall
- sample configuration files and documents
- kernel support as a module or in NOTES
- netgraph wrapper nodes for netatm
- ctags data for netatm.
- netatm-specific device drivers.

MFC after: 3 weeks
Reviewed by: bz
Discussed with: bms, bz, harti


179298 25-May-2008 jb

Remove the dependency on lockstat. That its still work in progress.


179294 24-May-2008 bz

Remove 'fasttrap' module for amd64 for now as the code is not there
in sys/cddl/dev/fasttrap.


179274 24-May-2008 jb

Leave out a couple of DTrace modules for now.


179262 23-May-2008 jb

Hook the DTrace kernel modules into the build.


179261 23-May-2008 jb

The cyclic code is in sys/cddl/dev/cyclic to be consistent with
the other stuff.


179215 22-May-2008 sam

clear out crud

Submitted by: "Pawel Worach" <pawel.worach@gmail.com>


179101 19-May-2008 yongari

Hook up age(4) to the build.


179099 19-May-2008 yongari

Connect atphy(4) to the build.


179065 17-May-2008 jb

Add the DTrace kernel module makefiles.


179055 16-May-2008 jfv

This is driver version 1.4.4 of the Intel ixgbe driver.
-It has new hardware support
-It uses a new method of TX cleanup called Head Write Back
-It includes the provisional generic TCP LRO feature contributed
by Myricom and made general purpose by me. This should move into
the stack upon approval but for this driver drop its in here.
-Also bug fixes and etc...

MFC in a week if no serious issues arise.


178814 06-May-2008 jhb

Add a new personality to mpt(4) devices to allow userland applications to
perform various operations on a controller. Specifically, for each mpt(4)
device, create a character device in devfs which accepts ioctl requests for
reading and writing configuration pages and performing RAID actions.

MFC after: 1 week
Reviewed by: scottl


178804 06-May-2008 kmacy

only build iw_cxgb on i386 and amd64


178797 05-May-2008 kmacy

add rdma to build for i386 and amd64


178795 05-May-2008 kmacy

add iw_cxgb to the build


178794 05-May-2008 kmacy

add makefiles for rdma


178763 04-May-2008 marius

Restore SUBDIR+= accidentally removed in the previous revision.

Pointed out by: ariff


178762 04-May-2008 marius

Don't build unused SBus front-ends for sun4v, don't build EBus front-ends
which are also likely to be irrelevant for sun4v (there's no SBus on sun4v
and only some EBus devices). While at it fix some style bugs according to
style.Makefile(5) where appropriate.

MFC after: 3 days


178743 03-May-2008 sam

enable IEEE80211_AMDPU_AGE by default


178676 29-Apr-2008 sam

Intel 4965 wireless driver (derived from openbsd driver of the same name)


178601 26-Apr-2008 marcel

Include the QUICC bus front-end in the module for PowerPC.


178523 25-Apr-2008 jfv

This delta has a few important items:

PR 122839 is fixed in both em and in igb

Second, the issue on building modules since the static kernel
build changes is now resolved. I was not able to get the fancier
directory hierarchy working, but this works, both em and igb
build as modules now.

Third, there is now support in em for two new NICs, Hartwell
(or 82574) is a low cost PCIE dual port adapter that has MSIX,
for this release it uses 3 vectors only, RX, TX, and LINK. In
the next release I will add a second TX and RX queue. Also, there
is support here for ICH10, the followon to ICH9. Both of these are
early releases, general availability will follow soon.

Fourth: On Hartwell and ICH10 we now have IEEE 1588 PTP support,
I have implemented this in a provisional way so that early adopters
may try and comment on the functionality. The IOCTL structure may
change. This feature is off by default, you need to edit the Makefile
and add the EM_TIMESYNC define to get the code.

Enjoy all!!


178354 20-Apr-2008 sam

Multi-bss (aka vap) support for 802.11 devices.

Note this includes changes to all drivers and moves some device firmware
loading to use firmware(9) and a separate module (e.g. ral). Also there
no longer are separate wlan_scan* modules; this functionality is now
bundled into the wlan module.

Supported by: Hobnob and Marvell
Reviewed by: many
Obtained from: Atheros (some bits)


178352 20-Apr-2008 sam

move awi to the Attic; it will not make the jump to the new world order

Reviewed by: imp


178332 20-Apr-2008 antoine

Unbreak firmware.ko build without kernel.

Approved by: rwatson (mentor)
MFC after: 1 month


178302 19-Apr-2008 kmacy

move cxgb_lt2.[ch] from NIC to TOE
move most offload functionality from NIC to TOE
factor out all socket and inpcb direct access
factor out access to locking in incpb, pcbinfo, and sockbuf


178153 12-Apr-2008 rpaulo

Connect k8temp(4) to the build.


178130 11-Apr-2008 marius

Hook up ZFS to the sparc64 build.

Approved by: pjd
MFC after: 2 weeks


178129 11-Apr-2008 marius

Add atomic operations for ZFS/sparc64.

Approved by: core, pjd
Obtained from: OpenSolaris (w/ adaptations)
MFC after: 2 weeks


177973 07-Apr-2008 rpaulo

Remove isa_if.h.


177971 07-Apr-2008 rpaulo

Add opt_intr_filter.h.


177867 02-Apr-2008 jfv

This update primarily addresses the ability to have both the em
and the igb driver static in the kernel. But it also reflects
some other bug fixes in my development stream at Intel.
PR 122373 is also fixed in this code.


177822 01-Apr-2008 weongyo

Add malo driver to the build

Approved by: thompsa (mentor)


177692 28-Mar-2008 marcel

Add support for PC-9800 partition tables.


177674 27-Mar-2008 jb

The sources covered by Sun's CDDL have been repo copied below the
src/cddl and src/sys/cddl directories per the core@ decision following
the license review.

This change modifies the affected Makefiles to reference the sources
in their new location.


177671 27-Mar-2008 antoine

Remove option headers that do not exist and are not used
from the Makefiles in sys/modules.
(opt_devfs.h, opt_bdg.h, opt_emu10kx.h and opt_uslcom.h)

Approved by: rwatson (mentor)


177663 27-Mar-2008 dfr

Add nfslockd and krpc modules.


177662 27-Mar-2008 dfr

Add kernel module support for nfslockd and krpc. Use the module system
to detect (or load) kernel NLM support in rpc.lockd. Remove the '-k'
option to rpc.lockd and make kernel NLM the default. A user can still
force the use of the old user NLM by building a kernel without NFSLOCKD
and/or removing the nfslockd.ko module.


177595 25-Mar-2008 weongyo

Add support for Marvell Libertas 88W8335 based PCI network adapters.

Reviewed by: sam, many wireless people
Approved by: thompsa (mentor)


177512 23-Mar-2008 marcel

Instead of making a single geom_part.ko module, make a module
for each partitioning scheme. The gpart code is currently non-
optional.


177048 11-Mar-2008 yongari

Update file list and Makefile after repocopying vr(4) from
src/sys/pci to src/sys/dev.


176952 08-Mar-2008 obrien

"root" the include path so there is less duplication.


176868 06-Mar-2008 rink

Commit cmx(4), a driver for Omnikey CardMan 4040 PCMCIA smartcard readers.

PR: kern/114582
Submitted by: Daniel Roethlisberger <daniel@roe.ch>
Reviewed by: imp, myself
Tested by: johans, myself
MFC after: 2 weeks


176829 05-Mar-2008 rink

Import uslcom(4) from OpenBSD - this is a driver for Silicon Laboratories
CP2101/CP2102 based USB serial adapters.

Reviewed by: imp, emaste
Obtained from: OpenBSD
MFC after: 2 weeks


176755 03-Mar-2008 kmacy

Add KMOD target.

Discovered by: Takahashi Yoshihiro


176725 02-Mar-2008 marcel

Remove makefiles for geom_apple and geom_gpt. These are non-existent
for while.


176724 02-Mar-2008 marcel

Add geom_part module.


176674 29-Feb-2008 jfv

Last change was incomplete, instantiate the igb variable...


176673 29-Feb-2008 jfv

Add igb driver to the build


176670 29-Feb-2008 piso

Hook ipfw_nat to the build.


176669 29-Feb-2008 piso

Move ipfw's nat code into its own kld: ipfw_nat.


176667 29-Feb-2008 jfv

This change introduces a split to the Intel E1000 driver, now rather than
just em, there is an igb driver (this follows behavior with our Linux drivers).
All adapters up to the 82575 are supported in em, and new client/desktop support
will continue to be in that adapter.

The igb driver is for new server NICs like the 82575 and its followons.
Advanced features for virtualization and performance will be in this driver.

Also, both drivers now have shared code that is up to the latest we have
released. Some stylistic changes as well.

Enjoy :)


176613 26-Feb-2008 kmacy

move remaining binaries in to blob headers


176572 26-Feb-2008 kmacy

Move firmware in to separate module that can be compiled statically in to the kernel
Add utility for converting future firmware revs to a C header file


176472 23-Feb-2008 kmacy

- update firmware to 5.0
- add support for T3C
- add DDP support (zero-copy receive)
- fix TOE transmit of large requests
- fix shutdown so that sockets don't remain in CLOSING state indefinitely
- register listeners when an interface is brought up after tom is loaded
- fix setting of multicast filter
- enable link at device attach
- exit tick handler if shutdown is in progress
- add helper for logging TCB
- add sysctls for dumping transmit queues

- note that TOE wxill not be MFC'd until after 7.0 has been finalized

MFC after: 3 days


176436 21-Feb-2008 ru

Remove WARNS from here and compile with default kernel flags.
Switch off those warnings that ZFS sources do not pass.


176435 21-Feb-2008 ru

Remove WARNS from here and compile with default kernel flags.


176422 20-Feb-2008 thompsa

geom_lvm(4) is now known as geom_linux_lvm(4).


176421 20-Feb-2008 thompsa

Rename geom_lvm(4) to geom_linux_lvm(4).

Requested by: des, phk


176418 20-Feb-2008 thompsa

Rename geom_lvm(4) to geom_linux_lvm(4).

Requested by: des, phk


176241 13-Feb-2008 rwatson

Remove coda_namecache from coda5 as well. We should probably GC coda5
entirely at this point as coda6 is considered the supported branch.

MFC after: 1 month


176233 13-Feb-2008 rwatson

Rather than having the Coda module use its own namecache, use the global
VFS namecache, as is done by the Coda module on Linux. Unlike the Coda
namecache, the global VFS namecache isn't tagged by credential, so use
ore conservative flushing behavior (for now) when CODA_PURGEUSER is
issued by Venus.

This improves overall integration with the FreeBSD VFS, including
allowing __getcwd() to work better, procfs/procstat monitoring, and so
on. This improves shell behavior in many cases, and improves ".."
handling. It may lead to some slowdown until we've implemented a
specific access cache, which should net improve performance, but in the
mean time, lookup access control now always goes to Venus, whereas
previously it didn't.

MFC after: 1 month


176167 11-Feb-2008 thompsa

Hook geom_lvm(4) up to the build.


175933 03-Feb-2008 brueffer

Don't build the rr232x module, it has been removed.

Approved by: rwatson (mentor)


175915 03-Feb-2008 scottl

Remove the rr232x driver. It has been superceded by the hptrr driver.


175702 27-Jan-2008 marius

Add a driver for the National Semiconductor DP83815, DP83843 and
DP83847 PHYs. The main reason for using a specific driver for these
PHYs are reset quirks similar to the nsphy(4) driven DP83840A.

PR: 112654
Obtained from: NetBSD
MFC after: 2 weeks
Thanks to: mlaier for testing w/ DP83815


175701 27-Jan-2008 marius

Sort values according to style.Makefile(5).


175666 26-Jan-2008 kmacy

add opt_global.h dependency


175521 21-Jan-2008 yongari

Update file list and Makefile after repocopying sf(4) from
src/sys/pci to src/sys/dev.


175365 15-Jan-2008 gallatin

Add optional support to mxge for MSI-X interrupts and multiple receive
queues (which we call slices). The NIC will steer traffic into up to
hw.mxge.max_slices different receive rings based on a configurable
hash type (hw.mxge.rss_hash_type).

Currently the driver defaults to using a single slice, so the default
behavior is unchanged. Also, transmit from non-zero slices is
disabled currently.


175301 13-Jan-2008 kmacy

add cxgb_multiq.c to the build


174758 18-Dec-2007 kmacy

Don't overload tcp_usrreqs unless the kernel doesn't provide offload support.


174708 17-Dec-2007 kmacy

Make TCP offload work on HEAD (modulo negative interaction between sbcompress
and t3_push_frames).
- Import latest changes to cxgb_main.c and cxgb_sge.c from toestack p4 branch
- make driver local copy of tcp_subr.c and tcp_usrreq.c and override tcp_usrreqs so
TOE can also functions on versions with unmodified TCP

- add cxgb back to the build


174673 16-Dec-2007 kmacy

Add back in cxgb now that the includes are believed to be fixed


174666 16-Dec-2007 kmacy

Remove cxgb module from build until I can compensate for the lack of header
pollution on architectures other than amd64


174644 16-Dec-2007 kmacy

Makefile for the TCP offload module


174643 16-Dec-2007 kmacy

Don't use old style mbuf iovec interface


174627 15-Dec-2007 kmacy

Move NIC driver (cxgb) into its own directory. Add toecore to support
registering different TOMs.


174604 15-Dec-2007 scottl

Add the 'hptrr' driver for supporting the following Highpoint RocketRAID
cards:

o RocketRAID 172x series
o RocketRAID 174x series
o RocketRAID 2210
o RocketRAID 222x series
o RocketRAID 2240
o RocketRAID 230x series
o RocketRAID 231x series
o RocketRAID 232x series
o RocketRAID 2340
o RocketRAID 2522

Many thanks to Highpoint for their continued support of FreeBSD.

Submitted by: Highpoint


174183 02-Dec-2007 scottl

The AR_SCSI_PASSTHROUGH conditional no longer exists, remove it from the
makefile.


174059 28-Nov-2007 jb

Remove _SOLARIS_C_SOURCE now that it doesn't do anything in FreeBSD
headers. All OpenSolaris compatibility comes via the set of specific
compatibility headers in src/compat/opensolaris and
src/sys/compat/opensolaris.


173573 12-Nov-2007 jhb

Move the agp(4) driver from sys/pci to sys/dev/agp. __FreeBSD_version was
bumped to 800004 to note the change though userland apps should not be
affected since they use <sys/agpio.h> rather than the headers in
sys/dev/agp.

Discussed with: anholt
Repocopy by: simon


173491 08-Nov-2007 benjsc

Link wpi(4) into the build.

This includes:
o mtree (for legal/intel_wpi)
o manpage for i386/amd64 archs
o module for i386/amd64 archs
o NOTES for i386/amd64 archs

Approved by: mlaier (comentor)


173490 08-Nov-2007 benjsc

Remove an unneeded CFLAGS line

Approved by: mlaier (comentor)


173428 07-Nov-2007 rpaulo

asmc build infrastructure.

Approved by: njl (mentor)
Reviewed by: njl (mentor)


173427 07-Nov-2007 rpaulo

Connect asmc to the build infrastructure.

Approved by: njl (mentor)
Reviewed by: njl (mentor)


173362 05-Nov-2007 benjsc

Initial Import of wpi driver based on p4 changeset 128641.

This import includes:
o wpi Wireless driver for the Intel 3945 Wireless Lan Controller (802.11abg) (sys/dev/wpi)
o Intel firmware revision 2.14.4 & associated LICENSE (sys/dev/contrib/wpi, sys/contrib/dev/wpi/LICENSE)
o wpifw Firmware driver (sys/modules/wpifw)

Approved by: mlaier, sam (co-mentors)


173238 31-Oct-2007 sam

add zyd

MFC after: 3 days


173139 29-Oct-2007 rwatson

Merge Neterion if_nxge driver version 2.0.9.11230 with the following
changes:

01 - Enhanced LRO:
LRO feature is extended to support multi-buffer mode. Previously,
Ethernet frames received in contiguous buffers were offloaded.
Now, frames received in multiple non-contiguous buffers can be
offloaded, as well. The driver now supports LRO for jumbo frames.

02 - Locks Optimization:
The driver code was re-organized to limit the use of locks.
Moreover, lock contention was reduced by replacing wait locks
with try locks.

03 - Code Optimization:
The driver code was re-factored to eliminate some memcpy
operations. Fast path loops were optimized.

04 - Tag Creations:
Physical Buffer Tags are now optimized based upon frame size.
For better performance, Physical Memory Maps are now re-used.

05 - Configuration:
Features such as TSO, LRO, and Interrupt Mode can be configured
either at load or at run time. Rx buffer mode (mode 1 or mode 2)
can be configured at load time through kenv.

06 - Driver Statistics:
Run time statistics are enhanced to provide better visibility
into the driver performance.

07 - Bug Fixes:
The driver contains fixes for the problems discovered and
reported since last submission.

08 - MSI support:
Added Message Signaled Interrupt feature which currently uses 1
message.

09 Removed feature:
Rx 3 buffer mode feature has been removed. Driver now supports 1,
2 and 5 buffer modes of which 2 and 5 buffer modes can be used
for header separation.

10 Compiler warning:
Fixed compiler warning when compiled for 32 bit system.

11 Copyright notice:
Source files are updated with the proper copyright notice.

MFC after: 3 days
Submitted by: Alicia Pena <Alicia dot Pena at neterion dot com>,
Muhammad Shafiq <Muhammad dot Shafiq at neterion dot com>


173021 26-Oct-2007 nyan

Disable the coretemp and nvram on pc98.


173006 26-Oct-2007 pjd

Add GEOM VIRSTOR module to the build.


172998 26-Oct-2007 peter

Split /dev/nvram driver out of isa/clock.c for i386 and amd64. I have not
refactored it to be a generic device.
Instead of being part of the standard kernel, there is now a 'nvram' device
for i386/amd64. It is in DEFAULTS like io and mem, and can be turned off
with 'nodevice nvram'. This matches the previous behavior when it was
first committed.


172748 18-Oct-2007 takawata

Add Winchiphead (or Nanjin QinHeng Electronics) USB Serial converter driver.
I tested it on cheap serial converter.(Only costs 980JPY.)


172701 16-Oct-2007 ru

Rescue whitespace nits.


172674 15-Oct-2007 netchild

Backout sensors framework.

Requested by: phk
Discussed on: cvs-all


172659 15-Oct-2007 ru

Sort.


172632 14-Oct-2007 netchild

Import it(4) and lm(4), supporting most popular Super I/O Hardware Monitors.

Submitted by: Constantine A. Murenin <cnst@FreeBSD.org>
Sponsored by: Google Summer of Code 2007 (GSoC2007/cnst-sensors)
Mentored by: syrinx
Tested by: many
OKed by: kensmith
Obtained from: OpenBSD (parts)


172334 26-Sep-2007 marius

o Revert the part of if_gem.c rev. 1.35 which added a call to gem_stop()
to gem_attach() as the former access softc members not yet initialized
at that time and gem_reset() actually is enough to stop the chip. [1]
o Revise the use of gem_bitwait(); add bus_barrier() calls before calling
gem_bitwait() to ensure the respective bit has been written before we
starting polling on it and poll for the right bits to change, f.e. even
though we only reset RX we have to actually wait for both GEM_RESET_RX
and GEM_RESET_TX to clear. Add some additional gem_bitwait() calls in
places we've been missing them according to the GEM documentation.
Along with this some excessive DELAYs, which probably only were added
because of bugs in gem_bitwait() and its use in the first place, as
well as as have of an gem_bitwait() reimplementation in gem_reset_tx()
were removed.
o Add gem_reset_rxdma() and use it to deal with GEM_MAC_RX_OVERFLOW errors
more gracefully as unlike gem_init_locked() it resets the RX DMA engine
only, causing no link loss and the FIFOs not to be cleared. Also use it
deal with GEM_INTR_RX_TAG_ERR errors, with previously were unhandled.
This was based on information obtained from the Linux GEM and OpenSolaris
ERI drivers.
o Turn on workarounds for silicon bugs in the Apple GMAC variants.
This was based on information obtained from the Darwin GMAC and Linux GEM
drivers.
o Turn on "infinite" (i.e. maximum 31 * 64 bytes in length) DMA bursts.
This greatly improves especially RX performance.
o Optimize the RX path, this consists of:
- kicking the receiver as soon as we've a spare descriptor in gem_rint()
again instead of just once after all the ready ones have been handled;
- kicking the receiver the right way, i.e. as outlined in the GEM
documentation in batches of 4 and by pointing it to the descriptor
after the last valid one;
- calling gem_rint() before gem_tint() in gem_intr() as gem_tint() may
take quite a while;
- doubling the size of the RX ring to 256 descriptors.
Overall the RX performance of a GEM in a 1GHz Sun Fire V210 was improved
from ~100Mbit/s to ~850Mbit/s.
o In gem_add_rxbuf() don't assign the newly allocated mbuf to rxs_mbuf
before calling bus_dmamap_load_mbuf_sg(), if bus_dmamap_load_mbuf_sg()
fails we'll free the newly allocated mbuf, unable to recycle the
previous one but a NULL pointer dereference instead.
o In gem_init_locked() honor the return value of gem_meminit().
o Simplify gem_ringsize() and dont' return garbage in the default case.
Based on OpenBSD.
o Don't turn on MAC control, MIF and PCS interrupts unless GEM_DEBUG is
defined as we don't need/use these interrupts for operation.
o In gem_start_locked() sync the DMA maps of the descriptor rings before
every kick of the transmitter and not just once after enqueuing all
packets as the NIC might instantly start transmitting after we kicked
it the first time.
o Keep state of the link state and use it to enable or disable the MAC
in gem_mii_statchg() accordingly as well as to return early from
gem_start_locked() in case the link is down. [3]
o Initialize the maximum frame size to a sane value.
o In gem_mii_statchg() enable carrier extension if appropriate.
o Increment if_ierrors in case of an GEM_MAC_RX_OVERFLOW error and in
gem_eint(). [3]
o Handle IFF_ALLMULTI correctly; don't set it if we've turned promiscuous
group mode on and don't clear the flag if we've disabled promiscuous
group mode (these were mostly NOPs though). [2]
o Let gem_eint() also report GEM_INTR_PERR errors.
o Move setting sc_variant from gem_pci_probe() to gem_pci_attach() as
device probe methods are not supposed to touch the softc.
o Collapse sc_inited and sc_pci into bits for sc_flags.
o Add CTASSERTs ensuring that GEM_NRXDESC and GEM_NTXDESC are set to
legal values.
o Correctly set up for 802.3x flow control, though #ifdef out the code
that actually enables it as this needs more testing and mainly a proper
framework to support it.
o Correct and add some conversions from hard-coded functions names to
__func__ which were borked or forgotten in if_gem.c rev. 1.42.
o Use PCIR_BAR instead of a homegrown macro.
o Replace sc_enaddr[6] with sc_enaddr[ETHER_ADDR_LEN].
o In gem_pci_attach() in case attaching fails release the resources in
the opposite order they were allocated.
o Make gem_reset() static to if_gem.c as it's not needed outside that
module.
o Remove the GEM_GIGABIT flag and the associated code; GEM_GIGABIT was
never set and the associated code was in the wrong place.
o Remove sc_mif_config; it was only used to cache the contents of the
respective register within gem_attach().
o Remove the #ifdef'ed out NetBSD/OpenBSD code for establishing a suspend
hook as it will never be used on FreeBSD.
o Also probe Apple Intrepid 2 GMAC and Apple Shasta GMAC, add support for
Apple K2 GMAC. Based on OpenBSD.
o Add support for Sun GBE/P cards, or in other words actually add support
for cards based on GEM to gem(4). This mainly consists of adding support
for the TBI of these chips. Along with this the PHY selection code was
rewritten to hardcode the PHY number for certain configurations as for
example the PHY of the on-board ERI of Blade 1000 shows up twice causing
no link as the second incarnation is isolated.
These changes were ported from OpenBSD with some additional improvements
and modulo some bugs.
o Add code to if_gem_pci.c allowing to read the MAC-address from the VPD on
systems without Open Firmware.
This is an improved version of my variant of the respective code in
if_hme_pci.c
o Now that gem(4) is MI enable it for all archs.

Pointed out by: yongari [1]
Suggested by: rwatson [2], yongari [3]
Tested on: i386 (GEM), powerpc (GMACs by marcel and yongari),
sparc64 (ERI and GEM)
Reviewed by: yongari
Approved by: re (kensmith)


172313 24-Sep-2007 njl

Rewrite the EC driver event model. The main goal is to avoid
polling/interrupt-driven fallback and instead use polling only during
boot and pure interrupt-driven mode after boot. Polled mode could be
relegated completely to a legacy role if we could enable interrupts
during boot. Polled mode can be forced after boot by setting
debug.acpi.ec.polled="1", i.e. if there are timeouts.

- Use polling only during boot, shutdown, or if requested by the user.
Otherwise, use a generation count of GPEs, incremented atomically. This
prevents an old status value from being used if the EC is really slow
and the same condition (i.e. multiple IBEs for a write transaction) is
being checked.
- Check for and run the query handler directly if the SCI bit is set in
the status register during boot. Previously, the query handler wouldn't
run until interrupts were finally enabled late in boot.
- During boot and after starting a command, check if the event appears
to already have occurred before we even start waiting. If so, it's
possible the EC is very slow and we might accept an old status value.
Print a warning in this case. Once we've booted, interrupt-driven mode
should work just fine but polled mode could be unreliable. There's not
much more we can do about this until interrupts are enabled during boot.
- In the above case, we also do one final check if the interrupt-driven
mode gets a timeout. If the status is complete, it will force the
system back into polled mode since interrupt mode doesn't work. For
polled mode during boot, if the status appears to be already complete
before beginning the check loop, it waits 10 us before actually checking
the status, just in case the EC is really slow and hasn't gotten to work
on the new request yet.
- Use upper-case hex for the _Qxx method
- Use device_printf for errors, don't hide them under verbose
- Increase default total timeout to 750 ms and decrease polling interval
to 5 us.
- Don't pass the status value via the softc. Just read it directly.
- Remove the mutex. We use the sx lock for transaction serialization
with the query handler.
- Remove the Intel copyright notice as no code of theirs was ever
present in this file (verified against rev 1.1)
- Allow KTR module-only builds for ease of testing

Thanks to jkim and Alexey Starikovskiy for helpful discussions and testing.

Approved by: re
MFC after: 2 weeks


172302 23-Sep-2007 pjd

Bring in the GEOM Virtualisation class, which allows to create huge GEOM
providers with limited physical storage and add physical storage as
needed.

Submitted by: Ivan Voras
Sponsored by: Google Summer of Code 2006
Approved by: re (kensmith)


172150 12-Sep-2007 ariff

Update snd_emu10kx driver with recent perforce changes (and few
other changes too).

(without any real order)

1. Use device_get_nameunit for mutex naming
2. Add timer for low-latency playback
3. Move most mixer controls from sysctls to mixer(8) controls.
This is a largest part of this patch.
4. Add analog/digital switch (as a temporary sysctl)
5. Get back support for low-bitrate playback (with help of (2))
6. Change locking for exclusive I/O. Writing to non-PTR register
is almost safe and does not need to be ordered with PTR operations.
7. Disable MIDI until we get it to detach properly and fix memory
managment problems.
8. Enable multichannel playback by default. It is as stable as
single-channel mode. Multichannel recording is still an
experimental feature.
9. Multichannel options can be changed by loader tunables.
10. Add a way to disable card from a loader tunable.
11. Add new PCI IDs.
12. Debugger settings are loader tunables now.
14. Remove some unused variables.
15. Mark pcm sub-devices MPSAFE.
16. Partially revert (bus_setup_intr -> snd_setup_intr) since it need
to be done independently

Submitted by: Yuriy Tsibizov (driver maintainer)
Approved by: re (bmah)


172096 09-Sep-2007 kmacy

- fix qset to port binding as a proper fix for the problems encountered on the 4-port
- fix the use after free seen when sending packets small enough to fit as an immediate
and bpf peers are present
- update to firmware rev 4.7 along with various small vendor fixes

Supported by: Chelsio
Approved by: re (blanket)
MFC after: 3 days


172043 04-Sep-2007 jfv

This is an update to the new Intel 10G 82598 driver.
The first drop was Beta, this code is expected to be the release version.
Note that this driver code will build in either 6.2 or 7. If you
use the code in 6.2 you will not get TSO or MSI/X support but it will
function in a legacy mode.

Approved by: re


172008 29-Aug-2007 imp

Makefile for building zyd kernel module.

Submitted by: Weongyo Jeong
Approved by: re@ (kensmith)


171854 15-Aug-2007 des

Add a driver for the on-die digital thermal sensor found on Intel Core
and newer CPUs (including Core 2 and Core / Core 2 based Xeons). The
driver attaches to each cpu device and creates a sysctl node in that
device's sysctl context (dev.cpu.N.temperature). When invoked, the
handler binds to the appropriate CPU to ensure a correct reading.

Submitted by: Rui Paulo <rpaulo@fnop.net>
Sponsored by: Google Summer of Code 2007
Tested by: des, marcus, Constantine A. Murenin, Ian FREISLICH
Approved by: re (kensmith)
MFC after: 3 weeks


171818 13-Aug-2007 emax

Make ng_h4(4) MPSAFE. Use similar to ng_tty(4) locking strategy.
Reconnect ng_h(4) back to the build.

Reviewed by: kensmith
Approved by: re (kensmith)
MFC after: 1 month


171569 24-Jul-2007 scottl

Attach the iscsi module build.

Approved by: re


171568 24-Jul-2007 scottl

Introduce Danny Braniss' iSCSI initiator, version 2.0.99. Please read the
included man pages on how to use it. This code is still somewhat experimental
but has been successfully tested on a number of targets. Many thanks to
Danny for contributing this.

Approved by: re


171500 19-Jul-2007 gallatin

- Enable static building of mxge(4) and its firmware.

- Add custom .c wrappers for the firmware, rather than the standard
firmware(9) generated firmware objects to work around toolchain
problems on ia64 involving linking objects produced by
ld -b -binary into the kernel.

- Move from using Myricom's ".dat" firmware blobs to using Myricom's
zlib compressed ".h" firmware header files. This is done to
facilitate the custom wrappers, and saves a fair amount of wired
memory in the case where the firmware is built in, or preloaded.

- Fix two compile issues in mxge which only appear on non-i386/amd64.

Reviewed by: mlaier, mav (earlier version with just zlib support)
Glanced at by: sam
Approved by: re (kensmith)


171471 17-Jul-2007 kmacy

- integrate most recent changes from vendor branch and upgrade to firmware revision 4.5.5
- add filter support
- further improvements for T304
- recover gracefully from spurious immediate packets

Approved by: re(blanket)
Supported by: Chelsio
MFC after: 3 days


171453 14-Jul-2007 rwatson

Disconnect netatm from the build as it is not MPSAFE and relies on
NET_NEEDS_GIANT, which will shortly be removed. This is done in a
away that it may be easily reattached to the build before 7.1 if
appropriate locking is added. Specifics:

- Don't install netatm include files
- Disconnect netatm command line management tools
- Don't build libatm
- Don't include ATM parts in rescue or sysinstall
- Don't install sample configuration files and documents
- Don't build kernel support as a module or in NOTES
- Don't build netgraph wrapper nodes for netatm

This removes the last remaining consumer of NET_NEEDS_GIANT.

Reviewed by: harti
Discussed with: bz, bms
Approved by: re (kensmith)


171416 12-Jul-2007 rwatson

Complete repo-copy and move of Coda from src/sys/coda to src/sys/fs/coda
by removing files from src/sys/coda, and updating include paths in the
new location, kernel configuration, and Makefiles. In one case add
$FreeBSD$.

Discussed with: anderson, Jan Harkes <jaharkes@cs.cmu.edu>
Approved by: re (kensmith)
Repo-copy madness: simon


171345 10-Jul-2007 emax

Mark ng_h4(4) as not MPSAFE and disconnect it from the build for now.

Approved by: re (rwatson)


171173 03-Jul-2007 mlaier

Link pf 4.1 to the build:
- move ftp-proxy from libexec to usr.sbin
- add tftp-proxy
- new altq mtag link

Approved by: re (kensmith)


171103 30-Jun-2007 sam

fix ia64 build

Approved by: re (followup to previous commit)


171095 29-Jun-2007 sam

Neterion Xframe 10GbE Server/Storage adapter driver.

The nxge driver provides support for Neterion Xframe-I and Xframe-II
adapters. The driver supports TCP Segmentation Offload (TSO/LSO),
Jumbo frames (5 buffer mode), Header separation (2 and 3 Receive
buffer modes), VLAN, and Promiscuous mode.

Submitted by: Neterion
Reviewed by: rwatson
Approved by: re (kensmith)


171089 29-Jun-2007 sam

import opt_ah.h for newer hal's that optionally include 11n support

Approved by: re (kensmith)
MFC after: 2 weeks


171087 29-Jun-2007 delphij

MFp4:

- Remove unnecessary NULL checks after M_WAITOK allocations.
- Use VOP_ACCESS instead of hand-rolled suser_cred()
calls. [1]
- Use malloc(9) KPI to allocate memory for string. The
optimization taken from NetBSD is not valid for FreeBSD
because our malloc(9) already act that way. [2]

Requested by: rwatson [1]
Submitted by: Howard Su [2]
Approved by: re (tmpfs blanket)


171023 25-Jun-2007 rafan

- Remove UMAP filesystem. It was disconnected from build three years ago,
and it is seriously broken.

Discussed on: freebsd-arch@
Approved by: re (mux)


171021 24-Jun-2007 njl

Make acpica include path relative, not absolute.

Approved by: re


171020 24-Jun-2007 njl

The viapm module build had what appear to be some debugging CFLAGS left
around to force the IO port to a fixed address. They were only turned
on in the module build and were present since the original import. This
breaks soft power-off on the Asus A7V since it reprograms the SMBus base
address to a different one than the BIOS expects. A similar issue was
found in the alpm(4) module build.

PR: kern/113986, i386/97468
MFC after: 3 days
Approved by: re


170958 20-Jun-2007 delphij

Use .CURDIR when referring source code. This fixes build
when 'make obj' was done first. I found this when fixing
a problem reported by tinderbox, but forgot to send the
patchset to re@ altogether.

Approved by: re (kensmith)


170808 16-Jun-2007 delphij

MFp4: Add tmpfs, an efficient memory file system.

Please note that, this is currently considered as an
experimental feature so there could be some rough
edges. Consult http://wiki.freebsd.org/TMPFS for
more information.

For now, connect tmpfs to build on i386 and amd64
architectures only. Please let us know if you have
success with other platforms.

This work was developed by Julio M. Merino Vidal
for NetBSD as a SoC project; Rohit Jalan ported it
from NetBSD to FreeBSD. Howard Su and Glen Leeder
are worked on it to continue this effort.

Obtained from: NetBSD via p4
Submitted by: Howard Su (with some minor changes)
Approved by: re (kensmith)


170654 13-Jun-2007 kmacy

- import new common code for the T304
- update to firmware version 4.1.0

- switch over to standard method for initializing cdevs (contributed by scottl@)
- break out timer_reclaim_task to be per-port
- move msix teardown into separate function
- fix bus_setup_intr for msi-x for the multi-port case so that msi-x resources
are not corrupted on unload
- handle 10/100/1000 base-T media and auto negotiation
- bind qset to cpu even for singleq case
- white space cleanups
- remove recursive PORT_LOCK
- move mtu setting to separate function
- stop and re-init port when changing mtu
- replace all direct references to m_data with calls to mtod
- handle attach failure better by not trying to de-initialize
taskqueues when they have not been allocated
- no longer default to jumbo frames

Sponsored by: Chelsio
MFC after: 3 days


170644 13-Jun-2007 sepotvin

Options spring cleanup:
- Add and document the KVM and KVM_SUPPORT options that
are needed for the ifmcstats(3) makefile
- Garbage collect unused variables
- Add missing inclusion of bsd.own.mk where needed

Approved by: kan (mentor)
Reviewed by: ru


170549 11-Jun-2007 thompsa

Add new files in the net80211 changes.


170530 11-Jun-2007 sam

Update 802.11 wireless support:
o major overhaul of the way channels are handled: channels are now
fully enumerated and uniquely identify the operating characteristics;
these changes are visible to user applications which require changes
o make scanning support independent of the state machine to enable
background scanning and roaming
o move scanning support into loadable modules based on the operating
mode to enable different policies and reduce the memory footprint
on systems w/ constrained resources
o add background scanning in station mode (no support for adhoc/ibss
mode yet)
o significantly speedup sta mode scanning with a variety of techniques
o add roaming support when background scanning is supported; for now
we use a simple algorithm to trigger a roam: we threshold the rssi
and tx rate, if either drops too low we try to roam to a new ap
o add tx fragmentation support
o add first cut at 802.11n support: this code works with forthcoming
drivers but is incomplete; it's included now to establish a baseline
for other drivers to be developed and for user applications
o adjust max_linkhdr et. al. to reflect 802.11 requirements; this eliminates
prepending mbufs for traffic generated locally
o add support for Atheros protocol extensions; mainly the fast frames
encapsulation (note this can be used with any card that can tx+rx
large frames correctly)
o add sta support for ap's that beacon both WPA1+2 support
o change all data types from bsd-style to posix-style
o propagate noise floor data from drivers to net80211 and on to user apps
o correct various issues in the sta mode state machine related to handling
authentication and association failures
o enable the addition of sta mode power save support for drivers that need
net80211 support (not in this commit)
o remove old WI compatibility ioctls (wicontrol is officially dead)
o change the data structures returned for get sta info and get scan
results so future additions will not break user apps
o fixed tx rate is now maintained internally as an ieee rate and not an
index into the rate set; this needs to be extended to deal with
multi-mode operation
o add extended channel specifications to radiotap to enable 11n sniffing

Drivers:
o ath: add support for bg scanning, tx fragmentation, fast frames,
dynamic turbo (lightly tested), 11n (sniffing only and needs
new hal)
o awi: compile tested only
o ndis: lightly tested
o ipw: lightly tested
o iwi: add support for bg scanning (well tested but may have some
rough edges)
o ral, ural, rum: add suppoort for bg scanning, calibrate rssi data
o wi: lightly tested

This work is based on contributions by Atheros, kmacy, sephe, thompsa,
mlaier, kevlo, and others. Much of the scanning work was supported by
Atheros. The 11n work was supported by Marvell.


170526 11-Jun-2007 yongari

Connect icsphy(4) to the build.


170478 10-Jun-2007 kensmith

Add ofw_bus_if.h as a dependency on sparc64. Without this sparc64 kernel
builds had been succeeding if run serially but could fail if run in
parallel because the bge module build might start before ofw_bus_if.h
got created as part of the mainline kernel build.

Diagnosis and patch by: ru


170431 08-Jun-2007 pjd

- Reduce number of atomic operations needed to be implemented in asm by
implementing some of them using existing ones.
- Allow to compile ZFS on all archs and use atomic operations surrounded
by global mutex on archs we don't have or can't have all atomic
operations needed by ZFS.


170172 01-Jun-2007 simokawa

Fix a breakage with "MODULES_WITH_WORLD=true make buildworld".

PR: kern/11320


170161 31-May-2007 ariff

Last major commit and updates for RELENG_7:

- Rework the entire pcm_channel structure:
* Remove rarely used link placeholder, instead, make each pcm_channel
as head/link of each own/each other. Unlock - Lock sequence due to
sleep malloc has been reduced.
* Implement "busy" queue which will contain list of busy/active
channels. This greatly reduce locking contention for example while
servicing interrupt for hardware with many channels or when virtual
channels reach its 256 peak channels.

- So I heard you like v chan ... O RLY?
Welcome to Virtual **Record** Channels (vrec, rec vchans, vchans for
recording, Rec-Chan, you decide), the ultimate solutions for your
nagging O_RDWR full-duplex wannabe (note: flash plugins) monopolizing
single record channel causing EBUSY. Vrec works exactly like Vchans
(or, should I rename it to "Vplay" :) , except that it operates on the
opposite direction (recording). Up to 256 vrecs (like vchans) are
possible.

Notes:
* Relocate dev.pcm.%d.{vchans,vchanformat,vchanrate} to each of its
respective node/direction:
dev.pcm.%d.play.* for "play" (cdev = dsp%d.vp%d)
dev.pcm.%d.rec.* for "record" (cdev = dsp%d.vr%d)
* Don't expect that it will magically give you ability to split
"recording source" (eg: 1 channel for cdrom, 1 channel for mic,
etc). Just admit that you only have a *single* recording source /
channel. Please bug your hardware vendor instead :)

- Bump maxautovchans from 4 to 16. For a full-fledged multimedia
desktop/workstation with too many soundservers installed (esound,
artsd, jackd, pulse/polypaudio, ding-dong pling plong mudkip fuh fuh,
etc), 4 seems inadequate. There will be no memory penalty here, since
virtual channels are allocate only by demand.

- Nuke/Rework the entire statically created cdev entries. Everything is
clonable through snd own clone manager which designed to withstand many
kind of abusive devfs droids such as:
* while : ; do /bin/test -e /dev/dsp ; done
* jot 16777216 0 | while read x ; do ls /dev/dsp0.$x ; done
* hundreds (could be thousands) concurrent threads/process opening
"/dev/dsp" (previously, this might result EBUSY even with just
3 contesting threads/procs).
o Reusable clone objects (instead of creating new one like there's no
tomorrow) after certain expiration deadline. The clone allocator will
decide whether to reuse, share, or creating new clone.
o Automatic garbage collector.

- Dynamic unit magic allocator. Maximum attached soundcards can be tuned
using tunable "hw.snd.maxunit" (Default to 512). Minimum is 16, and
maximum is 2048.

- ..other fixes, mostly related to concurrency issues.

joel@ will do the manpage updates on sound(4).

Have fun.


170076 28-May-2007 kmacy

When building cxgb as a module make include paths relative to the driver's root.
This will make it possible to build the module out of tree against an older src tree.

MFC after: 3 days


169978 25-May-2007 kmacy

(MFp4)
- upgrade to reflect state of 1.0.0.86
- move from firmware rev 3.2 to 4.0.0
- import driver bits for offload functionality
- remove binary distribution clause from top level files as it
runs counter to the intent of purely supporting the hardware

MFC after: 3 days


169920 23-May-2007 pjd

FreeBSD's namecache works quite well with ZFS, so remove DNLC.


169903 23-May-2007 kib

Fix the dependency for the linux_support.s, explicitely add linux_assym.h.

Reported by: rwatson
In collaboration with: rdivacky
Sponsored by: Google SoC 2007


169895 23-May-2007 kib

Move futex support code from <arch>/support.s into linux compat directory.
Implement all futex atomic operations in assembler to not depend on the
fuword() that does not allow to distinguish between -1 and failure return.
Correctly return 0 from atomic operations on success.

In collaboration with: rdivacky
Tested by: Scot Hetzel <swhetzel gmail com>, Milos Vyletel <mvyletel mzm cz>
Sponsored by: Google SoC 2007


169869 22-May-2007 gallatin

Hook mxge_lro.c to the build so that the if_mxge.ko module
will load.


169609 16-May-2007 scottl

Add the 'mfip' sub-driver for gaining SCSI-passthrough access to devices
on an MFI controller.


169580 15-May-2007 mav

A node that implements various traffic shaping and rate limiting algorithms.

Approved by: glebius (mentor)


169425 09-May-2007 gnn

Integrate the Camellia Block Cipher. For more information see RFC 4132
and its bibliography.

Submitted by: Tomoyuki Okazaki <okazaki at kick dot gr dot jp>
MFC after: 1 month


169421 09-May-2007 scottl

It turns out that the hptiop driver isn't portable after all. Confine it to
amd64 and i386 for now.


169412 09-May-2007 scottl

Introduce a driver for the Highpoint RocketRAID 3xxx series of controllers.
The driver relies on CAM.

Many thanks to Highpoint for providing this driver.


169400 09-May-2007 scottl

Import version 3.60.03.006 of the TWA driver:

This patch does the following:

- Remove un-necessary code that is not even compiling into the driver
under TW_OSL_NON_DMA_MEM_ALLOC_PER_REQUEST defines.
- Remove bundled firmware image and associated "files" entry for tw_cl_fwimg.c
- Remove bundled firmware flashing routines. We now have tw_update userspace
FreeBSD controller flash utility.
- Fix driver crash on load due to shared interrupt.
- Fix 2 lock leaks for Giant lock.
- Fix CCB leak.
- Add support for 9650SE controllers.

Many thanks to 3Ware/AMCC for continuing to support FreeBSD.


169341 07-May-2007 le

Fix kldloading if_em by compiling missing source file.


169306 06-May-2007 kevlo

Add support for Ralink Technology RT2501USB/RT2601USB devices.

Reviewed by: sam, sephe
Obtained from: OpenBSD


169249 04-May-2007 rwatson

Place a '#' at the front of the line holding a $FreeBSD$ ID tag. While
it actually compiles without this, it's still a good idea.


169243 04-May-2007 jfv

Absolute pathname in the Makefile was broken, this
version should work correctly.


169240 04-May-2007 jfv

Merge in the new driver (6.5.0) of Intel. This has a new
shared code infrastructure that is family specific and
modular. There is also support for our latest gigabit
nic, the 82575 that is MSI/X and multiqueue capable.

The new shared code changes some interfaces to the core
code but testing at Intel has been going on for months,
it is fairly stable.

I have attempted to be careful in retaining any fixes that
CURRENT had and we did not, I apologize in advance if any
thing gets clobbered, I'm sure I'll hear about it :)

Approved by pdeuskar


169027 24-Apr-2007 pjd

MFp4: Now that ZFS can use FreeBSD's namecache, turn it off by default and
turn off DNLC, but don't remove DNLC yet just in case.


168793 17-Apr-2007 thompsa

Rename the trunk(4) driver to lagg(4) as it is too similar to vlan trunking.

The name trunk is misused as the networking term trunk means carrying multiple
VLANs over a single connection. The IEEE standard for link aggregation (802.3
section 3) does not talk about 'trunk' at all while it is used throughout IEEE
802.1Q in describing vlans.

The lagg(4) driver provides link aggregation, failover and fault tolerance.

Discussed on: current@


168600 10-Apr-2007 marius

On i386 compile the back-end with EISA support as well as the EISA
front-end if the dpt(4) module is built along with a kernel that
includes eisa(4) or when compiling it stand-alone (logic based on
the corresponding ISA logic in sys/modules/sound/sound/Makefile).
As as side-effect this fixes the stand-alone build of the dpt(4)
module after dpt.h 1.17, dpt_eisa.c 1.22 and dpt_scsi.c 1.55.

Breakage reported by: n_hibma


168564 10-Apr-2007 thompsa

Add trunk(4) module.


168541 09-Apr-2007 piso

The old PacketAlias* API is not exported when
libalias run in kernel land.


168498 08-Apr-2007 pjd

MFp4: Synchronize with recent OpenSolaris changes.


168492 08-Apr-2007 kmacy

hook uipc_mvec.c into build


168482 07-Apr-2007 pjd

Move atomic.S files to directories that better fit OpenSolaris directory
layout.


168477 07-Apr-2007 scottl

Add the CAM 'SG' peripheral device. This device implements a subset of the
Linux SCSI SG passthrough device API. The intention is to allow for both
running of Linux apps that want to talk to /dev/sg* nodes, and to facilitate
porting of apps from Linux to FreeBSD. As such, both native and linuxolator
entry points and definitions are provided.

Caveats:
- This does not support the procfs and sysfs nodes that the Linux SG
driver provides. Some Linux apps may rely on these for operation,
others may only use them for informational purposes.
- More ioctls need to be implemented.
- Linux uses a naming scheme of "sg[a-z]" for devices, while FreeBSD uses a
scheme of "sg[0-9]". Devfs aliasis (symlinks) are automatically created
to link the two together. However, tools like camcontrol only see the
native names.
- Some operations were originally designed to return byte counts or other
data directly as the syscall return value. The linuxolator doesn't appear
to support this well, so this driver just punts for these cases.

Now that the driver is in place, others are welcome to add missing
functionality. Thanks to Roman Divacky for pushing this work along.


168475 07-Apr-2007 des

Build ZFS on amd64 and pc98.

Approved by: pjd@


168451 07-Apr-2007 kmacy

back out last change

Requested by: ru


168415 06-Apr-2007 kmacy

make modules compile without updating etc


168409 06-Apr-2007 pjd

Connect ZFS to the build.


168406 06-Apr-2007 pjd

Add Makefile for zfs.ko kernel module.


168190 31-Mar-2007 sam

oops, another missed file from crypto api change


167891 26-Mar-2007 yar

Introduce a new toy interface, edsc(4). It's a discard interface
imitating an Ethernet device, so vlan(4) and if_bridge(4) can be
attached to it for testing and benchmarking purposes. Its source
can be an introduction to the anatomy of a network interface driver
due to its simplicity as well as to a bunch of comments in it.


167814 22-Mar-2007 jkim

Catch up with ACPI-CA 20070320 import.


167771 21-Mar-2007 sam

another missing change for recent crypto mods


167764 21-Mar-2007 sam

catchup w/ crypto changes


167755 21-Mar-2007 sam

Overhaul driver/subsystem api's:
o make all crypto drivers have a device_t; pseudo drivers like the s/w
crypto driver synthesize one
o change the api between the crypto subsystem and drivers to use kobj;
cryptodev_if.m defines this api
o use the fact that all crypto drivers now have a device_t to add support
for specifying which of several potential devices to use when doing
crypto operations
o add new ioctls that allow user apps to select a specific crypto device
to use (previous ioctls maintained for compatibility)
o overhaul crypto subsystem code to eliminate lots of cruft and hide
implementation details from drivers
o bring in numerous fixes from Michale Richardson/hifn; mostly for
795x parts
o add an optional mechanism for mmap'ing the hifn 795x public key h/w
to user space for use by openssl (not enabled by default)
o update crypto test tools to use new ioctl's and add cmd line options
to specify a device to use for tests

These changes will also enable much future work on improving the core
crypto subsystem; including proper load balancing and interposing code
between the core and drivers to dispatch small operations to the s/w
driver as appropriate.

These changes were instigated by the work of Michael Richardson.

Reviewed by: pjd
Approved by: re


167751 21-Mar-2007 kmacy

Remove firmware version flags

MFC after: 3 days


167709 19-Mar-2007 yar

if_vlan no more depends on INET.


167566 14-Mar-2007 kmacy

Disable linking in of firmware on ia64 to avoid build failures from a
broken ld.


167529 14-Mar-2007 kmacy

no-op cxgb_config.h for the module compilation case


167517 14-Mar-2007 kmacy

add cxgb to modules Makefile


167516 14-Mar-2007 kmacy

Add modules Makefile for cxgb


167453 11-Mar-2007 brueffer

my(4) doesn't need miibus(4).

Approved by: rwatson (mentor)
Obtained from: DragonFly
MFC after: 1 week


167165 02-Mar-2007 flz

- Add Intel firmwares for Intel PRO/Wireless LAN 2100/2200/2915 cards in a
uuencoded format along with their respective LICENSE files.
- Add new share/doc/legal directory to BSD.usr.dist mtree file. This is the
place we install LICENSE files for restricted firmwares.
- Teach firmware(9) and kmod.mk about licensed firmwares. Restricted firmwares
won't load properly unless legal.<name>.license_ack is set to 1, either
via kenv(1) or /boot/loader.conf.

Reviewed by: mlaier, sam
Permitted by: Intel (via Andrew Wilson)
MFC after: 1 month


167050 27-Feb-2007 mjacob

First cut at GEOM based multipath. This is an active/passive{/passive...}
arrangement that has no intrinsic internal knowledge of whether devices
it is given are truly multipath devices. As such, this is a simplistic
approach, but still a useful one.

The basic approach is to (at present- this will change soon) use camcontrol
to find likely identical devices and and label the trailing sector of the
first one. This label contains both a full UUID and a name. The name is
what is presented in /dev/multipath, but the UUID is used as a true
distinguishor at g_taste time, thus making sure we don't have chaos
on a shared SAN where everyone names their data multipath as "Fred".

The first of N identical devices (and N *may* be 1!) becomes the active
path until a BIO request is failed with EIO or ENXIO. When this occurs,
the active disk is ripped away and the next in a list is picked to
(retry and) continue with.

During g_taste events new disks that meet the match criteria for existing
multipath geoms get added to the tail end of the list.

Thus, this active/passive setup actually does work for devices which
go away and come back, as do (now) mpt(4) and isp(4) SAN based disks.

There is still a lot to do to improve this- like about 5 of the 12
recommendations I've received about it, but it's been functional enough
for a while that it deserves a broader test base.

Reviewed by: pjd
Sponsored by: IronPort Systems
MFC: 2 months


166938 24-Feb-2007 bms

Make IPv6 multicast forwarding dynamically loadable from a GENERIC kernel.
It is built in the same module as IPv4 multicast forwarding, i.e. ip_mroute.ko,
if and only if IPv6 support is enabled for loadable modules.
Export IPv6 forwarding structs to userland netstat(1) via sysctl(9).


166640 11-Feb-2007 rodrigc

Makefile changes to reflect moving sys/isofs/cd9660 to sys/fs/cd9660.
Continue to install userland include files in /usr/include/isofs/cd9660
so as not to break userland applications such as libstand.


166579 09-Feb-2007 bms

Remove an unneeded define.


166556 07-Feb-2007 marcel

Don't recurse into geom_apple and geom_gpt. They have been moved
into the g_part framework.


166383 01-Feb-2007 avatar

Reflecting the removal of MSDOSFS_LARGE found in sys/conf/files:1.1173.
This should fix the run time bustage observed on recent -CURRENT whilst
mounting a MSDOS filesystem with non-default locale/code page:

link_elf: symbol msdosfs_fileno_free undefined
KLD msdosfs_iconv.ko: depends on msdosfs - not available


166348 30-Jan-2007 ru

Remove the last vestige of opt_msdosfs.h.

Submitted by: grep(1)


166320 28-Jan-2007 sam

ath and ath_rate_sample now have a compile-time dependency on the hal
so we need to build them only on architectures where there's a released
hal; this hack can be eliminated when an ia64 hal build is present


166306 28-Jan-2007 takawata

Add support for serial communication with Windows CE based Handheld Computer.

Obtained from: NetBSD


166299 28-Jan-2007 sam

for newer hal's we need opt_ah.h as it specifies how the hal has been
configured and that in turn controls the descriptor layout


166298 28-Jan-2007 sam

for newer hal's we need opt_ah.h as it specifies how the hal has been
configured and that in turn controls the descriptor layout; the rate
control module has no business peeking inside the descriptor but until
we can change the api so the driver records the tx rates and passes
them deal with it


166144 20-Jan-2007 marius

Add front-ends for the 'lebuffer' variants found on some SBus cards.
These are shared-memory variants based on Am79C90-compatible chips
that apart from the missing DMA engine are similar to the 'ledma'
variant including using a (pseudo-)bus/device for the buffer that
the actual LANCE device hangs off from. The performance of these is
close to that of the 'ledma' one, like expected at a few times the
CPU load though.


165872 07-Jan-2007 netchild

Disable multichannel recording in snd_emu10kx module. Whith multichannel
recording enabled some programs (audio/audacity from ports) can't
correctly enumerate all /dev/dsp device.

Note: previous commit did not enable some debugging stuff, my eyes did
misread "#undef" as "#define".

Submitted by: Yuriy Tsibizov <Yuriy.Tsibizov@gfk.ru>


165833 06-Jan-2007 netchild

Extend the emu10kx driver. With the words of the author:
---snip---
New features:
1. Optional multichannel recording (32 channels on Live!, 64 channels
on Audigy).

All channels are 16bit/48000Hz/mono, format is fixed.
Half of them are copied from sound output, another half can be
used to record any data from DSP. What should be recorded is
hardcoded in DSP code. In this version it records dummy data, but
can be used to record all DSP inputs, for example..

Because there are no support of more-than-stereo sound streams
multichannell stream is presented as one 32(64)*48000 Hz 16bit mono
stream.

Channel map:

SB Live! (4.0/5.1)
offset (words) substream
0x00 Front L
0x01 Front R
0x02 Digital Front L
0x03 Digital Front R
0x04 Digital Center
0x05 Digital Sub
0x06 Headphones L
0x07 Headphones R
0x08 Rear L
0x09 Rear R
0x0A ADC (multi-rate recording) L
0x0B ADC (multi-rate recording) R
0x0C unused
0x0D unused
0x0E unused
0x0F unused
0x10 Analog Center (Live! 5.1) / dummy (Live! 4.0)
0x11 Analog Sub (Live! 5.1) / dummy (Live! 4.0)
0x12..-0x1F dummy

Audigy / Audigy 2 / Audigy 2 Value / Audigy 4
offset (words) substream
0x00 Digital Front L
0x01 Digital Front R
0x02 Digital Center
0x03 Digital Sub
0x04 Digital Side L (7.1 cards) / Headphones L (5.1 cards)
0x05 Digital Side R (7.1 cards) / Headphones R (5.1 cards)
0x06 Digital Rear L
0x07 Digital Rear R
0x08 Front L
0x09 Front R
0x0A Center
0x0B Sub
0x0C Side L
0x0D Side R
0x0E Rear L
0x0F Rear R
0x10 output to AC97 input L (muted)
0x11 output to AC97 input R (muted)
0x12 unused
0x13 unused
0x14 unused
0x15 unused
0x16 ADC (multi-rate recording) L
0x17 ADC (multi-rate recording) R
0x18 unused
0x19 unused
0x1A unused
0x1B unused
0x1C unused
0x1D unused
0x1E unused
0x1F unused
0x20..0x3F dummy

Fixes:
1. Do not assign negative values to variables used to index emu_cards
array. This array was never accessed when index is negative, but
Alexander (netchild@) told me that Coverity does not like it.
After this change emu_cards[0] should never be used to identify
valid sound card.
2. Fix off-by-one errors in interrupt manager. Add more checks there.
3. Fixes to sound buffering code now allows driver to use large playback
buffers.
4. Fix memory allocation bug when multichannel recording is not
enabled.
5. Fix interrupt timeout when recording with low bitrate (8kHz).

Hardware:
1. Add one more known Audigy ZS card to list. Add two cards with
PCI IDs betwen old known cards and new one.

Other changes:
1. Do not use ALL CAPS in messages.

Incomplete code:
1. Automute S/PDIF when S/PDIF signal is lost.

Tested on i386 only, gcc 3.4.6 & gcc41/gcc42 (syntax only).
---snip---

This commits enables a little bit of debugging output when the driver is
loaded as a module. I did a cross-build test for amd64.

The code has some style issues, this will be addressed later.

The multichannel recording part is some work in progress to allow playing
around with it until the generic sound code is better able to handle
multichannel streams.

This is supposed to fix
CID: 171187
Found by: Coverity Prevent

Submitted by: Yuriy Tsibizov <Yuriy.Tsibizov@gfk.ru>


165629 29-Dec-2006 glebius

Build bits for ng_deflate(4) and ng_pred1(4).


165450 21-Dec-2006 yar

Allow this module to get its options from the kernel build directory
instead of always hard coding them in CFLAGS. POLA is kept here:
The module file built with GENERIC stays the same.

Tested with: md5(1)


165336 18-Dec-2006 takawata

Remove stall comment.

Pointed out by:Ed Maste.


165330 18-Dec-2006 takawata

Oops, I forget to add amd64 as ACPI arch.


165320 18-Dec-2006 takawata

Hook acpi gadget driver modules to other acpi archs.


165140 13-Dec-2006 yongari

Hook up msk(4) to the build.


165067 10-Dec-2006 mjacob

Remember to include isp_library.o when building an isp module.


164825 02-Dec-2006 netchild

Add the linux module to the amd64 build, all symbols can now be resolved.


164641 26-Nov-2006 sam

module glue for wlan_amrr

MFC after: 1 month


164633 26-Nov-2006 sam

device-independent implementation of AMRR tx rate control algorithm

Obtained from: openbsd (w/ mods)
MFC after: 1 month


164295 15-Nov-2006 maxim

o Add uark(4), a driver for Arkmicro Technologies ARK3116 based serial
adapters.

Submitted by: Alex Rodin
Obtained from: OpenBSD
Reviewed by: -usb
MFC after: 6 weeks


164189 11-Nov-2006 trhodes

Re-enable module build for POSIX semaphores.
Update the manual page describe loading the sem module.

Approved by: silence on -arch and -standards


164180 11-Nov-2006 ume

Teach an IPv6 to ppp(4).

Obtained from: NetBSD
MFC after: 1 week


164150 10-Nov-2006 emaste

Clarify the error message when trying to build an ACPI module on amd64
or ia64.

The old message implied to me that ACPI can't be compiled in on platforms
other than amd64 and ia64. The amd64@ mailing list archive has messages
from users with the same confusion.

Approved by: scottl


163962 03-Nov-2006 ru

Remove no longer existing opt_bdg.h and opt_bge.h.


163851 31-Oct-2006 pjd

Hook up gjournal bits to the build.

Sponsored by: home.pl


163850 31-Oct-2006 pjd

Add Makefile for geom_journal kernel module.

Sponsored by: home.pl


163780 30-Oct-2006 takawata

Hook acpi_aiboost module to build.


163778 30-Oct-2006 takawata

Driver for some ASUS desktop motherboard extras.
Though it is named after overclocking tool for ASUS motherboards,
it is not capable to change clock ratio or CPU core voltage.

This driver exports Templature, Power output voltage, Fan RPM under
dev.acpi_aiboost.0.*.

Descriptions for these values are set to sysctl describe, which can be
get by sysctl -d.


163771 29-Oct-2006 marius

Add missing headers.


163760 29-Oct-2006 netchild

Backout the linux aio stuff. Several problems where identified and the
dynamic nature (if no native aio code is available, the linux part
returns ENOSYS because of missing requisites) should be solved differently
than it is.

All this will be done in P4.

Not included in this commit is a backout of the changes to the native aio
code (removing static in some places). Those changes (and some more) will
also be needed when the reworked linux aio stuff will reenter the tree.

Requested by: rwatson
Discussed with: rwatson


163519 20-Oct-2006 imp

Loadable modules for mmc (the bus) amd mmcsd (the MMC and SD support
code). A little green, so not yet connected to the build.


163445 16-Oct-2006 jb

In sun4v, use the sparc64 version. We haven't used the serial port on
sun4v yet, so this is a 'best-guess'.


163444 16-Oct-2006 jb

Add a .PATH entry to search for sources in the ${MACHINE}/${MACHINE}
directory before the ${MACHINE_ARCH}/${MACHINE_ARCH} directory so that
machine-specific files take precedence of architecture-specific ones.

This fixes the build on sun4v which doesn't use the sparc64 version
of mem.c.

Tested by: make universe


163379 15-Oct-2006 netchild

MFP4 (with some minor changes):

Implement the linux_io_* syscalls (AIO). They are only enabled if the native
AIO code is available (either compiled in to the kernel or as a module) at
the time the functions are used. If the AIO stuff is not available there
will be a ENOSYS.

From the submitter:
---snip---
DESIGN NOTES:

1. Linux permits a process to own multiple AIO queues (distinguished by
"context"), but FreeBSD creates only one single AIO queue per process.
My code maintains a request queue (STAILQ of queue(3)) per "context",
and throws all AIO requests of all contexts owned by a process into
the single FreeBSD per-process AIO queue.

When the process calls io_destroy(2), io_getevents(2), io_submit(2) and
io_cancel(2), my code can pick out requests owned by the specified context
from the single FreeBSD per-process AIO queue according to the per-context
request queues maintained by my code.

2. The request queue maintained by my code stores contrast information between
Linux IO control blocks (struct linux_iocb) and FreeBSD IO control blocks
(struct aiocb). FreeBSD IO control block actually exists in userland memory
space, required by FreeBSD native aio_XXXXXX(2).

3. It is quite troubling that the function io_getevents() of libaio-0.3.105
needs to use Linux-specific "struct aio_ring", which is a partial mirror
of context in user space. I would rather take the address of context in
kernel as the context ID, but the io_getevents() of libaio forces me to
take the address of the "ring" in user space as the context ID.

To my surprise, one comment line in the file "io_getevents.c" of
libaio-0.3.105 reads:

Ben will hate me for this

REFERENCE:

1. Linux kernel source code: http://www.kernel.org/pub/linux/kernel/v2.6/
(include/linux/aio_abi.h, fs/aio.c)

2. Linux manual pages: http://www.kernel.org/pub/linux/docs/manpages/
(io_setup(2), io_destroy(2), io_getevents(2), io_submit(2), io_cancel(2))

3. Linux Scalability Effort: http://lse.sourceforge.net/io/aio.html
The design notes: http://lse.sourceforge.net/io/aionotes.txt

4. The package libaio, both source and binary:
http://rpmfind.net/linux/rpm2html/search.php?query=libaio
Simple transparent interface to Linux AIO system calls.

5. Libaio-oracle: http://oss.oracle.com/projects/libaio-oracle/
POSIX AIO implementation based on Linux AIO system calls (depending on
libaio).
---snip---

Submitted by: Li, Xiao <intron@intron.ac>


163048 06-Oct-2006 ru

A GEOM cache can speed up read performance by sending fixed size
read requests to its consumer. It has been developed to address
the problem of a horrible read performance of a 64k blocksize FS
residing on a RAID3 array with 8 data components, where a single
disk component would only get 8k read requests, thus effectively
killing disk performance under high load. Documentation will be
provided later. I'd like to thank Vsevolod Lobko for his bright
ideas, and Pawel Jakub Dawidek for helping me fix the nasty bug.


162925 01-Oct-2006 ariff

Connect snd_hda(4) to build process...

Add support for Intel High Definition Audio Controller.

This driver make a special guarantee that "playback" works
on majority hardwares with minimal or without specific vendor
quirk.

This driver is a product of collaborative effort made by:

Stephane E. Potvin <sepotvin@videotron.ca>
Andrea Bittau <a.bittau@cs.ucl.ac.uk>
Wesley Morgan <morganw@chemikals.org>
Daniel Eischen <deischen@FreeBSD.org>
Maxime Guillaud <bsd-ports@mguillaud.net>
Ariff Abdullah <ariff@FreeBSD.org>

....and various people from freebsd-multimedia@FreeBSD.org

Refer to snd_hda(4) for features and issues.

Welcome To HDA.

Sponsored by: Defenxis Sdn. Bhd.


162922 01-Oct-2006 ariff

Add support for Intel High Definition Audio Controller.

This driver make a special guarantee that "playback" works
on majority hardwares with minimal or without specific vendor
quirk.

This driver is a product of collaborative effort made by:

Stephane E. Potvin <sepotvin@videotron.ca>
Andrea Bittau <a.bittau@cs.ucl.ac.uk>
Wesley Morgan <morganw@chemikals.org>
Daniel Eischen <deischen@FreeBSD.org>
Maxime Guillaud <bsd-ports@mguillaud.net>
Ariff Abdullah <ariff@FreeBSD.org>

....and various people from freebsd-multimedia@FreeBSD.org

Refer to snd_hda(4) for features and issues.

Welcome To HDA.

Sponsored by: Defenxis Sdn. Bhd.


162892 30-Sep-2006 netchild

Respect style.Makefile(5).

Cluebat waving by: ru


162887 30-Sep-2006 netchild

Add the envy24ht driver to the build.


162880 30-Sep-2006 netchild

Remove the ak452x module.


162879 30-Sep-2006 netchild

Disconnect ak452x from the build, it is not needed anymore.


162878 30-Sep-2006 netchild

We don't need the ISA interface.

Submitted by: "Konstantin Dimitrov" <kosio.dimitrov@gmail.com>


162875 30-Sep-2006 netchild

Add the spicds module to the build.

Submitted by: "Konstantin Dimitrov" <kosio.dimitrov@gmail.com>


162711 27-Sep-2006 ru

Fix our ioctl(2) implementation when the argument is "int". New
ioctls passing integer arguments should use the _IOWINT() macro.
This fixes a lot of ioctl's not working on sparc64, most notable
being keyboard/syscons ioctls.

Full ABI compatibility is provided, with the bonus of fixing the
handling of old ioctls on sparc64.

Reviewed by: bde (with contributions)
Tested by: emax, marius
MFC after: 1 week


162701 27-Sep-2006 ru

- Removed a copyright from makefile.
- Added ${.CURDIR} to .include "...".
- Whitespace fixes.

OK'ed by: piso


162674 26-Sep-2006 piso

Summer of Code 2005: improve libalias - part 1 of 2

With the first part of my previous Summer of Code work, we get:

-made libalias modular:

-support for 'particular' protocols (like ftp/irc/etcetc) is no more
hardcoded inside libalias, but it's available through external
modules loadable at runtime

-modules are available both in kernel (/boot/kernel/alias_*.ko) and
user land (/lib/libalias_*)

-protocols/applications modularized are: cuseeme, ftp, irc, nbt, pptp,
skinny and smedia

-added logging support for kernel side

-cleanup

After a buildworld, do a 'mergemaster -i' to install the file libalias.conf
in /etc or manually copy it.

During startup (and after every HUP signal) user land applications running
the new libalias will try to read a file in /etc called libalias.conf:
that file contains the list of modules to load.

User land applications affected by this commit are ppp and natd:
if libalias.conf is present in /etc you won't notice any difference.

The only kernel land bit affected by this commit is ng_nat:
if you are using ng_nat, and it doesn't correctly handle
ftp/irc/etcetc sessions anymore, remember to kldload
the correspondent module (i.e. kldload alias_ftp).

General information and details about the inner working are available
in the libalias man page under the section 'MODULAR ARCHITECTURE
(AND ipfw(4) SUPPORT)'.

NOTA BENE: this commit affects _ONLY_ libalias, ipfw in-kernel nat
support will be part of the next libalias-related commit.

Approved by: glebius
Reviewed by: glebius, ru


162660 26-Sep-2006 ru

Add a value to the define I forgot, for the purity's sake.


162659 26-Sep-2006 ru

Now that we have COMPAT_FREEBSD6 officially, use it from opt_compat.h.


162624 25-Sep-2006 scottl

Update the mfi module build with the mfi_debug.c file.


162562 22-Sep-2006 jhb

Update the ipmi(4) driver:
- Split out the communication protocols into their own files and use
a couple of function pointers in the softc that the commuication
protocols setup in their own attach routine.
- Add support for the SSIF interface (talking to IPMI over SMBus).
- Add an ACPI attachment.
- Add a PCI attachment that attaches to devices with the IPMI interface
subclass.
- Split the ISA attachment out into its own file: ipmi_isa.c.
- Change the code to probe the SMBIOS table for an IPMI entry to just use
pmap_mapbios() to map the table in rather than trying to setup a fake
resource on an isa device and then activating the resource to map in the
table.
- Make bus attachments leaner by adding attach functions for each
communication interface (ipmi_kcs_attach(), ipmi_smic_attach(), etc.)
that setup per-interface data.
- Formalize the model used by the driver to handle requests by adding an
explicit struct ipmi_request object that holds the state of a given
request and reply for the entire lifetime of the request. By bundling
the request into an object, it is easier to add retry logic to the various
communication backends (as well as eventually support BT mode which uses
a slightly different message format than KCS, SMIC, and SSIF).
- Add a per-softc lock and remove D_NEEDGIANT as the driver is now MPSAFE.
- Add 32-bit compatibility ioctl shims so you can use a 32-bit ipmitool
on FreeBSD/amd64.
- Add ipmi(4) to i386 and amd64 NOTES.

Submitted by: ambrisko (large portions of 2 and 3)
Sponsored by: IronPort Systems, Yahoo!
MFC after: 6 days


162415 18-Sep-2006 sam

fixup build after move of ah_osdep.?

MFC after: 2 weeks


162413 18-Sep-2006 sam

o move ath hal os glue code from the hal to the driver: this code was
part of the hal distribution early on when the hal was built for
each os but it's been portable for a long time so move the os-specific
code out (and off the vendor branch)
o correct the copyright on ah_osdep.?; it was mistakenly given a
restricted license and not a dual-bsd/gpl license
o remove the module api definition as it was never used
o fixup include paths for move of ah_osdep.h

MFC after: 2 weeks


162238 12-Sep-2006 csjp

Introduce a new entry point, mac_create_mbuf_from_firewall. This entry point
exists to allow the mandatory access control policy to properly initialize
mbufs generated by the firewall. An example where this might happen is keep
alive packets, or ICMP error packets in response to other packets.

This takes care of kernel panics associated with un-initialize mbuf labels
when the firewall generates packets.

[1] I modified this patch from it's original version, the initial patch
introduced a number of entry points which were programmatically
equivalent. So I introduced only one. Instead, we should leverage
mac_create_mbuf_netlayer() which is used for similar situations,
an example being icmp_error()

This will minimize the impact associated with the MFC

Submitted by: mlaier [1]
MFC after: 1 week

This is a RELENG_6 candidate


162185 09-Sep-2006 netchild

Build linprocfs and linsysfs as modules on amd64.

Sponsored by: Google SoC 2006
Submitted by: rdivacky


162160 08-Sep-2006 ru

MF6: Attach if_bce.ko to the build.

Noticed by: davidch


162041 05-Sep-2006 anholt

Include agp_i810.c in amd64 AGP builds to get support for the Intel 915 Express
chipsets.

PR: kern/93676
Submitted by: Jan Blaha <Jan.Blaha@unet.cz>
MFC after: 1 week


161973 04-Sep-2006 ru

If building the module as part of the kernel build, determine
the "device isa" presence out of the opt_isa.h in the kernel
build directory, rather than always assuming its presence.
sparc64 is still special cased and is not affected by this
change.

Noticed by: bde


161812 01-Sep-2006 brueffer

Don't build iwi(4) on amd64, there are problems with the firmware modules.

Reported by: sam
Approved by: rwatson (mentor)
MFC after: 3 days


161648 26-Aug-2006 mjacob

Add 2400 f/w support.


161432 18-Aug-2006 brueffer

Follow the lead of mxgb(4) and build the module for ixgb(4).

Originally it wasn't enabled since the hardware wasn't commonplace,
but as 10GE hardware is becoming more widely used, building the module
by default should be beneficial.

Approved by: rwatson (mentor)
MFC after: 2 weeks


161312 15-Aug-2006 netchild

- Add the new files to the linux module.
- Prepare the modules for build on amd64, but don't build them there as
part of the kernel build yet. The code for the missing symbols on amd64
isn't committed and it may be solved differently.

Sponsored by: Google SoC 2006
Submitted by: rdivacky


161283 14-Aug-2006 des

Don't use touch when what is really meant is :> (create an empty file, or
truncate it if it exists) or :>> (ensure the file exists, but don't change
it if it already does)

Reviewed by: ru
MFC after: 2 weeks


160892 01-Aug-2006 sobomax

Add device to access and modify Open Firmware NVRAM settings in
PowerPC-based Apple's machines and small utility to do it from
userland modelled after the similar utility in Darwin/OSX.

Only tested on 1.25GHz G4 Mac Mini.

MFC after: 1 month


160762 27-Jul-2006 marcel

Remove Alpha remnants.


160730 26-Jul-2006 thompsa

bridgestp is now a seperate module.


160729 26-Jul-2006 thompsa

Hook bridgestp up to the build.


160728 26-Jul-2006 thompsa

Add bridgestp as a seperate module.


160642 25-Jul-2006 yongari

Hook up stge(4) to the build.


160639 25-Jul-2006 yongari

Connect gentbi, ip1000phy to the build.


160582 22-Jul-2006 pjd

Implement support for HMAC/SHA1 and HMAC/SHA256 acceleration found in
new VIA CPUs.
For older CPUs HMAC/SHA1 and HMAC/SHA256 (and others) will still be done
in software.

Move symmetric cryptography (currently only AES-CBC 128/192/256) to
padlock_cipher.c file. Move HMAC cryptography to padlock_hash.c file.

Hardware from: Centaur Technologies


160386 15-Jul-2006 netchild

- Connect the snd_emu10kx driver to the build. [1]
- Bump __FreeBSD_version, no need to build the port now.

Submitted by: Yuriy Tsibizov <Yuriy.Tsibizov@gfk.ru> [1]


160383 15-Jul-2006 netchild

Add snd_emu10kx driver for Creative SoundBlaster Live! and Audigy series
sound cards with optional pseudo-multichannel playback.

It's based on snd_emu10k1 sound driver. Single channel version is available
from audio/emu10kx port since some time.

The two new ALSA header files (GPLed), which contain Audigy 2 ("p16v") and
Audigy 2 Value ("p17v") specific interfaces, are latest versions from ALSA
Mercurial repository.

This is not connected to the build yet.

Submitted by: Yuriy Tsibizov <Yuriy.Tsibizov@gfk.ru>


160212 09-Jul-2006 mjacob

Convert isp(4) and ispfw(4) to use firmware(9) to manage firmware
loading for the QLogic cards.

Because isp(4) exists before the root is mounted, it's not really
possible for us to use the kernel's linker to load modules directly
from disk- that's really too bad.

However, the this is still a net win in in that the firmware has
been split up on a per chip (and in some cases, functionality)
basis, so the amount of stuff loaded *can* be substantially less
than the 1.5MB of firmware images that ispfw now manages. That is,
each specific f/w set is now also built as a module. For example,
QLogic 2322 f/w is built as isp_2322.ko and Initiator/Target 1080
firmware is built as isp_1080_it.ko.

For compatibility purposes (i.e., to perturb folks the least), we
also still build all of the firmware as one ispfw.ko module.

This allows us to let 'ispfw_LOAD' keep on working in existing
loader.conf files. If you now want to strip this down to just
the firmware for your h/w, you can then change loader.conf to
load the f/w you specifically want.

We also still allow for ispfw to be statically built (e.g., for
PAE and sparc64).

Future changes will look at f/w unloading and also role switching
that then uses the kernel linker to load different ips f/w sets.
MFC after: 2 months


160063 01-Jul-2006 markm

Housekeeping. Update for maintainers who have handed in their commit bits
or (in my case) no longer feel that oversight is necessary.


159979 27-Jun-2006 glebius

A netgraph node that can do different manipulations with
mbuf_tags(9) on packets.

Submitted by: Vadim Goncharov <vadimnuclight tpu.ru>
mdoc(7) reviewed by: ru


159967 26-Jun-2006 obrien

Add a pure open source nForce Ethernet driver, under BSDL.
This driver was ported from OpenBSD by Shigeaki Tagashira
<shigeaki@se.hiroshima-u.ac.jp> and posted at
http://www.se.hiroshima-u.ac.jp/~shigeaki/software/freebsd-nfe.html
It was additionally cleaned up by me.
It is still a work-in-progress and thus is purposefully not in GENERIC.
And it conflicts with nve(4), so only one should be loaded.


159714 18-Jun-2006 marcel

Unconditionally enable ppc(4) and puc(4).


159713 18-Jun-2006 marcel

Make this usable for all platforms.


159690 17-Jun-2006 netchild

Connect the envy42 driver to the build.


159687 17-Jun-2006 netchild

dd the envy24 driver as is to the tree. It's not connected to the build
yet. More commits to follow.

I got no response from the author, but since the driver is BSD licensed
I don't think he will complain. :-)

I got it from http://people.freebsd.org/~lofi/envy24.tar.gz

Written by: Katsurajima Naoto <raven@katsurajima.seya.yokohama.jp>


159660 16-Jun-2006 nyan

Build the ppc module on pc98.


159658 16-Jun-2006 kib

Allow for ppc(4) to be built as module, initially
only for i386 and amd64.

MFC after: 1 month
Approved by: pjd (mentor)


159619 14-Jun-2006 gallatin

Remove the initial myri10ge driver, now that it has been
renamed mxge.


159571 13-Jun-2006 gallatin

- Complete the myri10ge -> mxge name change by doing a mechanical
s/myri10ge/mxge/g replacement in the myri10ge files. A few contuation
lines were joined because of the regained columns.
- Hook the mxge driver back to the build.


159466 09-Jun-2006 pjd

Don't expect that 'device random' will compile in those files into the
kernel for us. If random is compiled as kernel module, geom_bde.ko cannot
be loaded.

Reported by: Michal Suszko <michal@dry.pl>


159453 09-Jun-2006 rodrigc

Makefile changes to accomodate new XFS import.


159446 08-Jun-2006 thompsa

Allow bridge and carp to play nicely together by returning the packet if its
destined for a carp interface.

Obtained from: OpenBSD
MFC after: 2 weeks


159443 08-Jun-2006 sam

add powerpc glue

MFC after: 1 month


159441 08-Jun-2006 sam

enable build of ath_hal on sparc64 and powerpc

MFC after: 1 month


159309 05-Jun-2006 pjd

Connect new GELI files to the build.

Supported by: Wheel Sp. z o.o. (http://www.wheel.pl)


159066 30-May-2006 ru

Dike out WARNS from kernel module makefiles. Kernels and modules
use a different mechanism for setting warning flags, and using
WARNS here only has null or negative effects.

Submitted by: bde (I think it means "submitted")


159044 29-May-2006 scottl

Remove cruft.


158979 27-May-2006 netchild

Commit the new (old) midi framework. It's based in parts on the NetBSD code,
but large parts are rewritten by matk and tanimura.

This is old code, it's not maintained since 2003. We also don't have a
maintainer for this! Yuriy Tsibizov took it and uses it in his emu10kx
driver. Since the emu10kx driver will enter the tree "soon" (some bugs
have to be fixed after Yuriy return from his holidays), I add it here
already.

This also contains some changes to emu10k1 and cmi, so if you're lucky,
you can now make some kind of use of midi with those soundcards.

To all those poor souls which don't have such a card: feel free to send
patches, we don't have a maintainer for this.

To those which miss a specific feature in the midi code: feel free to
submit patches, we don't have a maintainer for this.

Oh, did I already told that it would be nice if someone would take care
of it? Maintainer with midi equipment wanted! :-)

If you get LOR's, submit a PR and notify multimedia@ please. If you get
panics, submit a PR with a backtrace (compile the sound system into your
kernel instead of using modules in this case) and notify multimedia@
please.

Written by: matk, tanimura
Submitted by: "Yuriy Tsibizov" <Yuriy.Tsibizov@gfk.ru>
Based upon: code from NetBSD


158931 26-May-2006 imp

wi works on amd64 laptops. Enable its building as a module.


158889 24-May-2006 imp

Add cbb, cardbus, pccard and exca to the list of modules. The appear
to work on the Turion64 laptop I have.


158737 18-May-2006 ambrisko

Add in a bunch of things to the mfi driver:
- Linux ioctl support, with the other Linux changes MegaCli
will run if you mount linprocfs & linsysfs then set
sysctl compat.linux.osrelease=2.6.12 or similar. This works
on i386. It should work on amd64 but not well tested yet.
StoreLib may or may not work. Remember to kldload mfi_linux.
- Add in AEN (Async Event Notification) support so we can
get messages from the firmware when something happens.
Not all messages are in defined in event detail. Use
event_log to try to figure out what happened.
- Try to implement something like SIGIO for StoreLib. Since
mrmonitor doesn't work right I can't fully test it. StoreLib
works best with the rh9 base. In theory mrmonitor isn't
needed due to native driver support of AEN :-)
Now we can configure and monitor the RAID better.

Submitted by: IronPort Systems.


158712 17-May-2006 marius

- Add C-bus and ISA front-ends for le(4) so it can actually replace
lnc(4) on PC98 and i386. The ISA front-end supports the same non-PNP
network cards as lnc(4) did and additionally a couple of PNP ones.
Like lnc(4), the C-bus front-end of le(4) only supports C-NET(98)S
and is untested due to lack of such hardware, but given that's it's
based on the respective lnc(4) and not too different from the ISA
front-end it should be highly likely to work.
- Remove the descriptions of le(4), which where converted from lnc(4),
from sys/i386/conf/NOTES and sys/pc98/conf/NOTES as there's a common
one in sys/conf/NOTES.


158567 14-May-2006 scottl

Remove the lnc module Makefile.


158566 14-May-2006 delphij

Fix build (unhook lnc).

Submitted by: David H. Wolfskill <david catwhisker org>


158500 12-May-2006 mlaier

Remove ip6fw. Since ipfw has full functional IPv6 support now and - in
contrast to ip6fw - is properly lockes, it is time to retire ip6fw.


158491 12-May-2006 ariff

Unbreak build. es1888.c (alpha bit) no longer exist.


158381 09-May-2006 ambrisko

Add in linsysfs. A linux 2.6 like sys filesystem to pacify the Linux
LSI MegaRAID SAS utility.

Sponsored by: IronPort Systems
Man page help from: brueffer


158380 09-May-2006 netchild

It seems I forgot to commit the removal of the linux and linprocfs
modules at the time I axed the linuxolator on Alpha.

Noticed by: kris


158354 08-May-2006 sam

fix braino that broke building on amd64

Submitted by: Pascal Hofstee
MFC after: 2 weeks


158340 06-May-2006 sam

fix build on sparc

MFC after: 1 month


158311 05-May-2006 ambrisko

Enhance the Linux emulation layer to make MegaRAID SAS managements tool happy.
Add back in a scheme to emulate old type major/minor numbers via hooks into
stat, linprocfs to return major/minors that Linux app's expect. Currently
only /dev/null is always registered. Drivers can register via the Linux
type shim similar to the ioctl shim but by using
linux_device_register_handler/linux_device_unregister_handler functions.
The structure is:

struct linux_device_handler {
char *bsd_driver_name;
char *linux_driver_name;
char *bsd_device_name;
char *linux_device_name;
int linux_major;
int linux_minor;
int linux_char_device;
};

Linprocfs uses this to display the major number of the driver. The
soon to be available linsysfs will use it to fill in the driver name.
Linux_stat uses it to translate the major/minor into Linux type values.

Note major numbers are dynamically assigned via passing in a -1 for
the major number so we don't need to keep track of them.

This is somewhat needed due to us switching to our devfs. MegaCli
will not run until I add in the linsysfs and mfi Linux compat changes.

Sponsored by: IronPort Systems


158309 05-May-2006 scottl

Remove hand-rolled cross-build glue. Normal cross-build infrastructure
in FreeBSD likely supports this without any extra work.


158124 28-Apr-2006 marcel

Rewrite of puc(4). Significant changes are:
o Properly use rman(9) to manage resources. This eliminates the
need to puc-specific hacks to rman. It also allows devinfo(8)
to be used to find out the specific assignment of resources to
serial/parallel ports.
o Compress the PCI device "database" by optimizing for the common
case and to use a procedural interface to handle the exceptions.
The procedural interface also generalizes the need to setup the
hardware (program chipsets, program clock frequencies).
o Eliminate the need for PUC_FASTINTR. Serdev devices are fast by
default and non-serdev devices are handled by the bus.
o Use the serdev I/F to collect interrupt status and to handle
interrupts across ports in priority order.
o Sync the PCI device configuration to include devices found in
NetBSD and not yet merged to FreeBSD.
o Add support for Quatech 2, 4 and 8 port UARTs.
o Add support for a couple dozen Timedia serial cards as found
in Linux.


158101 28-Apr-2006 scottl

Enable the rr232x driver for amd64.


158098 28-Apr-2006 scottl

Fix a typo that slipped in right before commit.


158084 27-Apr-2006 scottl

Add the 'rr232x' driver for the HighPoint RocketRAID 2320 series of cards.
This driver was generously developed and donated by Highpoint.

It is enabled for i386 only at the moment. I will enable it for amd64
shortly.

Obtained from: HighPoint Technologies, Inc.


158061 27-Apr-2006 yongari

The sk(4) driver has moved to /sys/dev/sk


157774 15-Apr-2006 iwasaki

Import ACPI Dock Station support. Note that this is still very young.
Additional detach implementaions (or maybe improvement) for other
deivce drivers is required.

Reviewed by: njl, imp
MFC after: 1 week


157642 10-Apr-2006 ps

Add a driver for the Broadcom NetXtreme II (BCM5706/BCM5708)
PCI/PCIe Gigabit Ethernet adapeter.

Submitted by: David Christensen


157438 03-Apr-2006 sam

o add opt_ath.h enable tweaking various config parameters for the driver
without modifying the source code
o default debug msgs and diag support to off

MFC after: 3 days


157353 01-Apr-2006 marcel

Build the scc(4) module with EBus and SBus attachments for sparc64
only and build the scc(4) module with MacIO attachment for powerpc.


157318 31-Mar-2006 marcel

Build uart(4) on PowerPC.


157301 30-Mar-2006 marcel

o Add scc(4) to the build.
o Add the scc(4) manpage to the build.
o Update the uart(4) manpage to account for scc(4).
o Update the uart(4) module build to include support for scc(4).


157299 30-Mar-2006 marcel

Add scc(4), a driver for serial communications controllers. These
controllers typically have multiple channels and support a number
of serial communications protocols. The scc(4) driver is itself
an umbrella driver that delegates the control over each channel
and mode to a subordinate driver (like uart(4)).
The scc(4) driver supports the Siemens SAB 82532 and the Zilog
Z8530 and replaces puc(4) for these devices.


157259 29-Mar-2006 scottl

Hook the MFI driver up to the build.


157114 25-Mar-2006 scottl

Add a driver for the new LSI MegaRAID SAS controller family. The 'MFI' name
is derived from the phrase 'MegaRAID Firmware Interface' used by LSI. This
driver provides a block interface to logical disks on the card and a minimal
management device. It is MPSAFE, INTR_FAST, and 64-bit capable.

Thanks to Dell for providing hardware to test with and IronPort for
sponsoring the work.

Sponsored by: Dell, Ironport
MFC After: 3 days


156905 20-Mar-2006 ru

Extend coverage of the MK_IPX build option to the following:

- <netipx> headers [1]
- IPX library (libipx)
- IPX support in ifconfig(8)
- IPXrouted(8)
- new MK_NCP option

New MK_NCP build option controls:

- <netncp> and <fs/nwfs> headers
- NCP library (libncp)
- ncplist(1) and ncplogin(1)
- mount_nwfs(8)
- ncp and nwfs kernel modules

User knobs: WITHOUT_IPX, WITHOUT_IPX_SUPPORT, WITHOUT_NCP.

[1] <netsmb/netbios.h> unconditionally uses <netipx> headers
so they are still installed. This needs to be dealt with.


156842 18-Mar-2006 netchild

Get rid of the need of COMPAT_43 in the linuxolator.

Submitted by: Divacky Roman <xdivac02@stud.fit.vutbr.cz>
Obtained from: DragonFly (some parts)


156813 17-Mar-2006 ru

Reimplementation of world/kernel build options. For details, see:

http://lists.freebsd.org/pipermail/freebsd-current/2006-March/061725.html

The src.conf(5) manpage is to follow in a few days.

Brought to you by: imp, jhb, kris, phk, ru (all bugs are mine)


156805 17-Mar-2006 nyan

Don't build the ipw and iwi on pc98.


156775 16-Mar-2006 ru

NO_MAN is not needed here.


156755 15-Mar-2006 damien

build ipw(4) and iwi(4) modules on i386 and amd64 only.


156600 12-Mar-2006 damien

remove depedancy with vnode_if.h.
it is no longer needed.


156566 11-Mar-2006 sos

Remove debug flag.

Spotted by: ru@


156542 10-Mar-2006 sos

Add atausb module


156499 09-Mar-2006 yar

The `pf' and `pflog' sources do not depend on DEV_PF or DEV_PFLOG,
which is normal for own files of a device driver.

DEV_FOO should be used if an unrelated kernel file needs to know of
the `foo' driver's static presence. Obviously, module source files
should never use DEV_*.


156326 05-Mar-2006 yar

Retire NETSMBCRYPTO as a kernel option and make its functionality
enabled by default in NETSMB and smbfs.ko.

With the most of modern SMB providers requiring encryption by
default, there is little sense left in keeping the crypto part
of NETSMB optional at the build time.

This will also return smbfs.ko to its former properties users
are rather accustomed to.

Discussed with: freebsd-stable, re (scottl)
Not objected by: bp, tjr (silence)
MFC after: 5 days


156322 05-Mar-2006 damien

Add support for the second (RT2561/RT2561S) and third (RT2661 MIMO XR)
generations of 802.11abg chipsets from Ralink Technology.
Get rid of the pccard front-end while I'm here since all adapters are
cardbus ones.


156260 03-Mar-2006 yar

Take the functionality contained in the former "options TDFX_LINUX"
into a separate module. Accordingly, convert the option into a device
named similarly.

Note for MFC: Perhaps the option should stay in RELENG_6 for POLA reasons.

Suggested by: scottl
Reviewed by: cokane
MFC after: 5 days


156248 03-Mar-2006 yar

Fix the decaying MODULES_WITH_WORLD again by adding a missing opt_*.h to SRCS.


156167 01-Mar-2006 emax

Provide ability to disable kbdmux(4) with the hint.kbdmux.0.disabled="1" hint.
Document hint in the kbdmux(4) man page.

Requested by: scottl
MFC after: 1 day


156072 27-Feb-2006 wkoszek

This patch fixes a problem, which exists if you have IPSEC in your kernel
and want to have crypto support loaded as KLD. By moving zlib to separate
module and adding MODULE_DEPEND directives, it is possible to use such
configuration without complication. Otherwise, since IPSEC is linked with
zlib (just like crypto.ko) you'll get following error:

interface zlib.1 already present in the KLD 'kernel'!

Approved by: cognet (mentor)


156071 27-Feb-2006 wkoszek

Connect zlib to the build.

Approved by: cognet (mentor)


156062 27-Feb-2006 yar

CODA_COMPAT_5 may not be defined unconditionally in the coda5 module.
Otherwise a kernel build would break in the coda5 module if the main
kernel conf file enabled CODA_COMPAT_5, too. Redefined symbols are
strictly disallowed by -Werror.

To overcome this issue, introduce a different symbol indicating coda5
build, CODA5_MODULE, and translate it to CODA_COMPAT_5 appropriately
in /sys/coda/coda.h.

MFC after: 3 days


156033 26-Feb-2006 imp

Move de from pci to dev/de


155979 24-Feb-2006 yar

Move the hard-coded ETHER_* options to where they belong --
inside !if defined(KERNBUILDDIR).

Utilize the fact the module will support all frames by default --
it needs no ETHER_* options unless some frames need to be disabled.

Fix the comment respectively.

Don't forget to create fake opt_ef.h if no ETHER_* are set.

MFC after: 3 days


155966 24-Feb-2006 marcel

Remove dev/uart/uart_if.m from the default MFILES (in kmod.mk) and
instead define MFILES appropriately for the uart(4) module build.


155949 23-Feb-2006 gallatin

Unhook myri10ge from build in preparation for rename


155861 20-Feb-2006 ume

Obey opt_inet6.h in kernel build directory.

Reported by: Peter Losher <plosher-keyword-freebsd.a36e57__at__plosh.net>
MFC after: 3 days


155860 20-Feb-2006 nyan

Disable the myri10ge driver on pc98.


155855 20-Feb-2006 gallatin

Hook the myri10ge driver to the i386 and amd64 module builds.

Sponsored by: Myricom Inc.
Reviewed by: scottl


155852 19-Feb-2006 gallatin

10GbE mode driver and binary firmware for Myricom's PCI-express NICs.
More info regarding these nics can be found at http://www.myri.com.

Please note that the files
sys/dev/myri10ge/{mcp_gen_header.h,myri10ge_mcp.h} are internally
shared between all our drivers (solaris, macosx, windows, linux, etc).
I'd like to keep these files unchanged, so I can just import newer
versions of them when the firmware API/ABI changes. This means I'm
stuck with some of the crazy-long #define names, and possibly
non-style(9) characteristics of these files.

Many thanks to mlaier for doing firmware(9) just as I
needed it, and to scottl for his helpful review.

Reviewed by: scottl, glebius
Sponsored by: Myricom Inc.


155828 19-Feb-2006 yar

For the coda5 module, CODA_COMPAT_5 is mandatory, not optional.
Without CODA_COMPAT_5, it would be equivalent to the plain coda
module. Therefore just add -DCODA_COMPAT_5 to CFLAGS instead of
fiddling with opt_coda.h. This is particularly important when
the module is built along with the kernel and CODA_COMPAT_5 isn't
in the kernel conf file (and so not in opt_coda.h either).

MFC after: 3 days


155824 18-Feb-2006 yar

Style: Remove blank lines before EOF.

Tested by: cvs diff -B


155823 18-Feb-2006 yar

Work around the fact that nfsclient SRCS must include
nfs_diskless.c if NFS_ROOT is in effect, e.g., present
in the kernel config file. Otherwise the built module
won't load due to an undefined reference to nfs_setup_diskless.

MFC after: 3 days


155778 17-Feb-2006 ru

Fix standalone module build.

Reported by: Boris Samorodov


155672 14-Feb-2006 nyan

Disable the ipmi driver on pc98.


155607 13-Feb-2006 ambrisko

Tie the ipmi driver into the i386/amd64 builds.


155535 11-Feb-2006 pjd

Check rootvnode variable to see if we still want to ask for passphrase on
boot. Other methods just don't work properly.

MFC after: 3 days


155517 10-Feb-2006 ambrisko

Add an OpenIPMI mostly compatible driver. This driver was developed
to work with ipmitools. It works with other tools that have an OpenIPMI
driver interface. The port will need to get updated to used this.
I have not implemented the IPMB mode yet so ioctl's for that don't
really do much otherwise it should work like the OpenIPMI version.
The ipmi.h definitions was derived from the ipmitool header file.
The bus attachments are done for smbios and pci/smbios. Differences
in bus probe order for modules/static are delt with. ACPI attachment
should be done.

This drivers registers with the watchdod(4) interface

Work to do:
- BT interface
- IPMB mode

This has been tested on Dell PE2850, PE2650 & PE850 with i386 & amd64
kernel.

I will link this into the build on next week.

Tom Rhodes, helped me with the man page.

Sponsored by: IronPort Systems Inc.
Inspired from: ipmitool & Linux


155433 07-Feb-2006 yar

INET doesn't belong to opt_inet6.h: INET6 belongs to it.


155341 05-Feb-2006 imp

an driver not endian clean, so don't enable on sparc64


155337 05-Feb-2006 mlaier

Make pflog a seperate module. As a result pflog_packet() becomes a function
pointer that is declared in pf_ioctl.c

Requested by: yar (as part of the module build reorg)
MFC after: 1 week
X-MFC with: yar's module reorg


155159 31-Jan-2006 rik

Attach ce(4) to the build.

MFC after: 3 days


155151 31-Jan-2006 marius

Hook up le(4) to the build. For now it's only added to the sparc64 GENERIC
in order to support the on-board LANCE in Ultra 1 and to the MI NOTES as
it should work just fine with the AMD PCnet family of chips on all archs
but is not yet meant to replace lnc(4). If a kernel includes all of le(4),
lnc(4) and pcn(4) precedence is given to lnc(4)/pcn(4) for now.


155017 29-Jan-2006 rik

Add makefile for ce(4) module.


154974 29-Jan-2006 mlaier

firmware(9) is a subsystem to load binary data into the kernel via a
specially crafted module. There are several handrolled sollutions to this
problem in the tree already which will be replaced with this. They include
iwi(4), ipw(4), ispfw(4) and digi(4).

No objection from: arch
MFC after: 2 weeks
X-MFC after: some drivers have been converted


154900 27-Jan-2006 jmg

add an option BKTR_USE_FREEBSD_SMBUS that enables compiling the module
with same option...

MFC after: 3 days


154865 26-Jan-2006 alc

opt_vmpage.h is no longer needed here because it is not included by
vm_page.h.


154823 25-Jan-2006 ambrisko

Tie the amr_linux module into the build for i386 & amd64


154789 24-Jan-2006 ambrisko

Add in the Linux IOCTL shim and create the megadev0 device so
Linux LSI MegaRaid tools can run on FreeBSD until Linux emulation.

Add in the Linux IOCTL shim and create the megadev0 device so
Linux LSI MegaRaid tools can run on FreeBSD until Linux emulation.

Add glue to build the modules but don't tie it into the build
yet until I test it from the CVS repo. via the mirror on an
amd64 machine.

Tie this into the Linux32 emulation on amd64 so the tools can
run on amd64 kernel.

Cleaned up by: ps (amr_linux.c)


154433 16-Jan-2006 ru

Fix standalone module build.

Reported by: Boris Samorodov <bsam@ipt.ru>


154154 10-Jan-2006 takawata

Hook ufoma module to build.

Pointed out by:thompsa


154141 09-Jan-2006 takawata

Add FOMA (NTT DoCoMo 3G mobile phone system) driver.
This is based on MCPC USB mobile phone guide line (MCPC-GL005)
Some other 3G system or so will work with this driver.
Kyocera PHS terminal (a.k.a. Kyopon) is known to work, which
is now supported by umodem(4) driver.


153811 29-Dec-2005 imp

Implement /dev/cardbus%d.cis, same thing as /dev/pccard%d.cis. There
are some rough edges with this still, but it seems to work well enough
to commit.


153695 23-Dec-2005 imp

Build ed on amd64. The pci attachment works with qemu on amd64.

I'm holding off on building on sparc64 and others because I don't know
if this driver has had all the inb/outb removed (I think it has). Nor
do I know if there are byte ordering issues. There are very few word
operations on an NE2000, but I've not had time to audit them all.

Suggested by: Daniel O'Connor


153643 22-Dec-2005 nyan

Enable the cs and disable the amdsmb and nfsmb on pc98.


153618 21-Dec-2005 ru

Drivers for AMD-8111 and NVIDIA nForce2/3/4 SMBus 2.0 controllers.


153328 12-Dec-2005 rodrigc

Build xfs before xl.

Noticed by: pjd


153327 12-Dec-2005 rodrigc

Add xfs to list of modules which are built.


153324 12-Dec-2005 rodrigc

Add Makefile for compiling XFS as a kernel module.


153280 10-Dec-2005 scottl

The if_ti Tigon I/II driver has moved to /sys/dev/ti


153213 07-Dec-2005 jkim

Add BPF Just-In-Time compiler support for ng_bpf(4).

The sysctl is changed from net.bpf.jitter.enable to net.bpf_jitter.enable
and this controls both bpf(4) and ng_bpf(4) now.


153173 06-Dec-2005 ru

When compiling with the kernel, detect if INET6 support should be disabled.


153033 03-Dec-2005 anholt

Merge DRM CVS as of 2005-12-02, adding i915 DRM support thanks to Alexey Popov,
and a new r300 PCI ID.


152930 29-Nov-2005 ru

Let kmod.mk create empty opt_*.h files.


152928 29-Nov-2005 ume

obey opt_inet6.h and opt_ipsec.h in kernel build directory.

Requested by: hrs


152909 28-Nov-2005 anholt

Update DRM to CVS snapshot as of 2005-11-28. Notable changes:
- S3 Savage driver ported.
- Added support for ATI_fragment_shader registers for r200.
- Improved r300 support, needed for latest r300 DRI driver.
- (possibly) r300 PCIE support, needs X.Org server from CVS.
- Added support for PCI Matrox cards.
- Software fallbacks fixed for Rage 128, which used to render badly or hang.
- Some issues reported by WITNESS are fixed.
- i915 module Makefile added, as the driver may now be working, but is untested.
- Added scripts for copying and preprocessing DRM CVS for inclusion in the
kernel. Thanks to Daniel Stone for getting me started on that.


152853 27-Nov-2005 davidxu

Change filesystem name from mqueue to mqueuefs for style consistent.

Suggested by: rwatson


152851 27-Nov-2005 ariff

Support for ATI IXP 200 / 300 / 400 series audio controllers.


152827 26-Nov-2005 davidxu

Compile mqueue module.


152773 24-Nov-2005 le

Since we want a vinum geom created anytime the module loads, move
the geom creation to a seperate init function and ignore the tasting.

The config is now parsed only in the vinumdrive geom, which hopefully
fixes the problem, that the drive class tasted before the vinum class
had a chance, for good.

Also restore the behaviour that the module can be loaded at boot time
and on a running system.


152687 22-Nov-2005 marius

- Add ofw_bus_if.h to SRCS on sparc64 as envctrl.c and pcf_ebus.c depend
on it.
- Sync with sys/conf/files* and build pcf_isa.c only on i386 for now.
- Try to adhere to style.Makefile(5) (sorting, whitespace).


152615 19-Nov-2005 le

Finally bring in what was produced during Google SoC 2005:

Add functions to rename objects and to move a subdisk from one drive
to another.

Obtained from: Chris Jones <chris.jones@ualberta.ca>
Sponsored by: Google Summer of Code 2005
MFC in: 1 week


152611 19-Nov-2005 damien

Load firmware images directly from the filesystem (looks into /etc/firmware
directory by default) without requiring the user to load them by hand using
e.g iwicontrol. Get rid of the old ioctl crud.
Updated iwi-firmware port coming soon.

Obtained from: OpenBSD


152541 17-Nov-2005 ru

Remove vestiges of oldcard and owi.


152532 16-Nov-2005 imp

OBE


152309 11-Nov-2005 pjd

Rename GEOM class kernel module g_md.ko to geom_md.ko for consistency
with the rest.

mdconfig.c: Simplify mdmaybeload() function.
mdioctl.h: Removed (now unused) #define.
loader.conf: Sort GEOM classes properly.

OK'ed by: phk


152306 11-Nov-2005 ru

Add /dev/speaker support to amd64.

The following repo-copies were made (by Mark Murray):

sys/i386/isa/spkr.c -> sys/dev/speaker/spkr.c
sys/i386/include/speaker.h -> sys/dev/speaker/speaker.h
share/man/man4/man4.i386/spkr.4 -> share/man/man4/spkr.4


152226 09-Nov-2005 yongari

Connect em(4) build on sparc64.


152213 08-Nov-2005 vkashyap

twa corresponding to the 9.3.0.1 release on the 3ware website. This driver has
support for the 9xxxSX controllers, along with the earlier 9xxxS series
controllers.


152204 08-Nov-2005 jhb

Fix standalone module build for viapm. Note that by default it doesn't
include the ISA bus support even though it probably should.


151948 01-Nov-2005 jkim

Catch up with ACPI-CA 20051021 import


151913 31-Oct-2005 phk

Tie acpi_hpet.c into the module and kernel.


151805 28-Oct-2005 joerg

Finally complete some work on generalizing the PCF8584-based I2C
drivers I started quite some time before.

Retire the old i386-only pcf driver, and activate the new general
driver that has been sitting in the tree already for quite some
time.

Build the i2c modules for sparc64 architectures as well (where I've
been developing all this on).


151640 25-Oct-2005 yongari

Connect es137x build on sparc64.


151565 23-Oct-2005 njl

Hook acpi_smbat up to the build.


151444 18-Oct-2005 yar

In this case, disable wrapping of fake opt_*.h targets in
"if defined(KERNBUILDDIR)" for now since the new way of
building modules with the kernel can't handle dynamic SRCS
depending on build options yet.


151441 18-Oct-2005 imp

Don't build dc-only pseudo phy devices with mii.ko anymore


151438 18-Oct-2005 imp

Move dc sources from pci to dev/dc.


151350 14-Oct-2005 yar

Let modules use the kernel's opt_*.h files if built along with
the kernel by wrapping all targets for fake opt_*.h files in
.if defined(KERNBUILDDIR). Thus, such fake files won't be
created at all if modules are built with the kernel.

Some modules undergo cleanup like removing unused or unneeded
options or .h files, without which they wouldn't build this way
or the other.

Reviewed by: ru
Tested by: no binary changes in modules built alone
Tested on: i386 sparc64 amd64


151323 14-Oct-2005 ru

Sort SUBDIR and surrounding definitions.


150967 05-Oct-2005 glebius

- Don't include opt_global.h, it is always included implicitly.
- Include opt_device_polling.h


150961 05-Oct-2005 imp

Add if_ed_rtl80x9.c


150897 04-Oct-2005 scottl

Oops, left a compile option enabled that should not be enabled.


150849 03-Oct-2005 scottl

Reintroduce the lmc T1/E1/T3 WAN driver. This version is locked, supports
interface polling, compiles on 64-bit platforms, and compiles on NetBSD,
OpenBSD, BSD/OS, and Linux. Woo! Thanks to David Boggs for providing this
driver.

Altq, sppp, netgraph, and bpf are required for this driver to operate.
Userland tools and man pages will be committed next.

Submitted by: David Boggs


150824 02-Oct-2005 netchild

Soft volume implementation for audio devices without pcm mixer controller.

Submitted by: Ariff Abdullah <skywizard@MyBSD.org.my>
Tested by: multimedia@


150757 30-Sep-2005 imp

ciphy wasn't included here.


150706 29-Sep-2005 fjoe

Add -DINVARIANT_SUPPORT -DINVARIANTS
(to commented out CFLAGS, used for debugging).


150636 27-Sep-2005 mlaier

Remove bridge(4) from the tree. if_bridge(4) is a full functional
replacement and has additional features which make it superior.

Discussed on: -arch
Reviewed by: thompsa
X-MFC-after: never (RELENG_6 as transition period)


150615 27-Sep-2005 nyan

Switch from OLDCARD to NEWCARD on pc98.


150373 20-Sep-2005 imura

Add geom_bsd_enc.c which we've been wanting to be in geon_bsd.

Reviewed by: phk


150363 20-Sep-2005 imp

Add pccard_device.c


150317 19-Sep-2005 mux

Fix the module build for snp(4).

Submitted by: cognet
Pointy hat to: cognet


150314 19-Sep-2005 imura

Connect smbfs build on powerpc.


150236 17-Sep-2005 anholt

Add a new AGP driver for ATI IGP chipsets. The driver is based on reading of
the Linux driver, since specs are unavailable. Many thanks to Adam Kirchhoff
for multiple useful testing cycles, and Ralf Wostrack for the final fix to get
it working.

PR: i386/75251
Submitted by: anholt


149873 08-Sep-2005 scottl

Hook up the hptmv driver for amd64.

MFC After: 3 days


149871 07-Sep-2005 scottl

Import new version of the HPTMV driver from Highpoint. The major change
here is the support for amd64, as well as possible support for PAE. Many
thanks to Highpoint for continuing to support FreeBSD.

Obtained from: Steve Chang @ Highpoint
MFC After: 3 days.


149580 29-Aug-2005 yar

Unbreak stand-alone build of the de(4) module.


149501 26-Aug-2005 le

Shuffle around the order in which the components are compiled.

This way, the VINUMDRIVE class is loaded before the VINUM class,
but since geom does the tasting for newly arrived classes
last-in-first-out, the VINUM class tastes first.

This removes the need to call gv_parse_config() in the drive
taste path.


149496 26-Aug-2005 jhb

Remove the el(4) driver for 3Com 3c501 ISA NICs from HEAD as threatened
earlier as no one has stepped up to test recent changes to the driver.
Oddly, the module was actually turned on on ia64 though I'm fairly certain
that no ia64 machine has ever had or will ever have an ISA slot.

Axe borrowed from: phk


149492 26-Aug-2005 takawata

Add NTFS labeling function.

Reviewed by:pjd


149234 18-Aug-2005 yar

Define the target for opt_compat.h only if KERNBUILDDIR
is not defined, so that the module will get the
compatibility options from the current kernel configuration
if built with the latter, not with the world.
[Some other modules seem in need of fixing WRT this, too.]

Add more compatibility options found in GENERIC to the default
opt_compat.h. While not all of them are used in the procfs code,
we can't tell for sure if the system .h files don't need them either,
so let's stay on the safe side.

Submitted by: kensmith
Reviewed by: ru


149231 18-Aug-2005 yar

Don't break local style.


149211 18-Aug-2005 pjd

Add VIA/ACE "PadLock" support as a crypto(9) driver.

HW donated by: Mike Tancsa <mike@sentex.net>
Most of the code obtained from: OpenBSD
MFC after: 3 days


148978 12-Aug-2005 pjd

Add code for Ext2FS and ReiserFS labels recognition.

Submitted by: Stanislav Sedov <stas@310.ru>
PR: kern/84638
MFC after: 1 week


148960 11-Aug-2005 yar

Fix stand-alone (or MODULES_WITH_WORLD=1) build of
the procfs module by creating opt_compat.h with
appropriate compatibility options: COMPAT_43 on all
arch's and COMPAT_IA32 in addition on amd64.

Pointy hat to: peter
MFC after: 3 days


148913 10-Aug-2005 obrien

Style cleanup.


148457 27-Jul-2005 pjd

Connect GEOM_ELI class to the build.

MFC after: 1 week


148456 27-Jul-2005 pjd

Add GEOM_ELI class which provides GEOM providers encryption.
For features list and usage see manual page: geli(8).

Sponsored by: Wheel Sp. z o.o.
http://www.wheel.pl
MFC after: 1 week


148384 25-Jul-2005 pjd

Connect GZERO to the build.

MFC after: 3 days


148382 25-Jul-2005 pjd

Add a very simple and small GEOM class - ZERO.
It creates very huge provider (41PB) /dev/gzero.
On BIO_READ request it zero-fills bio_data and on BIO_WRITE it does nothing.
You can also set kern.geom.zero.clear sysctl to 0 to do nothing even for
BIO_READ.

I'm using it for performance testing where it is very helpful.

MFC after: 3 days


148252 21-Jul-2005 jhb

Remove conditional code that has largely rotted that is also not on by
default:
- TULIP_NEED_FASTTIMEOUT - tulip_fasttimeout() wasn't called anywhere
- BIG_PACKET - only worked on i386 anyway
- TULIP_USE_SOFTINTR - doesn't compile and was never updated to handle
new netisr registration
- non-FreeBSD code


148211 20-Jul-2005 anholt

Add the latest r300 code from r300.sf.net. This is based on the patch supplied
by Vladimir Dergachev for inclusion in DRM CVS, with minor modifications for
FreeBSD CVS and the appropriate license from Nicolai Haehnle on r300_reg.h.
Fixes hangs when using r300.sf.net userland, tested on a Radeon 9600 on amd64.


148080 16-Jul-2005 phk

Revert last commit: It fixed make universe but broke regular kernel make.


148075 16-Jul-2005 phk

Add missing reference to ukbdmap.h

Fixes build of ukbd module under "make universe"


148018 14-Jul-2005 emax

kbdmux(4) keyboard multiplexer integration

o Add minimal kbdmux(4) man page to the source tree (more details to follow);

o Hook up kbdmux(4) to the build.

This concludes the first part of the kbdmux(4) keyboard multiplexer
integration. It now should be possible to use kbdmux(4), however one
must configure kbdmux(4) by hand (i.e. load kbdmux(4) module and use
kbdcontrol(1) to add/remove slave keyboards to/from kbdmux(4)).

MFC after: 1 week


147999 14-Jul-2005 emax

kbdmux(4) keyboard multiplexer integration

o Add sys/dev/kbdmux/kbdmux.c to the source tree

o Add sys/modules/kbdmux/Makefile to the source tree

These are not yet connected to the build. Man page and other changes to follow.

MFC after: 1 week


147993 14-Jul-2005 takawata

Add SL811 based host controller driver for CF usb host controller.
This is based on NetBSD slhci(4) driver for X68k amateur hardware.
For now, it will not work properly, but it can detect usb device
insertion.


147959 13-Jul-2005 imp

Minor reorg to keep each bus' files on one line


147958 13-Jul-2005 imp

Minor reorg to have each bus' files on one line.


147884 10-Jul-2005 scottl

Update for the new and removed MPT driver files.

Submitted by: gibbs
Approved by: re


147882 10-Jul-2005 marius

Build blank_saver.ko, fade_saver.ko and green_saver.ko on sparc64
now that they work with creator(4) and machfb(4).

Reviewed by: ru (style)
Approved by: re (scottl)


147879 10-Jul-2005 marius

- Add missing opt_isa.h. This fixes the standalone build of sound.ko
after sys/dev/sound/pcm/channel.c rev. 1.99, i.e. when there's no
existing KERNBUILDDIR with an opt_isa.h defined.
- Sync with sys/dev/sound/pcm/channel.c rev. 1.99 (sort of), i.e.
never compile in isadma support on sparc64 as we just never need
it there. This allows to use the "generic" module with a custom
kernel that is built without isa(4).

Reviewed by: ru
Approved by: re (scottl)


147688 30-Jun-2005 peter

i386->amd64 sync
Add ath_hal and ichwd modules

Approved by: re (blanked i386<->amd64 sync)


147589 24-Jun-2005 dwhite

Backout the change I made before 5.4-R since I wasn't aware that it was only
a problem with one particular switch module. Create a kernel option
BGE_FAKE_AUTONEG that restores the 5.4 behavior, which should make the DNLK
switch module work. IBM/Intel blades with Intel or AD switch modules should
work without patching or kernel options with this commit.

Hardware for testing provided by several folks, including
Danny Braniss <danny@cs.huji.ac.il>, Achim Patzner <ap@bnc.net>,
and OffMyServer.

Approved by: re


147515 21-Jun-2005 dumbbell

Buid reiserifs.ko on every platforms, not only i386 and pc98.

Reviewed by: mux (mentor)
Approved by: re (dougb)


147502 20-Jun-2005 glebius

Don't compile legacy libalias support into kernel.

Approved by: re (dwhite)


147476 18-Jun-2005 dumbbell

Moving reiserfs from sys/gnu to sys/gnu/fs. This was discussed on arch@.

Reviewed by: mux (mentor)
Approved by: re (scottl)


147393 15-Jun-2005 rodrigc

Move ext2fs from src/gnu to src/gnu/fs.
Discussed on arch@.

Reviewed by: kan
Approved by: re (blanket), kan


147232 10-Jun-2005 glebius

Attach ng_tcpmss to the build.


147191 09-Jun-2005 jkoshy

MFP4:

- Implement sampling modes and logging support in hwpmc(4).

- Separate MI and MD parts of hwpmc(4) and allow sharing of
PMC implementations across different architectures.
Add support for P4 (EMT64) style PMCs to the amd64 code.

- New pmcstat(8) options: -E (exit time counts) -W (counts
every context switch), -R (print log file).

- pmc(3) API changes, improve our ability to keep ABI compatibility
in the future. Add more 'alias' names for commonly used events.

- bug fixes & documentation.


146997 05-Jun-2005 takawata

Hook ichsmb to build.


146996 05-Jun-2005 takawata

Make ichsmb loadable.

PR: kern/81912
Submitted by: nork


146992 05-Jun-2005 ru

Let kmod.mk create an empty .h file.


146991 05-Jun-2005 ru

Fix deprecated name, and let kmod.mk create an empty .h file.


146987 05-Jun-2005 thompsa

Connect if_bridge to the build.

Approved by: mlaier (mentor)


146961 04-Jun-2005 imp

Move MAINTAINER documentation to MAINTAINERS


146957 04-Jun-2005 schweikh

Release n_hibma's maintainership due to his ENOTIME.

Discussed with, okayed, authorized, requested by, on behalf of: n_hibma (MAINTAINER)


146951 04-Jun-2005 glebius

Fix module build.

MFC after: 3 days


146935 03-Jun-2005 imp

Update to reflect takawata-san's changes to MAINTAINERS


146934 03-Jun-2005 ru

Fix standalone module build.

Reported by: Boris Samorodov <bsam@ipt.ru>


146927 03-Jun-2005 gallatin

Remove myself as maintainer of the OSF/1 compat code. I haven't had
an alpha booting -current since my xp1000 died over a year ago, and I
don't think I touched the osf1 code since long before then.


146566 24-May-2005 dumbbell

Connect the ReiserFS filesystem to the modules build (i386 only).

Approved by: mux (mentor)


146392 19-May-2005 marius

- Try to not leak resources in the attach functions of the esp(4) SBus
front-end and the LSI64854 and NCR53C9x code in case one of these
functions fails. Add detach functions to these parts and make esp(4)
detachable.
- Revert rev. 1.7 of esp_sbus.c, since rev. 1.34 of sbus.c the clockfreq
IVAR defaults to the per-child values.
- Merge ncr53c9x.c rev. 1.111 from NetBSD (partial):
On reset, clear state flags and the msgout queue.
In NetBSD code to notify the upper layer (i.e. CAM in FreeBSD) on reset
was also added with this revision. This is believed to be not necessary
in FreeBSD and was not merged.
This makes ncr53c9x.c to be in sync with NetBSD up to rev. 1.114.
- Conditionalize the LSI64854 support on sbus(4) only instead of sbus(4)
and esp(4) as it's also required for the 'dma', 'espdma' and 'ledma'
busses/devices as well as the 'SUNW,bpp' device (printer port) which
all hang off of sbus(4).
- Add a driver for the 'dma', 'espdma' and 'ledma' (pseudo-)busses/
devices. These busses and devices actually represent the LSI64854 DMA
engines for the ESP SCSI and LANCE Ethernet controllers found on the
SBus of Ultra 1 and SBus add-on cards. With 'espdma' and 'ledma' the
'esp' and 'le' devices hang off of the respective DMA bus instead of
directly from the SBus. The 'dma' devices are either also used in this
manner or on some add-on cards also as a companion device to an 'esp'
device which also hangs off directly from the SBus. With the latter
variant it's a bit tricky to glue the DMA engine to the core logic of
the respective 'esp' device. With rev. 1.35 of sbus.c we are however
guaranteed that such a 'dma' device is probed before the respective
'esp' device which simplifies things a lot. [1]
- In the esp(4) SBus front-end read the part-unique ID code of Fast-SCSI
capable chips the right way. This fixes erroneously detecting some
chips as FAS366 when in fact they are not. Add explicit checks for the
FAS100A, FAS216 and FAS236 variants instead treating all of these as
ESP200. That way we can correctly set the respective Fast-SCSI config
bits instead of driving them out of specs. This includes adding the
FAS100A and FAS236 variants to the NCR53C9x core code. We probably
still subsume some chip variants as ESP200 while in fact they are
another variant which however shouldn't really matter as this will
only happen when these chips are driven at 25MHz or less which implies
not being able to run Fast-SCSI. [3]
- Add a workaround to the NCR53C9x interrupt handler which ignores the
stray interrupt generated by FAS100A when doing path inquiry during
boot and which otherwiese would trigger a panic.
- Add support for the 'esp' devices hanging off of a 'dma' or 'espdma'
busses or which are companions of 'dma' devices to esp(4). In case of
the variants that hang off of a DMA device this is a bit hackish as
esp(4) then directly uses the softc of the respective parent to talk
to the DMA engine. It might make sense to add an interface for this
in order to implement this in a cleaner way however it's not yet clear
how the requirements for the LANCE Ethernet controllers are and the
hack works for now. [2]
This effectively adds support for the onboard SCSI controller in
Ultra 1 as well as most of the ESP-based SBus add-on cards to esp(4).
With this the code for supporting the Performance Technologies SBS430
SBus SCSI add-on cards is also largely in place the remaining bits
were however omitted as it's unclear from the NetBSD how to couple
the DMA engine and the core logic together for these cards.

Obtained from: OpenBSD [1]
Obtained from: NetBSD [2]
Clue from: BSD/OS [3]
Reviewed by: scottl (earlier version)
Tested with: FSBE/S add-on card (FAS236), SSHA add-on card (ESP100A),
Ultra 1 (onboard FAS100A), Ultra 2 (onboard FAS366)


146259 16-May-2005 glebius

Make NETGRAPH_DEBUG a kernel option, so that it can't be turned off
without hacking source.

In collaboration with: ru, julian


146049 10-May-2005 nyan

Change a directory layout for pc98.
- Move MD files into <arch>/<arch>.
- Move bus dependent files into <arch>/<bus>.
Rename some files to more suitable names.

Repo-copied by: peter
Discussed with: imp


146020 09-May-2005 marks

Fix separate module build.

Submitted by: njl


145965 06-May-2005 glebius

Attach ng_nat and libalias to build.


145937 05-May-2005 glebius

ng_nat - a netgraph(4) node, which does NAT


145936 05-May-2005 glebius

libalias is now buildable as kernel module


145855 04-May-2005 rwatson

Introduce MAC Framework and MAC Policy entry points to label and control
access to POSIX Semaphores:

mac_init_posix_sem() Initialize label for POSIX semaphore
mac_create_posix_sem() Create POSIX semaphore
mac_destroy_posix_sem() Destroy POSIX semaphore
mac_check_posix_sem_destroy() Check whether semaphore may be destroyed
mac_check_posix_sem_getvalue() Check whether semaphore may be queried
mac_check_possix_sem_open() Check whether semaphore may be opened
mac_check_posix_sem_post() Check whether semaphore may be posted to
mac_check_posix_sem_unlink() Check whether semaphore may be unlinked
mac_check_posix_sem_wait() Check whether may wait on semaphore

Update Biba, MLS, Stub, and Test policies to implement these entry points.
For information flow policies, most semaphore operations are effectively
read/write.

Submitted by: Dandekar Hrishikesh <rishi_dandekar at sbcglobal dot net>
Sponsored by: DARPA, McAfee, SPARTA
Obtained from: TrustedBSD Project


145607 28-Apr-2005 jkoshy

Use the new path (post repo-copy) to our sources.


145523 25-Apr-2005 darrenr

new files and compile defines to build new ipfilter


145485 24-Apr-2005 wpaul

Throw the switch on the new driver generation/loading mechanism. From
here on in, if_ndis.ko will be pre-built as a module, and can be built
into a static kernel (though it's not part of GENERIC). Drivers are
created using the new ndisgen(8) script, which uses ndiscvt(8) under
the covers, along with a few other tools. The result is a driver module
that can be kldloaded into the kernel.

A driver with foo.inf and foo.sys files will be converted into
foo_sys.ko (and foo_sys.o, for those who want/need to make static
kernels). This module contains all of the necessary info from the
.INF file and the driver binary image, converted into an ELF module.
You can kldload this module (or add it to /boot/loader.conf) to have
it loaded automatically. Any required firmware files can be bundled
into the module as well (or converted/loaded separately).

Also, add a workaround for a problem in NdisMSleep(). During system
bootstrap (cold == 1), msleep() always returns 0 without actually
sleeping. The Intel 2200BG driver uses NdisMSleep() to wait for
the NIC's firmware to come to life, and fails to load if NdisMSleep()
doesn't actually delay. As a workaround, if msleep() (and hence
ndis_thsuspend()) returns 0, use a hard DELAY() to sleep instead).
This is not really the right thing to do, but we can't really do much
else. At the very least, this makes the Intel driver happy.

There are probably other drivers that fail in this way during bootstrap.
Unfortunately, the only workaround for those is to avoid pre-loading
them and kldload them once the system is running instead.


145397 22-Apr-2005 iedowse

Pick up the selectors to use for various kernel segments from assym.s
instead of assuming fixed offsets within the GDT. The hard-coded
values here have been incorrect since Peter's GDT rearranging around
10 days ago, causing ACPI resume problems.

Reviewed by: peter


145392 22-Apr-2005 imp

Add sio and puc to i386 build.
Remove ray from ia64 build since it hasn't been tested there.


145390 22-Apr-2005 imp

Create a puc module. Not connected to the build until I can test it on
more machines.


145344 20-Apr-2005 marcel

Revert previous commit: build hwpmc(4) on all architectures.

Ok'd by: jkoshy@


145326 20-Apr-2005 nyan

Rename from apm_bioscall.s to apm_bioscall.S for removing a special rule
to build a module. A repo-copy is not done because it has no important logs.

Pointed out by: ru


145314 20-Apr-2005 jkoshy

Only compile for the hwpmc module for supported architectures.

Submitted by: grehan


145287 19-Apr-2005 njl

Add a driver for SMI-based SpeedStep. The hardware supports two frequency
settings and is an older version of the same design used for ICH SpeedStep.
It is only known to be available on PIIX4 chipsets.

Many thanks to Bruno Ducrot for writing the driver and Jon Noack for
testing.

Submitted by: Bruno Ducrot


145256 19-Apr-2005 jkoshy

Bring a working snapshot of hwpmc(4), its associated libraries, userland utilities
and documentation into -CURRENT.

Bump FreeBSD_version.

Reviewed by: alc, jhb (kernel changes)


145247 18-Apr-2005 damien

Initial import of ipw, iwi, ral and ural drivers:

ipw - Intel PRO/Wireless 2100
iwi - Intel PRO/Wireless 2200BG/2225BG/2915ABG
ral - Ralink Technology RT2500
ural - Ralink Technology RT2500USB

Approved by: silby (mentor)


145182 17-Apr-2005 nyan

Fix the apm module on pc98.

Pointed out by: Kuwamura Shinya <kuwa at lares dot dti dot ne dot jp>
MFC after: 1 day


145132 16-Apr-2005 anholt

Update to DRM CVS as of 2005-04-12, bringing many changes:
- Split core DRM routines back into their own module, rather than using the
nasty templated system like before.
- Development-class R300 support in radeon driver (requires userland pieces, of
course).
- Mach64 driver (haven't tested in a while -- my mach64s no longer fit in the
testbox). Covers Rage Pros, Rage Mobility P/M, Rage XL, and some others.
- i915 driver files, which just need to get drm_drv.c fixed to allow attachment
to the drmsub device. Covers i830 through i915 integrated graphics.
- savage driver files, which should require minimal changes to work. Covers the
Savage3D, Savage IX/MX, Savage 4, ProSavage.
- Support for color and texture tiling and HyperZ features of Radeon.

Thanks to: scottl (much p4 handholding)
Jung-uk Kim (helpful prodding)
PR: [1] kern/76879, [2] kern/72548
Submitted by: [1] Alex, lesha at intercaf dot ru
[2] Shaun Jurrens, shaun at shamz dot net


144983 13-Apr-2005 marcel

Build cpufreq on ia64. The upcoming Montecito processor supports the
Enhanced SpeedStep (that is, a follow-up of it called Foxton). Until
we actually have support for that, we build to catch regressions in
the framework.

Triggered by: njl


144966 12-Apr-2005 vkashyap

The latest release of the FreeBSD driver (twa) for
3ware's 9xxx series controllers. This corresponds to
the 9.2 release (for FreeBSD 5.2.1) on the 3ware website.

Highlights of this release are:

1. The driver has been re-architected to use a "Common Layer"
(all tw_cl* files), which is a consolidation of all OS-independent
parts of the driver. The FreeBSD OS specific portions of the
driver go into an "OS Layer" (all tw_osl* files).
This re-architecture is to achieve better maintainability, consistency
of behavior across OS's, and better portability to new OS's (drivers
for new OS's can be written by just adding an OS Layer that's specific
to the OS, by complying to a "Common Layer Programming Interface" API.

2. The driver takes advantage of multiple processors.

3. The driver has a new firmware image bundled, the new features of which
include Online Capacity Expansion and multi-lun support, among others.
More details about 3ware's 9.2 release can be found here:
http://www.3ware.com/download/Escalade9000Series/9.2/9.2_Release_Notes_Web.pdf

Since the Common Layer is used across OS's, the FreeBSD specific include
path for header files (/sys/dev/twa) is not part of the #include pre-processor
directive in any of the source files. For being able to integrate twa into
the kernel despite this, Makefile.<arch> has been changed to add the include
path to CFLAGS.

Reviewed by: scottl


144888 11-Apr-2005 wpaul

Create new i386 windows/bsd thunking layer, similar to the amd64 thunking
layer, but with a twist.

The twist has to do with the fact that Microsoft supports structured
exception handling in kernel mode. On the i386 arch, exception handling
is implemented by hanging an exception registration list off the
Thread Environment Block (TEB), and the TEB is accessed via the %fs
register. The problem is, we use %fs as a pointer to the pcpu stucture,
which means any driver that tries to write through %fs:0 will overwrite
the curthread pointer and make a serious mess of things.

To get around this, Project Evil now creates a special entry in
the GDT on each processor. When we call into Windows code, a context
switch routine will fix up %fs so it points to our new descriptor,
which in turn points to a fake TEB. When the Windows code returns,
or calls out to an external routine, we swap %fs back again. Currently,
Project Evil makes use of GDT slot 7, which is all 0s by default.
I fully expect someone to jump up and say I can't do that, but I
couldn't find any code that makes use of this entry anywhere. Sadly,
this was the only method I could come up with that worked on both
UP and SMP. (Modifying the LDT works on UP, but becomes incredibly
complicated on SMP.) If necessary, the context switching stuff can
be yanked out while preserving the convention calling wrappers.

(Fortunately, it looks like Microsoft uses some special epilog/prolog
code on amd64 to implement exception handling, so the same nastiness
won't be necessary on that arch.)

The advantages are:

- Any driver that uses %fs as though it were a TEB pointer won't
clobber pcpu.
- All the __stdcall/__fastcall/__regparm stuff that's specific to
gcc goes away.

Also, while I'm here, switch NdisGetSystemUpTime() back to using
nanouptime() again. It turns out nanouptime() is way more accurate
than just using ticks(). On slower machines, the Atheros drivers
I tested seem to take a long time to associate due to the loss
in accuracy.


144646 05-Apr-2005 scottl

Connect the atapicam module to the build.


144645 05-Apr-2005 scottl

Add a Makefile for atapi-cam.


144630 04-Apr-2005 njl

Add support for _PDC/_OSC by advertising that we support direct access to
the PERF_CTL/STS MSRs via the new acpi_get_features() method. This should
allow newer systems to use SpeedStep.


144497 01-Apr-2005 imp

Don't build arcmsr on pc98. The card either won't fit/work in the
pc98 machines because (a) it is PCIe or PCI-X (b) there's a BIOS that
must run at boot which assumes IBM-AT compatible boot environment.

Noticed by: scottl


144423 31-Mar-2005 scottl

Glue the arcmsr driver into the tree.


144412 31-Mar-2005 njl

Additions to .PATH are cumulative so referencing $.PATH is not helpful.

Informed by: ru


144411 31-Mar-2005 scottl

Add the Areca SATA RAID driver (arcmsr). This supports the ARC-11xx and 12xx
series of controllers. Areca provides a CLI and HTTP management tool for
FreeBSD/i386 and FreeBSD/amd64 on their website. Many thanks to Areca for
their support of FreeBSD. Thanks also to Mike Tansca and Sentex Communications
for donating hardware.

Obtained from: Erich Chen <erich at areca com tw>


144330 30-Mar-2005 sos

This is the much rumoured ATA mkIII update that I've been working on.

o ATA is now fully newbus'd and split into modules.
This means that on a modern system you just load "atapci and ata"
to get the base support, and then one or more of the device
subdrivers "atadisk atapicd atapifd atapist ataraid".
All can be loaded/unloaded anytime, but for obvious reasons you
dont want to unload atadisk when you have mounted filesystems.

o The device identify part of the probe has been rewritten to fix
the problems with odd devices the old had, and to try to remove
so of the long delays some HW could provoke. Also probing is done
without the need for interrupts, making earlier probing possible.

o SATA devices can be hot inserted/removed and devices will be created/
removed in /dev accordingly.
NOTE: only supported on controllers that has this feature:
Promise and Silicon Image for now.
On other controllers the usual atacontrol detach/attach dance is
still needed.

o Support for "atomic" composite ATA requests used for RAID.

o ATA RAID support has been rewritten and and now supports these
metadata formats:
"Adaptec HostRAID"
"Highpoint V2 RocketRAID"
"Highpoint V3 RocketRAID"
"Intel MatrixRAID"
"Integrated Technology Express"
"LSILogic V2 MegaRAID"
"LSILogic V3 MegaRAID"
"Promise FastTrak"
"Silicon Image Medley"
"FreeBSD PseudoRAID"

o Update the ioctl API to match new RAID levels etc.

o Update atacontrol to know about the new RAID levels etc
NOTE: you need to recompile atacontrol with the new sys/ata.h,
make world will take care of that.
NOTE2: that rebuild is done differently from the old system as
the rebuild is now done piggybacked on read requests to the
array, so atacontrol simply starts a background "dd" to rebuild
the array.

o The reinit code has been worked over to be much more robust.

o The timeout code has been overhauled for races.

o Support of new chipsets.

o Lots of fixes for bugs found while doing the modulerization and
reviewing the old code.

Missing or changed features from current ATA:

o atapi-cd no longer has support for ATAPI changers. Todays its
much cheaper and alot faster to copy those CD images to disk
and serve them from there. Besides they dont seem to be made
anymore, maybe for that exact reason.

o ATA RAID can only read metadata from all the above metadata formats,
not write all of them (Promise and Highpoint V2 so far). This means
that arrays can be picked up from the BIOS, but they cannot be
created from FreeBSD. There is more to it than just the missing
write metadata support, those formats are not unique to a given
controller like Promise and Highpoint formats, instead they exist
for several types, and even worse, some controllers can have
different formats and its impossible to tell which one.
The outcome is that we cannot reliably create the metadata of those
formats and be sure the controller BIOS will understand it.
However write support is needed to update/fail/rebuild the arrays
properly so it sits fairly high on the TODO list.

o So far atapicam is not supported with these changes. When/if this
will change is up to the maintainer of atapi-cam so go there for
questions.

HW donated by: Webveveriet AS
HW donated by: Frode Nordahl
HW donated by: Yahoo!
HW donated by: Sentex
Patience by: Vife and my boys (and even the cats)


144214 28-Mar-2005 jeff

- Fix the hpfs build, hpfs_hash.c was removed from the repository.


144199 28-Mar-2005 njl

Fix module build on amd64. There may be a cleaner way to do the .PATH


144195 27-Mar-2005 njl

Hook powernow up to the build for i386 and amd64.


144031 23-Mar-2005 cognet

Unbreak buildworld on i386 when MODULES_WITH_WORLD is defined.


143985 22-Mar-2005 sobomax

Add USB Communication Device Class Ethernet driver. Originally written for
FreeBSD based on aue(4) it was picked by OpenBSD, then from OpenBSD ported
to NetBSD and finally NetBSD version merged with original one goes into
FreeBSD.

Obtained from: http://www.gank.org/freebsd/cdce/
NetBSD
OpenBSD


143794 18-Mar-2005 philip

Add acpi_fujitsu for handling acpi-controlled buttons on Fujitsu laptops.

Submitted by: Anish Mistry <mistry.7 -at- osu.edu>
Reviewed by: njl
X-MFC after: 5.4-RELEASE


143760 17-Mar-2005 imp

eisa attachment is safe to be in this module, both on eisa and
non-eisa configured kernels.


143594 14-Mar-2005 des

Add PSEUDOFS_TRACE option.


143578 14-Mar-2005 phk

Use vfs_hash() instead of home-rolled


143563 14-Mar-2005 phk

Remove ufs_ihash.c here as well.


143459 12-Mar-2005 nyan

Don't build the nve on pc98.


143451 12-Mar-2005 obrien

Due to a CVS misfire, I ended up committing the wrong version of this.


143442 12-Mar-2005 obrien

FreeBSD consumer bits of the nForce MCP NIC binary blob.

Demanded by: DES
Encouraged by: scottl
Obtained from: q@onthenet.com.au (partially)
KNF'ed by: obrien


143426 11-Mar-2005 sam

reorder ath_rate_onoe to after ath_rate_sample so it gets used as the
default rate control algorithm; this should be done differently but for
now use this simple solution


143423 11-Mar-2005 ume

just use crypto/rijndael, and nuke opencrypto/rindael.[ch].
the two became almost identical since latest KAME merge.

Discussed with: sam


143392 11-Mar-2005 sam

SampleRate rate control algorithm for the ath driver

Submitted by: John Bicket


143325 09-Mar-2005 sam

connect wlan_acl to the build

Submitted by: Alexey Zelkin


142988 02-Mar-2005 scottl

Move all of the hptmv files to /sys/dev/hptmv so that they won't be mistaken
for being on a CVS vendor branch. The files were moved via a repo-copy.


142445 25-Feb-2005 harti

The chip specific functions have been split out in their own
C files to simplify adding of new PHY chips.
Include the split out .c files in the module build too.


142435 25-Feb-2005 yongari

Add missing ofw_bus_if.h to SRCS.

Submitted by: joerg


142399 24-Feb-2005 wpaul

- Correct one aspect of the driver_object/device_object/IRP framework:
when we create a PDO, the driver_object associated with it is that
of the parent driver, not the driver we're trying to attach. For
example, if we attach a PCI device, the PDO we pass to the NdisAddDevice()
function should contain a pointer to fake_pci_driver, not to the NDIS
driver itself. For PCI or PCMCIA devices this doesn't matter because
the child never needs to talk to the parent bus driver, but for USB,
the child needs to be able to send IRPs to the parent USB bus driver, and
for that to work the parent USB bus driver has to be hung off the PDO.

This involves modifying windrv_lookup() so that we can search for
bus drivers by name, if necessary. Our fake bus drivers attach themselves
as "PCI Bus," "PCCARD Bus" and "USB Bus," so we can search for them
using those names.

The individual attachment stubs now create and attach PDOs to the
parent bus drivers instead of hanging them off the NDIS driver's
object, and in if_ndis.c, we now search for the correct driver
object depending on the bus type, and use that to find the correct PDO.

With this fix, I can get my sample USB ethernet driver to deliver
an IRP to my fake parent USB bus driver's dispatch routines.

- Add stub modules for USB support: subr_usbd.c, usbd_var.h and
if_ndis_usb.c. The subr_usbd.c module is hooked up the build
but currently doesn't do very much. It provides the stub USB
parent driver object and a dispatch routine for
IRM_MJ_INTERNAL_DEVICE_CONTROL. The only exported function at
the moment is USBD_GetUSBDIVersion(). The if_ndis_usb.c stub
compiles, but is not hooked up to the build yet. I'm putting
these here so I can keep them under source code control as I
flesh them out.


142397 24-Feb-2005 njl

Move acpi_perf and acpi_throttle into acpi.ko. Remove the acpi_perf
build structure.


142310 23-Feb-2005 njl

Hook p4tcc up to the module build.


142141 20-Feb-2005 njl

Hook EST up to the build.


141963 16-Feb-2005 wpaul

Add support for Windows/x86-64 binaries to Project Evil.
Ville-Pertti Keinonen (will at exomi dot comohmygodnospampleasekthx)
deserves a big thanks for submitting initial patches to make it
work. I have mangled his contributions appropriately.

The main gotcha with Windows/x86-64 is that Microsoft uses a different
calling convention than everyone else. The standard ABI requires using
6 registers for argument passing, with other arguments on the stack.
Microsoft uses only 4 registers, and requires the caller to leave room
on the stack for the register arguments incase the callee needs to
spill them. Unlike x86, where Microsoft uses a mix of _cdecl, _stdcall
and _fastcall, all routines on Windows/x86-64 uses the same convention.
This unfortunately means that all the functions we export to the
driver require an intermediate translation wrapper. Similarly, we have
to wrap all calls back into the driver binary itself.

The original patches provided macros to wrap every single routine at
compile time, providing a secondary jump table with a customized
wrapper for each exported routine. I decided to use a different approach:
the call wrapper for each function is created from a template at
runtime, and the routine to jump to is patched into the wrapper as
it is created. The subr_pe module has been modified to patch in the
wrapped function instead of the original. (On x86, the wrapping
routine is a no-op.)

There are some minor API differences that had to be accounted for:

- KeAcquireSpinLock() is a real function on amd64, not a macro wrapper
around KfAcquireSpinLock()
- NdisFreeBuffer() is actually IoFreeMdl(). I had to change the whole
NDIS_BUFFER API a bit to accomodate this.

Bugs fixed along the way:
- IoAllocateMdl() always returned NULL
- kern_windrv.c:windrv_unload() wasn't releasing private driver object
extensions correctly (found thanks to memguard)

This has only been tested with the driver for the Broadcom 802.11g
chipset, which was the only Windows/x86-64 driver I could find.


141746 12-Feb-2005 ru

Connect ng_source(4) to the build.


141726 12-Feb-2005 ru

Connect ng_atmllc(4) to the build.


141725 12-Feb-2005 ru

Don't export symbols, all netgraph modules appear to have
proper module dependencies.

While here, removed stray -Wall from CFLAGS.


141724 12-Feb-2005 ru

Bitrot: the ethernet parse type is long standard.


141586 09-Feb-2005 imp

Break out obscure ISA cards into their own files, as well as ne2000
and wd80x3 support. Make the obscure ISA cards optional, and add
those options to NOTES on i386 (note: the ifdef around the whole code
is for module building). Tweak pc98 ed support to include wd80x3 too.
Add goo for alpha too.

The affected cards are the 3Com 3C503, HP LAN+ and SIC (whatever that
is). I couldn't find any of these for sale on ebay, so they are
untested. If you have one of these cards, and send it to me, I'll
ensure that you have no future problems with it...

Minor cleanups as well by using functions rather than cut and paste
code for some probing operations (where the function call overhead is
lost in the noise).

Remove use of kvtop, since they aren't required anymore. This driver
needs to get its memory mapped act together, however, and use bus
space. It doesn't right now.

This reduces the size of if_ed.ko from about 51k to 33k on my laptop.


141568 09-Feb-2005 ru

Use CFLAGS+=.


141562 09-Feb-2005 obrien

Fix the standalone module build.


141524 08-Feb-2005 wpaul

Next step on the road to IRPs: create and use an imitation of the
Windows DRIVER_OBJECT and DEVICE_OBJECT mechanism so that we can
simulate driver stacking.

In Windows, each loaded driver image is attached to a DRIVER_OBJECT
structure. Windows uses the registry to match up a given vendor/device
ID combination with a corresponding DRIVER_OBJECT. When a driver image
is first loaded, its DriverEntry() routine is invoked, which sets up
the AddDevice() function pointer in the DRIVER_OBJECT and creates
a dispatch table (based on IRP major codes). When a Windows bus driver
detects a new device, it creates a Physical Device Object (PDO) for
it. This is a DEVICE_OBJECT structure, with semantics analagous to
that of a device_t in FreeBSD. The Windows PNP manager will invoke
the driver's AddDevice() function and pass it pointers to the DRIVER_OBJECT
and the PDO.

The AddDevice() function then creates a new DRIVER_OBJECT structure of
its own. This is known as the Functional Device Object (FDO) and
corresponds roughly to a private softc instance. The driver uses
IoAttachDeviceToDeviceStack() to add this device object to the
driver stack for this PDO. Subsequent drivers (called filter drivers
in Windows-speak) can be loaded which add themselves to the stack.
When someone issues an IRP to a device, it travel along the stack
passing through several possible filter drivers until it reaches
the functional driver (which actually knows how to talk to the hardware)
at which point it will be completed. This is how Windows achieves
driver layering.

Project Evil now simulates most of this. if_ndis now has a modevent
handler which will use MOD_LOAD and MOD_UNLOAD events to drive the
creation and destruction of DRIVER_OBJECTs. (The load event also
does the relocation/dynalinking of the image.) We don't have a registry,
so the DRIVER_OBJECTS are stored in a linked list for now. Eventually,
the list entry will contain the vendor/device ID list extracted from
the .INF file. When ndis_probe() is called and detectes a supported
device, it will create a PDO for the device instance and attach it
to the DRIVER_OBJECT just as in Windows. ndis_attach() will then call
our NdisAddDevice() handler to create the FDO. The NDIS miniport block
is now a device extension hung off the FDO, just as it is in Windows.
The miniport characteristics table is now an extension hung off the
DRIVER_OBJECT as well (the characteristics are the same for all devices
handled by a given driver, so they don't need to be per-instance.)
We also do an IoAttachDeviceToDeviceStack() to put the FDO on the
stack for the PDO. There are a couple of fake bus drivers created
for the PCI and pccard buses. Eventually, there will be one for USB,
which will actually accept USB IRP.s

Things should still work just as before, only now we do things in
the proper order and maintain the correct framework to support passing
IRPs between drivers.

Various changes:

- corrected the comments about IRQL handling in subr_hal.c to more
accurately reflect reality
- update ndiscvt to make the drv_data symbol in ndis_driver_data.h a
global so that if_ndis_pci.o and/or if_ndis_pccard.o can see it.
- Obtain the softc pointer from the miniport block by referencing
the PDO rather than a private pointer of our own (nmb_ifp is no
longer used)
- implement IoAttachDeviceToDeviceStack(), IoDetachDevice(),
IoGetAttachedDevice(), IoAllocateDriverObjectExtension(),
IoGetDriverObjectExtension(), IoCreateDevice(), IoDeleteDevice(),
IoAllocateIrp(), IoReuseIrp(), IoMakeAssociatedIrp(), IoFreeIrp(),
IoInitializeIrp()
- fix a few mistakes in the driver_object and device_object definitions
- add a new module, kern_windrv.c, to handle the driver registration
and relocation/dynalinkign duties (which don't really belong in
kern_ndis.c).
- made ndis_block and ndis_chars in the ndis_softc stucture pointers
and modified all references to it
- fixed NdisMRegisterMiniport() and NdisInitializeWrapper() so they
work correctly with the new driver_object mechanism
- changed ndis_attach() to call NdisAddDevice() instead of ndis_load_driver()
(which is now deprecated)
- used ExAllocatePoolWithTag()/ExFreePool() in lookaside list routines
instead of kludged up alloc/free routines
- added kern_windrv.c to sys/modules/ndis/Makefile and files.i386.


141418 06-Feb-2005 njl

Hook acpi_throttle(4) up to the build. It's currently part of acpi_perf.ko
although this may change.


141352 05-Feb-2005 glebius

Add ng_ipfw to kernel module build.


141339 05-Feb-2005 scottl

Only compile the cpufreq driver on i386 and amd64.


141243 04-Feb-2005 njl

Hook up the cpufreq framework, acpi_perf(4), and cpufreq(4) drivers.


141219 03-Feb-2005 mdodd

- Split out PCI support.
- Add previously removed ISA support.

Submitted by: David S. Madole <david AT madole.net>


141212 03-Feb-2005 ru

Connect ng_device(4) to the build.


141178 03-Feb-2005 ru

Fix alignment in the last commit.


141167 03-Feb-2005 grehan

Don't build syscons, uart or vpo on PPC.


141065 30-Jan-2005 ru

Build "digi" on i386, pc98, and amd64 only.


140997 29-Jan-2005 sobomax

Remove local hack which cowardly slipped into previous commit.

MFC after: 2 weeks


140992 29-Jan-2005 sobomax

o Split out kernel part of execve(2) syscall into two parts: one that
copies arguments into the kernel space and one that operates
completely in the kernel space;

o use kernel-only version of execve(2) to kill another stackgap in
linuxlator/i386.

Obtained from: DragonFlyBSD (partially)
MFC after: 2 weeks


140900 27-Jan-2005 ru

"pst" is not 64-bit clean for reasons specified in sys/amd64/conf/NOTES.


140897 27-Jan-2005 ru

Comment out "lnc" on amd64 for reasons specified in sys/amd64/conf/NOTES.


140884 27-Jan-2005 imp

ar and sr (and their netgraph cousins) don't appear to be 64-bit clean, so
disable them on all but i386.


140881 27-Jan-2005 imp

The ar driver appears to do naughty things with pointers and integers
and so appears to not be 64-bit clean. disable it on ia64 for the moment.


140880 27-Jan-2005 imp

pcic is gone


140875 26-Jan-2005 imp

Add cs module. It has built in my tree for ages, and it just never
made it into FreeBSD's tree.


140874 26-Jan-2005 imp

The tinderbox seems to have a different set of compiler options
enabled than my box, so the agp module gets different warnings than I
got when I built. WERROR= to compensate.


140867 26-Jan-2005 imp

Add WERRROR= to work around the warnings


140502 20-Jan-2005 wes

Provide a WITHOUT_MODULES variable that specifies a list of modules
to elide. This is a somewhat more convenient way of specifying in
e.g. make.conf a list of modules you know you will never need.

PR: kern/76225
Submitted by: David Yeske <dyeske@yahoo.com>
MFC after: 2 weeks


140399 18-Jan-2005 sam

Fix building for non-i386 platforms.

Submitted by: Coleman Kane


140075 11-Jan-2005 pjd

Connect SHSEC GEOM class to the build.


140074 11-Jan-2005 pjd

Introduce a new GEOM class - SHSEC. It provides sharing secret between
the given providers. Without even one of the configured components there
should be no way to get the secret.

Supported by: WHEEL Sp. z o.o.
http://www.wheel.pl


139607 03-Jan-2005 njl

Back out previous commits. Installing new share/mk fixes this.


139604 03-Jan-2005 njl

NO_MAN is now NOMAN.


139603 03-Jan-2005 njl

Fix kernel modules build. For some reason, this module now bails out with
an error that there is no aicasm.1 man page.


139484 31-Dec-2004 jhb

Add usbdevs_data.h to the SRCS list since usb_subr.c needs it. This forces
old usbdevs_data.h files to be updated as well as fixing the standalone
usb module build.


139435 30-Dec-2004 rwatson

mac_portacl.c no longer references vnode_if.h.


139417 29-Dec-2004 obrien

Remove vnode_if.h for rev 1.14.


139399 29-Dec-2004 imp

We don't need to generate vnode_if.h anymore


139398 29-Dec-2004 imp

No need to generate vnode_if.h anymore


139365 28-Dec-2004 rik

Add FR support to sppp (MFCronyx).

Silence on: net@, current@, hackers@.
No objections: joerg

Requested by: by many (mostly Cronyx) users for a long long time.
MFC after: 10 days

PR: kern/21771, kern/66348


139283 25-Dec-2004 scottl

Don't define PFIL_HOOKS. It's no longer required in RELENG_5 or HEAD.


139115 21-Dec-2004 ru

NOINET6 -> NO_INET6


139113 21-Dec-2004 ru

NOCRYPT -> NO_CRYPT


139103 21-Dec-2004 ru

Start the dreaded NOFOO -> NO_FOO conversion.

OK'ed by: core


139042 19-Dec-2004 glebius

We already have ng_fec.4 manpage. And sys/modules is not a correct
place for documentation.


138905 16-Dec-2004 sam

fix typo to resolve undefined symbol

Spotted by: Rong-En Fan <grafan at gmail.com>


138874 15-Dec-2004 sam

bring in rijndael crypto code to satisfy dependency: should
break rijndael out into a separate module a la rc4 but several
other cases need to be fixed also so for now do as others do


138778 13-Dec-2004 imp

Make this compile when you don't have /sys.


138775 13-Dec-2004 scottl

Remove the addition of ACPI_DEBUG that was accidentally added in the last
commit.


138774 13-Dec-2004 scottl

Allow the acpi_ibm module to be built with ACPI_DEBUG.


138772 13-Dec-2004 scottl

Make sure that opt_ddb.h exists so that this will compile with ACPI_DEBUG


138755 12-Dec-2004 imp

Separate mse driver into a core driver and a bus attachments. Separate out
the ISA and CBUS (called isa on pc98) attachments. Eliminate all PC98
ifdefs in the process (the driver in pc98/pc98/mse.c was a copy of the one
in i386/isa/mse.c with PC98 ifdefs). Create a module for this driver.

I've tested this my PC-9821RaS40 with moused. I've not tested this on i386
because I have no InPort cards, or similar such things. NEC standardized
on bus mice very early, long before ps/2 mice ports apeared, so all PC-98
machines supported by FreeBSD/pc98 have bus mice, I believe.

Reviewed by: nyan-san


138632 09-Dec-2004 takawata

Connect acpi_ibm to build.

Submitted by: rushani, sumikawa


138627 09-Dec-2004 takawata

Add IBM Laptop extra device driver.
This depends on ACPI and RTC registers.

Reviewed by: njl


138573 08-Dec-2004 sam

Update/new modules for net80211 and ath changes.


138364 03-Dec-2004 brooks

kmod.mk knows how to create empty opt_*.h files so let it deal with the
NOINET6 case.

Reported by: ru


138119 26-Nov-2004 brooks

Allow the gif module to be built without IPv6 support when NOINET6 is
defined.

Submitted by: mitrohin a.s. <swp at uni-altai dot ru>


137950 20-Nov-2004 marcel

Stop building uart_dev_i8251.c. It was copied from uart_dev_ns8250.c
without ever being changed to actually work with an i8251. Nobody is
working on this either at the moment, so it's not about to change
soon.
When the code necessary to support the i8251 is committed, this can
be reverted again.


137947 20-Nov-2004 marcel

o Remove opt_ddb.h from SRCS.
o Add opt_gdb.h and opt_kdb.h to SRCS.


137843 18-Nov-2004 imp

this should have been deleted a while ago


137819 17-Nov-2004 marius

o sparc64/isa/isa.c:
- The claim in the commit log of rev. 1.11 of dev/uart/uart_cpu_sparc64.c
etc. that UARTs are the only relevant ISA devices on sparc64 turned out
to be false. While there are sparc64 models where UARTs are the only
devices on the ISA bus there are in fact also low-cost models where all
devices traditionally found on the EBus are hooked up to the ISA bus.
There are also models that use a mix between EBus and ISA devices with
things like an AT keyboard controller and other rather interesting
devices that we might want to support in the futute hook up to the ISA
bus.
In order to not need to add sparc64 specific device_identify methods to
all of the respective ISA drivers and also not add OFW specific code to
the common ISA code make the sparc64 ISA bus code fake up PnP devices so
most ISA drivers probe their devices without further changes.
Unfortunately Sun doesn't adhere to the ISA bindings defined in IEEE
1275-1994 for the properties of most of the ISA devices which would
allow to obtain the vendor and logical IDs from their properties. So we
we just use a simple table which maps the name properties to PnP IDs.
This could be done in a more sophisticated way but I courrently don't
see the need for this. [1]
- Add the children with fully mapped and specified resources (in the OFW
sense) similar to what is done in the EBus code for the IRQ resources
of the children as adjusting the resources and the resource list entries
respectively in isa_alloc_resource() as done perviously causes trouble
with drivers which use rman_get_start(), pass-through or allocate and
release resources multiple times, etc.
Adjusting the resources might be better off in a bus_activate_resource
method but the common ISA code currently doesn't allow for an
isa_activate_resource(). [2]
With this change:
- ppbus(4) and lpt(4) attach and work (modulo ECP mode, which requires
real ISADMA code but it currently only consists of stubs on sparc64).
- atkbdc(4) and atkbdc(4) attach, no further testing done.
- fdc(4) itself attaches but causes a hang while attaching fd0 also
when is DMA disabled, further work in fdc(4) is required here as e.g.
fd0 uses the address of fd1 on sparc64 (not sure if sparc64 supports
more than one floppy drive at all).
All of these drivers previously caused panics in the sparc64 ISA code.
- Minor changes, e.g. use __FBSDID, remove a dupe word in a comment and
declare one global variable which isn't used outside of isa.c static.
o dev/uart/uart_cpu_sparc64.c and modules/uart/Makefile:
- Remove the code for registering the UARTs on the ISA bus from the
sparc64 uart_cpu_identify() again and rely on probing them via PnP.

Original idea by: tmm [1]
No objections by: tmm [1], [2]


137777 16-Nov-2004 emax

Add vkdb(4) man page and connect vkbd(4) to the build.


137776 16-Nov-2004 emax

Add virtual AT keyboard driver vkbd(4).
Not yet connected to the build.


137741 15-Nov-2004 imp

Put _ray back, as appropriate.


137732 15-Nov-2004 nyan

PC98 does not have ACPI.


137715 15-Nov-2004 imp

After discussions with Nate, repo copy the acpi assist drivers from
i386 to dev/acpi_support. In theory, these devices could be found
other than in i386 machines only as amd64 becomes more popular. These
drivers don't appear to do anything i386 specific, so move them to
dev/acpi_support. Move config lines to files so that those
architectures that don't support kernel modules can build them into
the kernel. At the same time, rename acpi_snc to acpi_sony to follow
the lead of all the other specialty devices.


137713 15-Nov-2004 imp

Add comment about why amd64 and ia64 don't build acpi modules.


137702 14-Nov-2004 scottl

Make it clear that the acpi modules can only be compiled on i386.


137593 11-Nov-2004 imp

Commit takawata-san's Sony Notebook Controller driver, integrated into
the tree. Small tweaks were made by myself to eliminate unnecessary
includes and some other minor issues. Last time I asked takawata-san
about this driver, he suggested I commit it.

Submitted by: takawata


137545 10-Nov-2004 markm

Remove at request of author, perhaps to be re-added later.


137532 10-Nov-2004 trhodes

Fix paths after repocopies done by scottl

Reviewed by: marius
OK'ed by: scottl


137400 08-Nov-2004 phk

Remove the obsolete gx driver.

All the hardware is supported by the better maintained if_em driver.

Absentmindedly nodded vertical by: people on #that_channel


137204 04-Nov-2004 phk

Remove another vinum file


136953 25-Oct-2004 andre

IPDIVERT is a module now and tell the other parts of the kernel about it.
IPDIVERT depends on IPFIREWALL being loaded or compiled into the kernel.


136944 25-Oct-2004 yongari

Device driver for onboard CS4231 audio controller which is found
on UltraSPARC workstations. The driver is based on OpenBSD's SBus
cs4231 driver and heavily modified to incorporate into sound(4)
infrastructure. Due to the lack of APCDMA documentation, the DMA
code of SBus cs4231 came from OpenBSD's driver.
The driver runs without Giant lock and supports both SBus and EBus
based CS4231 audio controller. Special thanks to marius for providing
feedbacks during the driver writing. His feedback made it possible
to write hiccup free playback code under high system loads.

Approved by: jake (mentor)
Reviewed by: marius (initial version)
Tested by: marius, kwm, Julian C. Dunn(jdunn AT opentrend DOT net)


136910 24-Oct-2004 ru

For variables that are only checked with defined(), don't provide
any fake value.


136858 24-Oct-2004 scottl

Hook the hptmv driver up to the build.


136856 24-Oct-2004 scottl

Clean up some messy Makefile stuff so that this can be built into the
kernel.


136854 24-Oct-2004 ru

Curlies only work in target and sources specifications, but
not when passed to Bourne shell. This unbreaks "make clean".


136851 24-Oct-2004 ru

Sort SUBDIR.


136849 24-Oct-2004 scottl

Import the HighPoint RocketRAID 182x driver. Thanks to HighPoint for
providing the original driver, and thanks to IronSystems for providing
hardware for testing.


136714 19-Oct-2004 andre

Convert IPDIVERT into a loadable module. This makes use of the dynamic loadability
of protocols. The call to divert_packet() is done through a function pointer. All
semantics of IPDIVERT remain intact. If IPDIVERT is not loaded ipfw will refuse to
install divert rules and natd will complain about 'protocol not supported'. Once
it is loaded both will work and accept rules and open the divert socket. The module
can only be unloaded if no divert sockets are open. It does not close any divert
sockets when an unload is requested but will return EBUSY instead.


136673 18-Oct-2004 glebius

Major overhaul.

List of functional changes:
- Make a single device per single node with a single hook.
This gives us parrallelizm, which can't be achieved on a single
node with many devices/hooks. This also gives us flexibility - we
can play with a particular device node, not affecting others.
- Remove read queue as it is. Use struct ifqueue instead. This change
removes a lot of extra memcpy()ing, m_devget()ting and m_copymem()ming.
In ng_device_receivedata() we enqueue an mbuf and wake readers.
In ngdread() we take one mbuf from qeueue and uiomove() it to
userspace. If no mbuf is present we optionally block. [1]
- In ngdwrite() we create an mbuf from uio using m_uiotombuf().
This is faster then uiomove() into buffer, and then m_copydata(),
and this is much better than huge m_pullup().
- Perform locking of device
- Perform locking of connection list.
- Clear out _rcvmsg method, since it does nothing good yet.
- Implement NGM_DEVICE_GET_DEVNAME message.
- #if 0 ioctl method, while nothing is done here yet.
- Return immediately from ngdwrite() if uio_resid == 0.

List of tidyness changes:
- Introduce device2priv(), to remove cut'n'paste.
- Use MALLOC/FREE, instead of malloc/free.
- Use unit2minor().
- Use UID_ROOT/GID_WHEEL instead of 0/0.
- Define NGD_DEVICE_DEVNAME, use it.
- Use more nice macros for debugging. [2]
- Return Exxx, not -1.

style(9) changes:
- No "#endif" after short block.
- Break long lines.
- Remove extra spaces, add needed spaces.

[1] Obtained from: if_tun.c
[2] Obtained from: ng_pppoe.c
Reviewed by: marks
Approved by: julian (mentor)
MFC after: 1 month


136468 13-Oct-2004 simokawa

Add dcons_os.{c,h}.


136301 09-Oct-2004 yongari

Port NetBSD auxio driver. The driver was modified to use led(4) and can
be used to announce various system activity.
The auxio device provides auxiliary I/O functions and is found on various
SBus/EBus UltraSPARC models. At present, only front panel LED is
controlled by this driver.

Approved by: jake (mentor)
Reviewed by: joerg
Tested by: joerg


135870 28-Sep-2004 markm

Add the memrange bits to the loadable module.

MT5 after: 3 days


135611 23-Sep-2004 phk

Per recent HEADSUP: Disconnect (old)vinum from the kernel build.

Users should move to the new geom_vinum implementation instead.

The refcount logic which is being added to devices to enable safe module
unloading and the buf/vm work also in progress would require a major rework
of the (old)-vinum code to comply with the new semantics.

The actual source files will not be removed until I have coordinated with
the geomvinum people if they need any bits repo-copied etc.


135335 16-Sep-2004 glebius

Attach ng_netflow to kernel build.

Approved by: julian (mentor)


135048 10-Sep-2004 wpaul

Add device driver support for the VIA Networking Technologies
VT6122 gigabit ethernet chip and integrated 10/100/1000 copper PHY.
The vge driver has been added to GENERIC for i386, pc98 and amd64,
but not to sparc or ia64 since I don't have the ability to test
it there. The vge(4) driver supports VLANs, checksum offload and
jumbo frames.

Also added the lge(4) and nge(4) drivers to GENERIC for i386 and
pc98 since I was in the neighborhood. There's no reason to leave them
out anymore.


134958 08-Sep-2004 fjoe

Do not compile in zlib.c. Add a dependency on module instead.


134940 08-Sep-2004 alfred

sync with private code:

fix a 5.x'ism that 4.x needs protection from.
make this code compile standalone.


134804 05-Sep-2004 des

Device driver for the Cypress CY7C637xx and CY7C640/1xx families of USB
to RS232 bridges, such as the one found in the DeLorme Earthmate USB GPS
receiver (which is the only device currently supported by this driver).

While other USB to serial drivers in the tree rely heavily on ucom, this
one is self-contained. The reason for that is that ucom assumes that
the bridge uses bulk pipes for I/O, while the Cypress parts actually
register as human interface devices and use HID reports for configuration
and I/O.

The driver is not entirely complete: there is no support yet for flow
control, and output doesn't seem to work, though I don't know if that is
because of a bug in the code, or simply because the Earthmate is a read-
only device.


134748 04-Sep-2004 ru

Let kmod.mk touch opt_*.h files as needed.

Inspired by: imp's email


134745 04-Sep-2004 imp

Sort files alphabetically


134657 02-Sep-2004 alfred

Hook autofs to the build.


134595 01-Sep-2004 alfred

Cleanup paths.

Submitted by: ru


134594 01-Sep-2004 ru

Removed -Wall from CFLAGS.


134593 01-Sep-2004 ru

Mechanically tidy up the contents of CLEANFILES:M*.h: kmod.mk
automatically removes opt_*.h and if_*.h found in SRCS.


134592 01-Sep-2004 ru

bsd.kmod.mk knows how to clean up opt_*.h files automatically,
and has the necessary magic to create empty opt_*.h files.


134585 01-Sep-2004 brooks

General modernization of coda:
- Ditch NVCODA
- Don't use a static major
- Don't declare functions extern

Reviewed by: peter


134577 31-Aug-2004 alfred

Wrong makefile in the wrong place.

Pointed out by: scottl


134574 31-Aug-2004 scottl

Make coda5 compile.


134573 31-Aug-2004 ru

Fixed the module build.


134508 30-Aug-2004 scottl

Enable aac(4) module build for amd64


134507 30-Aug-2004 scottl

Only compile aac_linux.ko for i386


134479 29-Aug-2004 des

Remove the HW_WDOG option; it serves no purpose.

MFC after: 3 days


134477 29-Aug-2004 obrien

Enable more modules on AMD64:
ciss em ext2fs i2c ida iir ips lnc mly safe scsi_low smbfs sppp twa


134476 29-Aug-2004 obrien

Enable sound modules.


134400 27-Aug-2004 andre

opt_pfil_hooks.h is no longer required.


134383 27-Aug-2004 andre

Always compile PFIL_HOOKS into the kernel and remove the associated kernel
compile option. All FreeBSD packet filters now use the PFIL_HOOKS API and
thus it becomes a standard part of the network stack.

If no hooks are connected the entire packet filter hooks section and related
activities are jumped over. This removes any performance impact if no hooks
are active.

Both OpenBSD and DragonFlyBSD have integrated PFIL_HOOKS permanently as well.


134347 26-Aug-2004 ru

Document how a standalone module can be built with divert(4) support.


134346 26-Aug-2004 ru

Revert the last change to sys/modules/ipfw/Makefile and fix a
standalone module build in a better way.

Silence from: andre
MFC after: 3 days


134190 23-Aug-2004 imp

Make this compile again in the standalone and the MODULES_WITH_WORLD
environments. Chances are good that this doesn't produce a good
module, but I leave the proper defaults to the dummy opt_* files to
the author.


134165 22-Aug-2004 nyan

opt_agp.h is not required anymore.


133955 18-Aug-2004 ru

Enable build of Netgraph modules on all architectures.

Tested by: make universe


133954 18-Aug-2004 tjr

Build a dummy opt_compat.h header since linprocfs.c now requires it.


133920 17-Aug-2004 andre

Convert ipfw to use PFIL_HOOKS. This is change is transparent to userland
and preserves the ipfw ABI. The ipfw core packet inspection and filtering
functions have not been changed, only how ipfw is invoked is different.

However there are many changes how ipfw is and its add-on's are handled:

In general ipfw is now called through the PFIL_HOOKS and most associated
magic, that was in ip_input() or ip_output() previously, is now done in
ipfw_check_[in|out]() in the ipfw PFIL handler.

IPDIVERT is entirely handled within the ipfw PFIL handlers. A packet to
be diverted is checked if it is fragmented, if yes, ip_reass() gets in for
reassembly. If not, or all fragments arrived and the packet is complete,
divert_packet is called directly. For 'tee' no reassembly attempt is made
and a copy of the packet is sent to the divert socket unmodified. The
original packet continues its way through ip_input/output().

ipfw 'forward' is done via m_tag's. The ipfw PFIL handlers tag the packet
with the new destination sockaddr_in. A check if the new destination is a
local IP address is made and the m_flags are set appropriately. ip_input()
and ip_output() have some more work to do here. For ip_input() the m_flags
are checked and a packet for us is directly sent to the 'ours' section for
further processing. Destination changes on the input path are only tagged
and the 'srcrt' flag to ip_forward() is set to disable destination checks
and ICMP replies at this stage. The tag is going to be handled on output.
ip_output() again checks for m_flags and the 'ours' tag. If found, the
packet will be dropped back to the IP netisr where it is going to be picked
up by ip_input() again and the directly sent to the 'ours' section. When
only the destination changes, the route's 'dst' is overwritten with the
new destination from the forward m_tag. Then it jumps back at the route
lookup again and skips the firewall check because it has been marked with
M_SKIP_FIREWALL. ipfw 'forward' has to be compiled into the kernel with
'option IPFIREWALL_FORWARD' to enable it.

DUMMYNET is entirely handled within the ipfw PFIL handlers. A packet for
a dummynet pipe or queue is directly sent to dummynet_io(). Dummynet will
then inject it back into ip_input/ip_output() after it has served its time.
Dummynet packets are tagged and will continue from the next rule when they
hit the ipfw PFIL handlers again after re-injection.

BRIDGING and IPFW_ETHER are not changed yet and use ipfw_chk() directly as
they did before. Later this will be changed to dedicated ETHER PFIL_HOOKS.

More detailed changes to the code:

conf/files
Add netinet/ip_fw_pfil.c.

conf/options
Add IPFIREWALL_FORWARD option.

modules/ipfw/Makefile
Add ip_fw_pfil.c.

net/bridge.c
Disable PFIL_HOOKS if ipfw for bridging is active. Bridging ipfw
is still directly invoked to handle layer2 headers and packets would
get a double ipfw when run through PFIL_HOOKS as well.

netinet/ip_divert.c
Removed divert_clone() function. It is no longer used.

netinet/ip_dummynet.[ch]
Neither the route 'ro' nor the destination 'dst' need to be stored
while in dummynet transit. Structure members and associated macros
are removed.

netinet/ip_fastfwd.c
Removed all direct ipfw handling code and replace it with the new
'ipfw forward' handling code.

netinet/ip_fw.h
Removed 'ro' and 'dst' from struct ip_fw_args.

netinet/ip_fw2.c
(Re)moved some global variables and the module handling.

netinet/ip_fw_pfil.c
New file containing the ipfw PFIL handlers and module initialization.

netinet/ip_input.c
Removed all direct ipfw handling code and replace it with the new
'ipfw forward' handling code. ip_forward() does not longer require
the 'next_hop' struct sockaddr_in argument. Disable early checks
if 'srcrt' is set.

netinet/ip_output.c
Removed all direct ipfw handling code and replace it with the new
'ipfw forward' handling code.

netinet/ip_var.h
Add ip_reass() as general function. (Used from ipfw PFIL handlers
for IPDIVERT.)

netinet/raw_ip.c
Directly check if ipfw and dummynet control pointers are active.

netinet/tcp_input.c
Rework the 'ipfw forward' to local code to work with the new way of
forward tags.

netinet/tcp_sack.c
Remove include 'opt_ipfw.h' which is not needed here.

sys/mbuf.h
Remove m_claim_next() macro which was exclusively for ipfw 'forward'
and is no longer needed.

Approved by: re (scottl)


133912 17-Aug-2004 gibbs

Add ISA attachement files for the aic7xxx driver.

Approved by: re
Reminded by: obrien


133911 17-Aug-2004 gibbs

Add an ISA attachement to the aic7xxx driver to handle 284X controllers.
The ISA probe uses an identify routine to probe all slot locations from
1 to 14 that do not conflict with other allocated resources. This required
making aic7770.c part of the driver core when compiled as a module.

aic7xxx.c:
aic79xx.c:
aic_osm_lib.c:
Use aic_scb_timer_start() consistently to start the watchdog timer.
This removes a few places that verbatum copied the code in
aic_scb_timer_start().

During recovery processing, allow commands to still be queued to
the controller. The only requirement we have is that our recovery
command be queued first - something the code already guaranteed.
The only other change required to make this work is to prevent
timers from being started for these newly queued commands.

Approved by: re


133866 16-Aug-2004 nyan

agp_amd64.c is not needed on pc98.


133861 16-Aug-2004 imp

And isa_if.h


133860 16-Aug-2004 imp

Add pccbb_isa.c and pccbb_pci.c


133852 16-Aug-2004 obrien

AMD64 on-CPU GART support.
This also applies to AMD64 HW running 'i386' OS.

Submitted by: Jung-uk Kim <jkim@niksun.com>
Integration by: obrien


133812 16-Aug-2004 pjd

Connect RAID3 GEOM class to the build.


133808 16-Aug-2004 pjd

Introduce GEOM RAID3 class, i.e. kernel module, which implements RAID3
transformation and graid3(8) userland utility, which can be used for
configuration. No manual page yet, sorry.

Hardware provided by: Daniel Seuffert


133735 14-Aug-2004 marius

- Introduce an uart_cpu_identify() which is implemented in uart_cpu_<arch>.c
and that can be used as an identify function for all kinds of busses on a
certain platform. Expect for sparc64 these are only stubs right now. [1]
- For sparc64, add code to its uart_cpu_identify() for registering the on-
board ISA UARTs and their resources based on information obtained from
Open Firmware.
It would be better if this would be done in the OFW ISA code. However, due
to the common FreeBSD ISA code and PNP-IDs not always being present in the
properties of the ISA nodes there seems to be no good way to implement that.
Therefore special casing UARTs as the sole really relevant ISA devices on
sparc64 seemed reasonable. [2]

Approved by: marcel
Discussed with: marcel [1], tmm [2]
Tested by: make universe


133733 14-Aug-2004 marius

Now that hme(4) is MI build its module on all platforms.

Tested by: `make universe` and powerpc cross-build on i386


133720 14-Aug-2004 dwmalone

Get rid of the RANDOM_IP_ID option and make it a sysctl. NetBSD
have already done this, so I have styled the patch on their work:

1) introduce a ip_newid() static inline function that checks
the sysctl and then decides if it should return a sequential
or random IP ID.

2) named the sysctl net.inet.ip.random_id

3) IPv6 flow IDs and fragment IDs are now always random.
Flow IDs and frag IDs are significantly less common in the
IPv6 world (ie. rarely generated per-packet), so there should
be smaller performance concerns.

The sysctl defaults to 0 (sequential IP IDs).

Reviewed by: andre, silby, mlaier, ume
Based on: NetBSD
MFC after: 2 months


133640 13-Aug-2004 fjoe

Add geom_uzip -- geom class that implements read-only compressed disks.
Currently supports cloop V2.0 disk compression format.
May support more formats in future.


133589 12-Aug-2004 marius

- Introduce an ofw_bus kobj-interface for retrieving the OFW node and a
subset ("compatible", "device_type", "model" and "name") of the standard
properties in drivers for devices on Open Firmware supported busses. The
standard properties "reg", "interrupts" und "address" are not covered by
this interface because they are only of interest in the respective bridge
code. There's a remaining standard property "status" which is unclear how
to support properly but which also isn't used in FreeBSD at present.
This ofw_bus kobj-interface allows to replace the various (ebus_get_node(),
ofw_pci_get_node(), etc.) and partially inconsistent (central_get_type()
vs. sbus_get_device_type(), etc.) existing IVAR ones with a common one.
This in turn allows to simplify and remove code-duplication in drivers for
devices that can hang off of more than one OFW supported bus.
- Convert the sparc64 Central, EBus, FHC, PCI and SBus bus drivers and the
drivers for their children to use the ofw_bus kobj-interface. The IVAR-
interfaces of the Central, EBus and FHC are entirely replaced by this. The
PCI bus driver used its own kobj-interface and now also uses the ofw_bus
one. The IVARs special to the SBus, e.g. for retrieving the burst size,
remain.
Beware: this causes an ABI-breakage for modules of drivers which used the
IVAR-interfaces, i.e. esp(4), hme(4), isp(4) and uart(4), which need to be
recompiled.
The style-inconsistencies introduced in some of the bus drivers will be
fixed by tmm@ in a generic clean-up of the respective drivers later (he
requested to add the changes in the "new" style).
- Convert the powerpc MacIO bus driver and the drivers for its children to
use the ofw_bus kobj-interface. This invloves removing the IVARs related
to the "reg" property which were unused and a leftover from the NetBSD
origini of the code. There's no ABI-breakage caused by this because none
of these driver are currently built as modules.
There are other powerpc bus drivers which can be converted to the ofw_bus
kobj-interface, e.g. the PCI bus driver, which should be done together
with converting powerpc to use the OFW PCI code from sparc64.
- Make the SBus and FHC front-end of zs(4) and the sparc64 eeprom(4) take
advantage of the ofw_bus kobj-interface and simplify them a bit.

Reviewed by: grehan, tmm
Approved by: re (scottl)
Discussed with: tmm
Tested with: Sun AX1105, AXe, Ultra 2, Ultra 60; PPC cross-build on i386


133579 12-Aug-2004 harti

Add the module build stuff for the ATM call control module.


133357 09-Aug-2004 jmg

change the name of the md module, to g_md, introduce a define with the
name MD_MODNAME, and make mdconfig use this new define...


133270 07-Aug-2004 le

Due to popular demand, hook up geom_vinum to the build.


133226 06-Aug-2004 des

Move the source code for these two modules out of src/sys/modules.


133129 04-Aug-2004 markm

Fix module builds for i386 and amd64.


133093 03-Aug-2004 njl

Bump WARNS to 2 for all other ACPI drivers and minor cleanup.


133087 03-Aug-2004 markm

Making a loadable null.ko for /dev/(null|zero) proved rather
unpopular, so remove this (mis)feature.

Encouragement provided by: jhb (and others)


133029 02-Aug-2004 obrien

Really back out rev 1.388.


133021 02-Aug-2004 obrien

Don't build and install a mem.ko module.
Currently one cannot load the mem.ko module without panicing if mem is
compiled into the kernel and one cannot build a kernel w/o "device mem"
right now either. Thus it is too dangerous to install mem.ko right now
because if one puts 'mem_load="YES"' in /etc/loader.conf they cannot
boot an "old" kernel (at the time that a kernel doesn't have to be built
with "device mem).


132956 01-Aug-2004 markm

Break out the MI part of the /dev/[k]mem and /dev/io drivers into
their own directory and module, leaving the MD parts in the MD
area (the MD parts _are_ part of the modules). /dev/mem and /dev/io
are now loadable modules, thus taking us one step further towards
a kernel created entirely out of modules. Of course, there is nothing
preventing the kernel from having these statically compiled.


132905 30-Jul-2004 pjd

Connect GEOM_MIRROR class to the build.


132904 30-Jul-2004 pjd

Add GEOM_MIRROR class which provide RAID1 functionality and has many useful
features. The gmirror(8) utility should be used for control of this class.
There is no manual page yet, but I'm working on it with keramida@.

Many useful tests provided by: simon (thank you!)
Some ideas from: scottl, simon, phk


132501 21-Jul-2004 nyan

Add the ACPI Panasonic extras driver.

Submitted by: OGAWA Takaya <t-ogawa@triaez.kaisei.org> and nyan


132260 16-Jul-2004 njl

Fix the alpha (and others) module build by only building fdc_acpi.c on
i386 and amd64. The only other ACPI machine (ia64) doesn't support
floppy drives. Tested by: make MACHINE={pc98,i386,amd64,alpha,sparc64}


132236 16-Jul-2004 tanimura

Rename the sound device drivers:

- `sound'
The generic sound driver, always required.

- `snd_*'
Device-dependent drivers, named after the sound module names.
Configure accordingly to your hardware.

In addition, rename the `snd_pcm' module to `sound' in order to sync
with the driver names.

Suggested by: cg


132218 15-Jul-2004 njl

Add fdc_acpi to module build, bump WARNS to 2.


132091 13-Jul-2004 simokawa

Replace DDB with KDB.


132061 12-Jul-2004 imp

Remove stray line with just a tab
Remove usbdevs_data.h, it isn't used by the module

Noticed by: Pawel Worach


132034 12-Jul-2004 dfr

Add fwip module.


132033 12-Jul-2004 dfr

Add fwip module.

Submitted by: simokawa


131946 10-Jul-2004 marcel

Build uart_dbg.c for remote GDB support.


131850 09-Jul-2004 bms

Document compile-time switches here as I'm going to yank them from
if_de.c.


131840 08-Jul-2004 brian

Change the following environment variables to kernel options:

bootp -> BOOTP
bootp.nfsroot -> BOOTP_NFSROOT
bootp.nfsv3 -> BOOTP_NFSV3
bootp.compat -> BOOTP_COMPAT
bootp.wired_to -> BOOTP_WIRED_TO

- i.e. back out the previous commit. It's already possible to
pxeboot(8) with a GENERIC kernel.

Pointed out by: dwmalone


131819 08-Jul-2004 nyan

- Merged from sys/dev/fdc/fdc.c revision 1.275.
- Break out the cbus front end from fd.c.
- Remove the pccard support because it was broken.


131814 08-Jul-2004 brian

Change the following kernel options to environment variables:

BOOTP -> bootp
BOOTP_NFSROOT -> bootp.nfsroot
BOOTP_NFSV3 -> bootp.nfsv3
BOOTP_COMPAT -> bootp.compat
BOOTP_WIRED_TO -> bootp.wired_to

This lets you PXE boot with a GENERIC kernel by putting this sort of thing
in loader.conf:

bootp="YES"
bootp.nfsroot="YES"
bootp.nfsv3="YES"
bootp.wired_to="bge1"

or even setting the variables manually from the OK prompt.


131768 07-Jul-2004 emax

Make bluetooth compile on all platforms

Reviewed by: imp, ru


131767 07-Jul-2004 imp

Break out the isa and pccard front ends from fdc. This is the first
step in making this driver more attachment neutral. Others plan on
adding acpi front ends.

Still need to cleanup the MI part of the driver because it isn't as
bus independent as it could be.


131523 03-Jul-2004 tjr

By popular request, add a workaround that allows large (>128GB or so)
FAT32 filesystems to be mounted, subject to some fairly serious limitations.

This works by extending the internal pseudo-inode-numbers generated from
the file's starting cluster number to 64-bits, then creating a table
mapping these into arbitrary 32-bit inode numbers, which can fit in
struct dirent's d_fileno and struct vattr's va_fileid fields. The mappings
do not persist across unmounts or reboots, so it's not possible to export
these filesystems through NFS. The mapping table may grow to be rather
large, and may grow large enough to exhaust kernel memory on filesystems
with millions of files.

Don't enable this option unless you understand the consequences.


131476 02-Jul-2004 pjd

Introduce GEOM_LABEL class.
This class is used for detecting volume labels on file systems:
UFS, MSDOSFS (FAT12, FAT16, FAT32) and ISO9660.
It also provide native labelization (there is no need for file system).

g_label_ufs.c is based on geom_vol_ffs from Gordon Tetlow.
g_label_msdos.c and g_label_iso9660.c are probably hacks, I just found
where volume labels are stored and I use those offsets here,
but with this class it should be easy to do it as it should be done by
someone who know how.
Implementing volume labels detection for other file systems also should
be trivial.

New providers are created in those directories:
/dev/ufs/ (UFS1, UFS2)
/dev/msdosfs/ (FAT12, FAT16, FAT32)
/dev/iso9660/ (ISO9660)
/dev/label/ (native labels, configured with glabel(8))

Manual page cleanups and some comments inside were submitted by
Simon L. Nielsen, who was, as always, very helpful. Thanks!


131388 01-Jul-2004 marks

Set WARNS=2 for the module build of ACPI.

Approved by: njl


131328 30-Jun-2004 nyan

The ahb module is not needed for pc98.


131314 30-Jun-2004 njl

Add glue for building acpi_quirk.c


131292 29-Jun-2004 imp

Add ahb module for i386 and alpha (the onlt two platforms that have eisa
bus)


131290 29-Jun-2004 imp

Add the ahb module for old Adaptec 1742 drivers now that eisa bus
interface is cleaner.


131279 29-Jun-2004 njl

Add acpi_if.h dependencies to module build.


131250 28-Jun-2004 imp

Build usbdevs.h


131186 27-Jun-2004 imp

Add usbdevs.h and pccarddevs.h to the build list, as appropriate. This is needed to build as part of world or in src/sys/modules.


131108 25-Jun-2004 julian

Convert Netgraph to use mbuf tags to pass its meta information around.
Thanks to Sam for importing tags in a way that allowed this to be done.

Submitted by: Gleb Smirnoff <glebius@cell.sick.ru>
Also allow the sr and ar drivers to create netgraph versions of their modules.
Document the change to the ksocket node.


130977 23-Jun-2004 rik

Clean CLEANFILES.


130948 22-Jun-2004 obrien

Enable 'vinum' on AMD64.


130799 20-Jun-2004 markm

Give zlib the ability to be a module that can be depended on,
in the MODULE_DEPEND() sense.


130613 16-Jun-2004 mlaier

Commit pf version 3.5 and link additional files to the kernel build.

Version 3.5 brings:
- Atomic commits of ruleset changes (reduce the chance of ending up in an
inconsistent state).
- A 30% reduction in the size of state table entries.
- Source-tracking (limit number of clients and states per client).
- Sticky-address (the flexibility of round-robin with the benefits of
source-hash).
- Significant improvements to interface handling.
- and many more ...


130609 16-Jun-2004 mlaier

Prepare for pf 3.5 import:
- Remove pflog and pfsync modules. Things will change in such a fashion
that there will be one module with pf+pflog that can be loaded into
GENERIC without problems (which is what most people want). pfsync is no
longer possible as a module.
- Add multicast address for in-kernel multicast pfsync protocol. Protocol
glue will follow once the import is done.
- Add one more mbuf tag


130390 12-Jun-2004 le

Add a module directory for geom_vinum.


130299 10-Jun-2004 marius

Fix typo that prevents esp_sbus.c and lsi64854.c from being built on sparc64.


130293 10-Jun-2004 scottl

Port the NetBSD esp(4) driver. This only includes the sbus front-end, so
its primary use is for the FEPS/FAS366 SCSI found in Sun Ultra 1e and 2
machines. Once the pci front-end is ported, this driver can replace the
amd(4) driver.

The code as-is is fairly stable. I've disabled tagged-queueing until I can
figure out a corruption bug related to it. I'm importing it now so that
people with these machines can (finally) stop netbooting and report bugs
before 5.3.


130287 09-Jun-2004 imp

Add eisa_if.h


130286 09-Jun-2004 imp

Add eisa_if.h to the list of things to build for new eisa_if.m for the
case where we build modules with world.


130258 09-Jun-2004 obrien

style.Makefile(5)


130253 08-Jun-2004 darrenr

Recognise NOINET6 as an indication to not build IPv6 enabled source even
if FreeBSD header files, etc, support it.

Submitted by: Sergey Mokryshev <mokr@mokr.net>


129880 30-May-2004 phk

add missing #include <sys/module.h>


129794 28-May-2004 tackerman

First release of ixgb driver for the Intel(R) PRO/10GbE Family of Adapters. This driver has
been developed for use with FreeBSD, version 4.8 and later.

Submitted by: Hema Joyce
Reviewed by: Prafulla Deuskar
Approved by: Prafulla Deuskar
MFC after: 1 week


129740 26-May-2004 imp

Move to generating pccarddevs.h on the fly, both for the kernel and
the modules.

Also generate usbdevs.h automatically now, but a non-kernel file is
stopping that at the moment.


129477 20-May-2004 pjd

- Connect geom(8) and its libraries to the build.
- Connect geom_stripe and geom_nop modules to the build.
- Connect STRIPE and NOP classes to the LINT build.
- Disconnect gconcat(8) from the build.

Supported by: Wheel - Open Technologies - http://www.wheel.pl


129475 20-May-2004 pjd

Modules Makefiles for geom_stripe and geom_nop.

Supported by: Wheel - Open Technologies - http://www.wheel.pl


129339 17-May-2004 rik

Connect Cronyx Tau-PCI to the system.


129329 17-May-2004 roam

Unbreak the fdc module build after the repocopy of sys/isa/fd.c to
sys/dev/fdc/fdc.c.


129308 16-May-2004 peter

Disable ndis module on amd64. It doesn't compile. For example,
hal_raise_irql(void) doesn't take an argument, but it is called with one.
eg: irql = FASTCALL1(hal_raise_irql, DISPATCH_LEVEL);
This is hidden by the macros on i386, but becomes a compile error on amd64
since the arguments are actually checked.


129275 16-May-2004 ru

Fixed the disordering from rev. 1.371.


129177 13-May-2004 nyan

Move the ichwd to i386 only.


129124 11-May-2004 des

Add a driver for the watchdog timer function present on the LPC interface
bridge in Intel ICH-series chipsets.

The original implementation was by W. Daryl Hawkins of Texas A&M, but I
have made substantial modifications.


128968 05-May-2004 rik

Add support for Cronyx Tau-PCI adapters.


128948 05-May-2004 joerg

Enable the build of the vinum KLD on sparc64. It is known to work so
there's no reason to not build it.


128891 03-May-2004 pjd

Connect geom_gate.ko to the build.


128773 30-Apr-2004 marius

Remove the source file for the sio(4) EBus attachment here, too.


128761 30-Apr-2004 pjd

Makefile for geom_gate.ko.


128690 27-Apr-2004 vkashyap

Added 3ware's twa.

Reviewed by: ps


128635 25-Apr-2004 rik

Add ng_sppp(4) to the modules build process.


128587 23-Apr-2004 philip

Enable the led-toggling magic. Compiling files which are in the kernel into
modules is a very nice way to produce hard-to-find panics. Who would look for
a bug in a Makefile anyway?

Has anyone seen the pointy hat? :-o

Approved by: njl (mentor)


128571 23-Apr-2004 philip

Hook up acpi_asus and its manual page in two more places I managed to overlook
last night. Sorry about that :-o

Spotted by: njl (mentor, spotter of forgetfulness)


128562 22-Apr-2004 philip

Missed this out in my last commit. Makefile for the acpi_asus driver.


128544 22-Apr-2004 njl

Fix the build. opt_asr.h is gone.

Beer or equivalent to? njl


128509 21-Apr-2004 njl

Divide the drivers into essential (pci, thermal) and mobile (lid,
battery, etc.)


128476 20-Apr-2004 darrenr

IPv6 is on by default in GENERIC so enable IPv6 in IPFilter too by default.

PR: kern/57730
Submitted by: FUKAUMI Naoki <fukaumi@soum.co.jp>


128431 19-Apr-2004 njl

Remove opt_da.h from the Makefile as well. Duplication of the option in
both the Makefile and sys/conf/options is what led to this oversight.
Apologies for breaking the build.


128355 17-Apr-2004 ru

A simple packet distribution node type that acts like an Ethernet hub.


128120 11-Apr-2004 marcel

Include nehemiah.c only on i386, as is done for the non-modules
build.


128091 10-Apr-2004 kan

Fix module build during buildworld with MODULES_WITH_WORLD defined.


128086 10-Apr-2004 vkashyap

Changed comments following changes to not bundle firmware by default.

Approved by: re


128082 10-Apr-2004 scottl

Don't include the firmware image by default as it adds 500k (uncompressed) to
the module.

Reviewed by: vinod


128059 09-Apr-2004 markm

Reorganise the entropy device so that high-yield entropy sources
can more easily be used INSTEAD OF the hard-working Yarrow.
The only hardware source used at this point is the one inside
the VIA C3 Nehemiah (Stepping 3 and above) CPU. More sources will
be added in due course. Contributions welcome!


127946 06-Apr-2004 mlaier

Make pf* modules respect NOINET6 from make.conf(5) in order to build them
for INET6-less kernel.

Requested by: many
Approved by: bms(mentor)


127600 30-Mar-2004 vkashyap

Initial check-in of the device driver for 3ware's 9000 series
PATA/SATA RAID controllers. This driver is a SIM under CAM, and
so, behaves like a driver for a SCSI controller.


127592 29-Mar-2004 peter

Clean up the stub fake vnode locking implemenations. The main reason this
stuff was here (NFS) was fixed by Alfred in November. The only remaining
consumer of the stub functions was umapfs, which is horribly horribly
broken. It has missed out on about the last 5 years worth of maintenence
that was done on nullfs (from which umapfs is derived). It needs major
work to bring it up to date with the vnode locking protocol. umapfs really
needs to find a caretaker to bring it into the 21st century.

Functions GC'ed:
vop_noislocked, vop_nolock, vop_nounlock, vop_sharedlock.


127409 25-Mar-2004 rik

Connect ctau driver (Cronyx-Tau/ISA) to modules build process.

Approved by: imp (mentor)


127376 24-Mar-2004 rik

sppp (4) to netgraph (4) node. As always: I'l connect it to the
system after extra check.

Approved by: imp (mentor)
Approved by: julian (in general)


127245 20-Mar-2004 marcel

Add uart_subr.c


127164 18-Mar-2004 fjoe

Generate opt_inet.h.
Add opt_inet.h to SRCS.


127071 16-Mar-2004 nyan

Move the arl to i386 only.


127067 16-Mar-2004 scottl

Remove the module reference for RAIDframe


127066 16-Mar-2004 scottl

Remove RAIDFrame. It hasn't worked since GEOM replaced the old disk
mini-layer. I don't have time to bing it forward into the GEOM world, and
no one else has stepped forward to claim it. It'll be in the Attic for safe
keeping for now.


127040 15-Mar-2004 fjoe

Add arl(4): driver for Aironet Arlan 655 wireless adapters.

MFC after: 2 weeks


127018 15-Mar-2004 imp

Kill bogus isa compat opt file.


126756 08-Mar-2004 mlaier

Link pf to the build and install:
This adds the former ports registered groups: proxy and authpf as well as
the proxy user. Make sure to run mergemaster -p in oder to complete make
installworld without errors.

This also provides the passive OS fingerprints from OpenBSD (pf.os) and an
example pf.conf.

For those who want to go without pf; it provides a NO_PF knob to make.conf.

__FreeBSD_version will be bumped soon to reflect this and to be able to
change ports accordingly.

Approved by: bms(mentor)


126742 08-Mar-2004 benno

Add a netgraph node to handle ATM LLC encapsulation. This currently handles
ethernet (tested) and FDDI (not tested). The main use for this is on ADSL (or
other ATM) connections where bridged ethernet is used, PPPoE being a prime
example.

There is no manual page as yet, I will write one shortly.

Reviewed by: harti


126706 07-Mar-2004 wpaul

Add preliminary support for PCMCIA devices in addition to PCI/cardbus.
if_ndis.c has been split into if_ndis_pci.c and if_ndis_pccard.c.
The ndiscvt(8) utility should be able to parse device info for PCMCIA
devices now. The ndis_alloc_amem() has moved from kern_ndis.c to
if_ndis_pccard.c so that kern_ndis.c no longer depends on pccard.

NOTE: this stuff is not guaranteed to work 100% correctly yet. So
far I have been able to load/init my PCMCIA Cisco Aironet 340 card,
but it crashes in the interrupt handler. The existing support for
PCI/cardbus devices should still work as before.


126620 04-Mar-2004 wpaul

- Some older Atheros drivers want KeInitializeTimer(), so implement it,
along with KeInitializeTimerEx(), KeSetTimer(), KeSetTimerEx(),
KeCancelTimer(), KeReadStateTimer() and KeInitializeDpc(). I don't
know for certain that these will make the Atheros driver happy since
I don't have the card/driver combo needed to test it, but these are
fairly independent so they shouldn't break anything else.

- Debugger() is present even in kernels without options DDB, so no
conditional compilation is necessary (pointed out by bde).

- Remove the extra km_acquirecnt member that I added to struct kmutant
and embed it within an unused portion of the structure instead, so that
we don't make the structure larger than it's defined to be in Windows.
I don't know what crack I was smoking when I decided it was ok to do
this, but it's worn off now.


126559 03-Mar-2004 wpaul

Add proper support for DbgPrint(): only print messages if bootverbose
is set, since some drivers with debug info can be very chatty.

Also implement DbgBreakPoint(), which is the Windows equivalent of
Debugger(). Unfortunately, this forces subr_ntoskrnl.c to include
opt_ddb.h.


126494 02-Mar-2004 rik

1. Add modules makefile for Cronyx Tau/ISA driver (ctau).

Approved by: imp (mentor)


126447 01-Mar-2004 ru

Netgraph node type for IEEE 802.1Q VLAN tagging.


126431 01-Mar-2004 njl

Hook acpi_video up to the build.


126430 01-Mar-2004 njl

Add the ACPI standard video extensions driver. I've done some style cleanup
but a bit more reamins to be done. For now, it is usable.

Submitted by: Taku YAMAMOTO <taku@cent.saitama-u.ac.jp>


126423 01-Mar-2004 ticso

add driver for BWCT console management serials


126369 28-Feb-2004 njl

Clean all the object files whether or not ACPI_DEBUG is specified.


126334 28-Feb-2004 sanpei

add support DM9601(DAVICOM USB to Ethernet MAC Controller with Integrated 10/100 PHY)
- Corega FEther USB-TXC

PR: kern/62932
Submitted by: HASHI Hiroaki <hashiz@tomba.cskk-sv.co.jp>
Obtained from: NetBSD


126263 26-Feb-2004 mlaier

Tweak existing header and other build infrastructure to be able to build
pf/pflog/pfsync as modules. Do not list them in NOTES or modules/Makefile
(i.e. do not connect it to any (automatic) builds - yet).

Approved by: bms(mentor)


126172 23-Feb-2004 pjd

Connect geom_concat.ko module to the build.

Approved by: scottl (mentor)


126008 19-Feb-2004 pjd

Makefile needed for building geom_concat module.

Approved by: scottl (mentor)


125817 14-Feb-2004 rik

Adding missing cx (cronyx/Sigma) entry.
Approved by: imp (mentor)


125771 13-Feb-2004 ru

Removed -g from CFLAGS. There is a better way to build debugging
versions of the modules, and unconditionally putting -g in CFLAGS
has negative impact on the size of the resulting .ko object, even
now that debugging symbols are always stripped.


125128 28-Jan-2004 obrien

Always build ext2fs module. There is no written policy preventing the
building of GPL'ed modules.


125126 28-Jan-2004 obrien

Enable ndis for AMD64 (for the time that modules are supported)...


125123 28-Jan-2004 emax

Add NO_BLUETOOTH knob to the build process

Requested by: phk
Reviewed by: imp (mentor), ru


124717 19-Jan-2004 ru

Removed custom "load" and "unload" targets.

Removed "deinstall" targets -- the idea is to provide the standard
"deinstall" target.


124711 19-Jan-2004 ru

Normalize SUBDIR.


124591 16-Jan-2004 ru

- Build things in pure alphabetical dictionary order.

- Unify the conditional assignments section so that architectural
exclusions come first, sorted, then options and !options, sorted
by the option name, also in directory order, then architecture
specific sections, sorted by the architecture name, with i386
being a traditional exception.

Prodded by: bde


124546 15-Jan-2004 onoe

Use generic net80211 framework for awi driver.
Restore awi to be workable again; it was broken..
XXX: The initialization is still unreliable yet, it sometimes fails on
some card.


124476 13-Jan-2004 nyan

Include "../Makefile.inc" to propagate the configuration to subdirectories.


124473 13-Jan-2004 ru

MODULE_DEPEND is a C macro, not a make(1).


124472 13-Jan-2004 ru

bsd.kmod.mk does not deal with manpages anymore.


124467 13-Jan-2004 ru

Don't put .depend in CLEANFILES, it's cleaned by cleandepend.


124441 12-Jan-2004 njl

Hook up acpi_toshiba


124385 11-Jan-2004 njl

Add the ACPI Toshiba extras driver (hotkeys, LCD backlight, video output,
forced fan control, and CPU throttling).

Submitted by: Hiroyuki Aizu <aizu@navi.org>


124373 11-Jan-2004 obrien

Add Audigy support.
I started with a year-old patch by Orlando Bassotto
<orlando.bassotto@ieo-research.it>, and ported it to 5.2-CURRENT along with
fixing the problems working with pre-Audigy cards.


124369 11-Jan-2004 nyan

The ida module is not needed for pc98.


124367 11-Jan-2004 mdodd

ida(4) module. PCI only for now.


124272 09-Jan-2004 wpaul

Implement NdisOpenFile()/NdisCloseFile()/NdisMapFile()/NdisUnmapFile().
By default, we search for files in /compat/ndis. This can be changed with
a systcl. These routines are used by some drivers which need to download
firmware or microcode into their respective devices during initialization.

Also, remove extraneous newlines from the 'built-in' sysctl/registry
variables.


124255 08-Jan-2004 njl

Always clean all files, including ones under ACPI_DEBUG when doing a
"make clean".


123962 29-Dec-2003 bde

Use double quotes instead of single quotes for echos to build options
headers as in most other modules Makefiles (5 yesterday, none now).
Fixed any simple nearby style bugs (not many).


123961 29-Dec-2003 bde

Fixed some style bugs (mainly the bad examples @echo, NOMAN, and non-use
of ${.TARGET}). This was the last instances of @echo in module Makefiles
after it was removed in sio/Makefile. NOMAN is nonsense in module
Makefiles, and was removed, but came back here and in too many other
places.


123960 29-Dec-2003 bde

Fixed some style bugs:
- SRCS was totally disordered.
- the echos to create options headers were hidden using '@'.
- the args of echos to create options headers were single-quoted.
- the target names for the rules to create options headers were repeated.
- the unused option COMPAT_FREEBSD4 was put in opt_compat.h.


123959 29-Dec-2003 bde

Fixed some style bugs. SRCS and the opt_*.h rules were totally
disordered. This commit only fixes the external disorder by
rearranging whole lines.


123935 28-Dec-2003 nyan

Fix to support pc98 and currect typo.


123911 27-Dec-2003 imp

New sio module. A number of people have suggested this over the years
(most recently bde), so I'll commit the module I've had knocking
around in my tree for a while. This may have some rough edges, so if
you are able to build it on non-i386 platform (including pc98) please
let me know you succeeded. When I get enough reports, I'll connect it
to the build. If there are problems, feel free to fix them.

Suggested by: bde


123795 24-Dec-2003 njl

Move the acpi module down a directory. This will allow us to import
other ACPI-specific drivers into sys/modules/acpi/.


123557 15-Dec-2003 bms

Push m_apply() and m_getptr() up into the colleciton of standard mbuf
routines, and purge them from opencrypto.

Reviewed by: sam
Obtained from: NetBSD
Sponsored by: spc.org


123484 12-Dec-2003 wpaul

Turn off build of if_ndis.ko by default, since it depends on an
autogenerated file (ndis_driver_data.h) which by definition can't
be available unless the user creates it.


123478 11-Dec-2003 wpaul

Grrr. Put the right .PATH statements in the right Makefiles.


123477 11-Dec-2003 wpaul

Ack! Only build if_ndis.ko and ndis.ko if arch == i386.


123474 11-Dec-2003 wpaul

Commit the first cut of Project Evil, also known as the NDISulator.

Yes, it's what you think it is. Yes, you should run away now.

This is a special compatibility module for allowing Windows NDIS
miniport network drivers to be used with FreeBSD/x86. This provides
_binary_ NDIS compatibility (not source): you can run NDIS driver
code, but you can't build it. There are three main parts:

sys/compat/ndis: the NDIS compat API, which provides binary
compatibility functions for many routines in NDIS.SYS, HAL.dll
and ntoskrnl.exe in Windows (these are the three modules that
most NDIS miniport drivers use). The compat module also contains
a small PE relocator/dynalinker which relocates the Windows .SYS
image and then patches in our native routines.

sys/dev/if_ndis: the if_ndis driver wrapper. This module makes
use of the ndis compat API and can be compiled with a specially
prepared binary image file (ndis_driver_data.h) containing the
Windows .SYS image and registry key information parsed out of the
accompanying .INF file. Once if_ndis.ko is built, it can be loaded
and unloaded just like a native FreeBSD kenrel module.

usr.sbin/ndiscvt: a special utility that converts foo.sys and foo.inf
into an ndis_driver_data.h file that can be compiled into if_ndis.o.
Contains an .inf file parser graciously provided by Matt Dodd (and
mercilessly hacked upon by me) that strips out device ID info and
registry key info from a .INF file and packages it up with a binary
image array. The ndiscvt(8) utility also does some manipulation of
the segments within the .sys file to make life easier for the kernel
loader. (Doing the manipulation here saves the kernel code from having
to move things around later, which would waste memory.)

ndiscvt is only built for the i386 arch. Only files.i386 has been
updated, and none of this is turned on in GENERIC. It should probably
work on pc98. I have no idea about amd64 or ia64 at this point.

This is still a work in progress. I estimate it's about %85 done, but
I want it under CVS control so I can track subsequent changes. It has
been tested with exactly three drivers: the LinkSys LNE100TX v4 driver
(Lne100v4.sys), the sample Intel 82559 driver from the Windows DDK
(e100bex.sys) and the Broadcom BCM43xx wireless driver (bcmwl5.sys). It
still needs to have a net80211 stuff added to it. To use it, you would
do something like this:

# cd /sys/modules/ndis
# make; make load
# cd /sys/modules/if_ndis
# ndiscvt -i /path/to/foo.inf -s /path/to/foo.sys -o ndis_driver_data.h
# make; make load
# sysctl -a | grep ndis

All registry keys are mapped to sysctl nodes. Sometimes drivers refer
to registry keys that aren't mentioned in foo.inf. If this happens,
the NDIS API module creates sysctl nodes for these keys on the fly so
you can tweak them.

An example usage of the Broadcom wireless driver would be:

# sysctl hw.ndis0.EnableAutoConnect=1
# sysctl hw.ndis0.SSID="MY_SSID"
# sysctl hw.ndis0.NetworkType=0 (0 for bss, 1 for adhoc)
# ifconfig ndis0 <my ipaddr> netmask 0xffffff00 up

Things to be done:

- get rid of debug messages
- add in ndis80211 support
- defer transmissions until after a status update with
NDIS_STATUS_CONNECTED occurs
- Create smarter lookaside list support
- Split off if_ndis_pci.c and if_ndis_pccard.c attachments
- Make sure PCMCIA support works
- Fix ndiscvt to properly parse PCMCIA device IDs from INF files
- write ndisapi.9 man page


123227 07-Dec-2003 imp

hea is gone, remove its module


123226 07-Dec-2003 imp

Remove hea module.


123163 05-Dec-2003 jhb

Remove SMP option support from building the ACPI module as it is no longer
needed.

Approved by: re (murray)
Requested by: njl


123136 03-Dec-2003 jhb

- Reenable building of the ACPI module on i386.
- Remove 'device acpi' from i386 GENERIC and revert back to using ACPI as
a module by default.

Approved by: re (scottl / blanket)


123134 03-Dec-2003 jhb

Add madt.c to the list of sources for i386.

Approved by: re (scottl / blanket)


123120 03-Dec-2003 imp

Updated cx driver commit part 1: bring in the new kernel driver.

This is the vastly updated cx drvier from Roman Kurakin <rik@cronyx.ru>
who has been patiently waiting for this update for sometime.

The driver is mostly a rewrite from the version we have in the tree.
While some similarities remain, losing the little history that the old
driver has is not a big loss, and the re@ felt it was easier this way (less
error prone).

The userland parts of this update will be committed shortly.

The driver is not connected to the build yet. I want to make sure I
don't break any platform at any time, so I want to test that with
these files in the tree before I continue (on the off chance I'm
forgetting a file).

I changed the DEBUG macro to CX_DEBUG from the code that was submitted
(to not break when we go to building with opt_global.h after the
release), as well adding $FreeBSD$.

Submitted by: Roman Kurakin
Approved by: re@ <scottl>


122995 26-Nov-2003 njl

* Add acpi_pcpu_get_id(idx, *acpi_id, *cpu_id) which fetches the
idx'th present CPU with pc_acpi_id equal to *acpi_id. If *acpi_id
does not match that processor's pc_acpi_id, return the value for
ProcId derived from the MADT in *acpi_id. If pc_acpi_id is 0xffffffff,
always override it with the value of *acpi_id. Finally, return
pc_cpuid in *cpu_id and use that as our primary key.

* Use pc_cpuid as our unique key because we know it is valid since
MD code set it. The values for ProcId in the ASL and MADT don't
match up on some machines (!), forcing us to fall back to ordered
probing in that case.

* Remove some #ifdef SMP since the refcount doesn't hurt performance
and will be needed for dynamic _CST objects. Only one #ifdef SMP
(for smp_rendezvous) remains.

* Hook up SMP in the compile flags in the Makefile.

Tested by: marcel, truckman
Approved by: re (scottl)


122894 19-Nov-2003 imp

o Remove @- from the ln and change it to a -sf. This was bogus, and
regocnized as such at the time. Now that the other bogons in the
tree have been fixed, we can remove this ugly kludge.
o Remove stale/bogus opt_foo.h files. These are left over from
by-gone resources. And they point to the need, yet again, to
improve the build system so meta information is only in one place.

Submitted by: ru
Reviewed by: bde
Approved by: re@ (jhb)


122876 18-Nov-2003 rwatson

Revert a NOOP change to Makefile that slipped into the last commit.

Pointed out by: tjr


122875 18-Nov-2003 rwatson

Introduce a MAC label reference in 'struct inpcb', which caches
the MAC label referenced from 'struct socket' in the IPv4 and
IPv6-based protocols. This permits MAC labels to be checked during
network delivery operations without dereferencing inp->inp_socket
to get to so->so_label, which will eventually avoid our having to
grab the socket lock during delivery at the network layer.

This change introduces 'struct inpcb' as a labeled object to the
MAC Framework, along with the normal circus of entry points:
initialization, creation from socket, destruction, as well as a
delivery access control check.

For most policies, the inpcb label will simply be a cache of the
socket label, so a new protocol switch method is introduced,
pr_sosetlabel() to notify protocols that the socket layer label
has been updated so that the cache can be updated while holding
appropriate locks. Most protocols implement this using
pru_sosetlabel_null(), but IPv4/IPv6 protocols using inpcbs use
the the worker function in_pcbsosetlabel(), which calls into the
MAC Framework to perform a cache update.

Biba, LOMAC, and MLS implement these entry points, as do the stub
policy, and test policy.

Reviewed by: sam, bms
Obtained from: TrustedBSD Project
Sponsored by: DARPA, Network Associates Laboratories


122796 16-Nov-2003 akiyama

Make interrupt pipe interval time configurable.
- Add kernel options: {UPLCOM,UVSCOM}_INTR_INTERVAL
- Add sysctl variables: 'hw.usb.{uplcom,uvscom}.interval'

MFC after: 1 week


122770 16-Nov-2003 imp

Quick hack to make the nfsclient.ko loadable again. This brings in
the nfsv4 files. It is intended to be a short-term bridge while
alfred deals with the problem in a better way (eg, don't hesitate to
back this out when the real fix comes along). I've not heard back
from alfred in a few hours and other people are hitting this problem.

Approved by: markm, rwatson, grog, murray


122766 15-Nov-2003 njl

Implement Cx CPU idle states and updated throttling support.

* Use the cpu_idle_hook() to do idling for C1-C3.
* Use both _CST and the FADT to detect Cx states.
* Use both _PTC and P_CNT for controlling throttling.
* Add a notify handler to detect changes in _CST and _PSS
* Call the _INI function for each processor if present. This will be
done by ACPI-CA in the future.
* Fix a bug on SMP systems where CPUs will attach multiple times if the
bus is rescan.
* Document new sysctls for controlling idling.


122720 15-Nov-2003 alfred

nfs4 client module.
Not hooked up to the build yet.


122699 14-Nov-2003 bms

Fix a bug whereby the physical endpoints of a gre(4) tunnel would not
be printed, if the module were loaded into a kernel which had INET6 enabled.

The gre(4) driver does not use INET6, nor is it specified for IPv6. The
tunnel_status() function in ifconfig(8) is somewhat overzealous and assumes
that all tunnel interfaces speak KAME ifioctls.

This fix follows the path of least resistance, by teaching gre(4) about
the two KAME ifioctls concerned.

PR: bin/56341


122512 11-Nov-2003 rwatson

Following the repo-copy from src/sys/modules/mac_none/Makefile,
I neglected to update the filenames/etc in mac_stub. Do so now.


122414 10-Nov-2003 ru

Don't compile with -g by default; there's a better way to build modules with
debug support.


122221 07-Nov-2003 scottl

Add the Makefile glue for the udf_iconv module.

Submitted by: imura@ryu16.org


122219 07-Nov-2003 harti

The layer 3 (signalling) of NgATM netgraph node: ng_uni. This node
handles user and network side signaling and partly PNNI.


122169 06-Nov-2003 imp

List the three modules that I have that aren't connected to the build.


122099 05-Nov-2003 scottl

Update the udf module makefile for the udf_iconv module

Submitted by: imura@ryu16.org


122023 04-Nov-2003 imp

ppbus_if.c is necessary if you are loading submodules.


122018 04-Nov-2003 imp

Module for cs driver


122003 03-Nov-2003 jhb

Temporarily disable the acpi(4) module on i386 until issues revolving
SMP probing and the MADT table can be sorted out. For now, if you want
ACPI, you must compile it into your kernel statically using 'device acpi'.


121938 03-Nov-2003 harti

Put the address handling, traffic descripto handling and the
message encoding and decoding stuff into the base module. All of this
is accessed by several of the NgATM modules and putting this into
atmbase reduceds the memory footprint.


121468 24-Oct-2003 simokawa

Add dumb console driver and related bits.

dcons(4): very simple console and gdb port driver
dcons_crom(4): FireWire attachment
dconschat(8): User interface to dcons

Tested with: i386, i386-PAE, and sparc64.


121462 24-Oct-2003 harti

Module build infrastructure for the NgATM SAA layer.


121186 18-Oct-2003 simokawa

Add SBP-II target mode driver.

Though this is still incomplete and has some missing features such as
exclusive login and event notification, it may be enough for someone
who wants to play with it.

This driver is supposed to work with firewire(4), targ(4) of CAM(4)
and scsi_target(8) which can be found in /usr/share/example/scsi_target.
This driver doesn't require sbp(4) which implements initiator mode.

Sample configuration:

Kernel: (you can use modules as well)
device firewire
device scbus
device targ
device sbp_targ

After reboot:
# mdconfig -a -t malloc -s 10m
md0
# scsi_target 0:0:0 /dev/md0
(Assuming sbp_targ0 on scbus0)

You should find the 10MB HDD on FreeBSD/MacOS X/WinXP or whatever connected
to the target using FireWire.

Manpage is not finished yet.


121054 12-Oct-2003 emax

Update Bluetooth code.

Reviewed by: M. Warner Losh <imp@bsdimp.com>; John Hay <jhay@freebsd.org>
Approved by: M. Warner Losh <imp@bsdimp.com> (mentor)


120660 02-Oct-2003 simokawa

MFp4: Change struct fw_xfer to reduce memory copy in fwmem_*() functions.
And many changes.

* all
- Major change of struct fw_xfer.
o {send,recv}.buf is splitted into hdr and payload.
o Remove unnecessary fields.
o spd is moved under send and recv.
- Remove unnecessary 'volatile' keyword.
- Add definition of rtcode and extcode.

* firewire.c
- Ignore FWDEVINVAL devices in fw_noderesolve_nodeid().
- Check the existance of the bind before call STAILQ_REMOVE().
- Fix bug in the fw_bindadd().
- Change element of struct fw_bind for simplicity.
- Check rtcode of response packet.
- Reduce split transaction timeout to 200 msec.
(100msec is the default value in the spec.)
- Set watchdog timer cycle to 10 Hz.
- Set xfer->tv just before calling fw_get_tlabel().

* fwohci.c
- Simplifies fwohci_get_plen().

* sbp.c
- Fix byte order of multibyte scsi_status informations.
- Split sbp.c and sbp.h.
- Unit number is not necessary for FIFO¤ address.
- Reduce LOGIN_DELAY and SCAN_DELAY to 1 sec.
- Add some constants defineded in SBP-2 spec.

* fwmem.c
- Introduce fwmem_strategy() and reduce memory copy.


120492 26-Sep-2003 fjoe

- Support for multibyte charsets in LIBICONV.
- CD9660_ICONV, NTFS_ICONV and MSDOSFS_ICONV kernel options
(with corresponding modules).
- kiconv(3) for loadable charset conversion tables support.

Submitted by: Ryuichiro Imura <imura@ryu16.org>


120387 23-Sep-2003 sam

update to reflect PFIL_HOOKS api changes

Supported by: FreeBSD Foundation


120386 23-Sep-2003 sam

o update PFIL_HOOKS support to current API used by netbsd
o revamp IPv4+IPv6+bridge usage to match API changes
o remove pfil_head instances from protosw entries (no longer used)
o add locking
o bump FreeBSD version for 3rd party modules

Heavy lifting by: "Max Laier" <max@love2party.net>
Supported by: FreeBSD Foundation
Obtained from: NetBSD (bits of pfil.h and pfil.c)


120145 17-Sep-2003 marcel

Only build the ebus driver on sparc64. It includes a header directly
from the sparc64 subtree, which breaks building non-sparc64 platforms
in the event the sparc64 subtree does not exist.
The problem is specific to the module, because non-module builds are
affected by the presence or absence of "device ebus" in the kernel
configuration.

PR: kern/56869


120085 15-Sep-2003 marcel

Sort: build uart_bus_pccard.c before uart_bus_pci.c.


120056 14-Sep-2003 takawata

Add uart pccard bus attachment,based on sio_pccard.c .

Wrote at: Hakone.
Powered by: Warner Losh's scotch whisky.
Tested by: nork


119976 11-Sep-2003 wpaul

Add a PHY driver to support the built-in gigE PHY in the 8169S/8110S
ethernet chips. This driver is pretty simple, however it contains
special DSP initialization code which is needed in order to get
the chip to negotiate a gigE link. (This special initialization
may not be needed in subsequent chip revs.) Also:

- Fix typo in if_rlreg.h (RL_GMEDIASTAT_1000MPS -> RL_GMEDIASTAT_1000MBPS)

- Deal with shared interrupts in re_intr(): if interface isn't up,
return.

- Fix another bug in re_gmii_writereg() (properly apply data field mask)

- Allow PHY driver to read the RL_GMEDIASTAT register via the
re_gmii_readreg() register (this is register needed to determine
real time link/media status).


119917 09-Sep-2003 wpaul

Add a device driver for the Broadcom BCM4401 ethernet controller,
written by Stuart Walsh and Duncan Barclay (with some kibbitzing by
me). I'm checking it in on Stuart's behalf.

The BCM4401 is built into several x86 laptop and desktop systems. For the
moment, I have only enabled it in the x86 kernel config because although
it's a PCI device, I haven't heard of any standalone NICs that use it. If
somebody knows of one, we can easily add it to the other arches.

This driver uses register/structure data gleaned from the Linux
driver released by Broadcom, but does not contain any of the code
from the Linux driver itself. It uses busdma.


119896 09-Sep-2003 anholt

Hook the SiS DRM up to the build

Sponsored by: LinuxFund


119870 08-Sep-2003 wpaul

Fix PATH: directive in sys/modules/re/Makefile, and add the re(4) driver to
devd.conf.

Pointed out by: Larry Rosenman


119868 08-Sep-2003 wpaul

Take the support for the 8139C+/8169/8169S/8110S chips out of the
rl(4) driver and put it in a new re(4) driver. The re(4) driver shares
the if_rlreg.h file with rl(4) but is a separate module. (Ultimately
I may change this. For now, it's convenient.)

rl(4) has been modified so that it will never attach to an 8139C+
chip, leaving it to re(4) instead. Only re(4) has the PCI IDs to
match the 8169/8169S/8110S gigE chips. if_re.c contains the same
basic code that was originally bolted onto if_rl.c, with the
following updates:

- Added support for jumbo frames. Currently, there seems to be
a limit of approximately 6200 bytes for jumbo frames on transmit.
(This was determined via experimentation.) The 8169S/8110S chips
apparently are limited to 7.5K frames on transmit. This may require
some more work, though the framework to handle jumbo frames on RX
is in place: the re_rxeof() routine will gather up frames than span
multiple 2K clusters into a single mbuf list.

- Fixed bug in re_txeof(): if we reap some of the TX buffers,
but there are still some pending, re-arm the timer before exiting
re_txeof() so that another timeout interrupt will be generated, just
in case re_start() doesn't do it for us.

- Handle the 'link state changed' interrupt

- Fix a detach bug. If re(4) is loaded as a module, and you do
tcpdump -i re0, then you do 'kldunload if_re,' the system will
panic after a few seconds. This happens because ether_ifdetach()
ends up calling the BPF detach code, which notices the interface
is in promiscuous mode and tries to switch promisc mode off while
detaching the BPF listner. This ultimately results in a call
to re_ioctl() (due to SIOCSIFFLAGS), which in turn calls re_init()
to handle the IFF_PROMISC flag change. Unfortunately, calling re_init()
here turns the chip back on and restarts the 1-second timeout loop
that drives re_tick(). By the time the timeout fires, if_re.ko
has been unloaded, which results in a call to invalid code and
blows up the system.

To fix this, I cleared the IFF_UP flag before calling ether_ifdetach(),
which stops the ioctl routine from trying to reset the chip.

- Modified comments in re_rxeof() relating to the difference in
RX descriptor status bit layout between the 8139C+ and the gigE
chips. The layout is different because the frame length field
was expanded from 12 bits to 13, and they got rid of one of the
status bits to make room.

- Add diagnostic code (re_diag()) to test for the case where a user
has installed a broken 32-bit 8169 PCI NIC in a 64-bit slot. Some
NICs have the REQ64# and ACK64# lines connected even though the
board is 32-bit only (in this case, they should be pulled high).
This fools the chip into doing 64-bit DMA transfers even though
there is no 64-bit data path. To detect this, re_diag() puts the
chip into digital loopback mode and sets the receiver to promiscuous
mode, then initiates a single 64-byte packet transmission. The
frame is echoed back to the host, and if the frame contents are
intact, we know DMA is working correctly, otherwise we complain
loudly on the console and abort the device attach. (At the moment,
I don't know of any way to work around the problem other than
physically modifying the board, so until/unless I can think of a
software workaround, this will have do to.)

- Created re(4) man page

- Modified rlphy.c to allow re(4) to attach as well as rl(4).

Note that this code works for the sample 8169/Marvell 88E1000 NIC
that I have, but probably won't work for the 8169S/8110S chips.
RealTek has sent me some sample NICs, but they haven't arrived yet.
I will probably need to add an rlgphy driver to handle the on-board
PHY in the 8169S/8110S (it needs special DSP initialization).


119832 07-Sep-2003 tjr

Add support for the Coda 6.x venus<->kernel interface. This extends
FIDs to be 128-bits wide and adds support for realms.

Add a new CODA_COMPAT_5 option, which requests support for the old
Coda 5.x interface instead of the new one.

Create a new coda5.ko module that supports the 5.x interface, and make
the existing coda.ko module use the new 6.x interface. These modules
cannot both be loaded at the same time.

Obtained from: Jan Harkes & the coda-6.0.2 distribution,
NetBSD (drochner) (CODA_COMPAT_5 option).


119831 07-Sep-2003 marcel

Now that PC98 has it's own MD file, use uart_cpu_${MACHINE}.c and
not uart_cpu_${MACHINE_ARCH}.c.


119823 07-Sep-2003 imp

add i8251


119816 06-Sep-2003 marcel

Hook-up the uart(4) driver to the build. For a detailed description
of what uart(4) is and/or is not see the initial commit log of one
of the files in sys/dev/uart (or see share/man/man4/uart.4).

Note that currently pc98 shares the MD file with i386. This needs
to change when pc98 support is fleshed-out to properly support the
various UARTs. A good example is sparc64 in this respect.

We build uart(4) as a module on all platforms. This may break
the ppc port. That depends on whether they do actually build
modules.

To use uart(4) on alpha, one must use the NO_SIO option.


119571 30-Aug-2003 sos

Add pst as a module


119549 29-Aug-2003 njl

Use the ACPICA AcpiEnterSleepStateS4bios instead of rolling our own. This
change also disables interrupts around non-S4 suspends whereas before we
did not do this. Our version of AcpiEnterSleepStateS4bios was almost
identical to the ACPICA version.


119392 24-Aug-2003 imp

Check in the known good version of the wi driver, with prism/symbol
support stripped out and minimally renamed to owi. This driver
attaches to lucent cards only. This is designed to aid in the testing
of fixes to the wi driver for lucent cards. It is supported only as a
module (you cannot compile it into your kernel). You cannot have the
wi driver in your kernel (or loaded as a moudle) to use the owi
module.

I've not connected it to build, as this module is currently for
debugging purposes. This is for developers only at the present time.
If we can't get lucent support fixed by 5.2 code freeze, then we'll
re-evaulate this support level. Please use this to fix the lucent
support in dev/wi. This will be removed from the system when lucent
support has been fixed in dev/wi.

Note to developers: Do not connect this to the build, make it possible
to build into the kernel or otherwise 'integrate' this into system
without checking with me first. This is for debugging purposes only.

If this doesn't work for you, I don't want to hear about it unless you
are fixing the wi driver :-)


119368 23-Aug-2003 mdodd

AGP GART driver for NVIDIA nForce/nForce2 chipsets.


119218 21-Aug-2003 rwatson

Hook up mac_stub to the modules Makefile.
Hook up mac_stub in files and options.
Reference mac_stub in NOTES.


118819 12-Aug-2003 alex

Add a overhaul of the soundchip initialization for the MSP34xx chipsets
found only many tv-cards.

We currently use more ore less evil hacks (slow_msp_audio sysctl) to
configure the various variants of these chips in order to have
stereo autodetection work. Nevertheless, this doesn't always work
even though it _should_, according to the specs.
This is, for example, the case for some popular Hauppauge models sold
sold in Germany.

However, the Linux driver always worked for me and others. Looking at
the sourcecode you will find that the linux-driver uses a very much
enhanced approach to program the various msp34xx chipset variants,
which is also found in the specs for these chips.

This is a port of the Linux MSP34xx code, written by Gerd Knorr
<kraxel@bytesex.org>, who agreed to re-release his code under a
BSD license for this port.

A new config option "BKTR_NEW_MSP34XX_DRIVER" is added, which is required
to enable the new driver. Otherwise the old code is used.

The msp34xx.c file is diff-reduced to the linux-driver to make later
modifications easier, thus it doesn't follow style(9) in most cases.

Approved by: roger (committing this, no time to test/review),
keichii (code review)


118774 11-Aug-2003 harti

Add ng_atmpif: a HARP physical interface emulation. This allows one
to run the HARP ATM stack without real hardware.

Submitted by: Vincent Jardin <vjardin@wanadoo.fr>


118711 10-Aug-2003 obrien

Re-enable pcfclock in the build.


118553 06-Aug-2003 harti

When compiling the module with INVARIANTS we also need INVARIANT_SUPPORT.


118364 02-Aug-2003 ru

There's already the elink.ko module available, don't embed it here.

Reviewed by: markm


118179 29-Jul-2003 njl

Fix the new DA_OLD_QUIRKS option for normal and module compiles.

Pointed out by: bde


117870 22-Jul-2003 peter

Initiate de-orbit burn for fpu-less operation. 386+387 is still
theoretically supportable, but you'd really be happier with FreeBSD 2.1.8
on it.


117847 21-Jul-2003 sam

hook safe driver to the build


117846 21-Jul-2003 sam

SafeNet crypto driver

Sponsored by: Global Technology Associates, Inc.
MFC after: 1 day


117835 21-Jul-2003 harti

This is a pseudo physical interface for the HARP ATM stack. When loaded
it attaches to all existing NATM network interfaces in the system
and creates a HARP physical interface for each of them. This allows
us to use the same set of ATM drivers for all ATM stuff. It is
possible to use the same interface for HARP, NATM and netgraph at the
same time.


117653 15-Jul-2003 jmg

make usb bus_dma aware.

Reviewed by: joe among others


117647 15-Jul-2003 njl

Fix the ACPI_DEBUG build for the non-module case. Move the #define into
acfreebsd.h and remove it from the Makefile. Now ACPI_DEBUG implies
ACPI_DISASSEMBLER.

Noticed by: marcel


117632 15-Jul-2003 harti

This is a driver for IDT77252 based ATM interfaces. It has been tested
with a ProATM-155 and an IDT evaluation board and should also work
with a ProATM-25 (it seems to work at least, I cannot really measure
what the card emits). The driver has been tested on i386 and sparc64,
but should work an other archs also. It supports UBR, CBR, ABR and VBR;
AAL0, AAL5 and AALraw. As an additional feature VCI/VPI 0/0 can be
opened for receiving in AALraw mode and receives all cells not claimed
by other open VCs (even cells with invalid GFC, VPI and VCI fields and
OAM cells).

Thanks to Christian Bucari from ProSum for lending two cards and answering
my questions.


117624 15-Jul-2003 harti

Add a facility for devices, specifically network interfaces, that require
large to huge amounts of small or medium sized receive buffers. The problem
with these situations is that they eat up the available DMA address space
very quickly when using mbufs or even mbuf clusters. Additionally this
facility provides a direct mapping between 32-bit integers and these buffers.
This is needed for devices originally designed for 32-bit systems. Ususally
the virtual address of the buffer is used as a handle to find the buffer as
soon as it is returned by the card. This does not work for 64-bit machines
and hence this mapping is needed.


117562 14-Jul-2003 njl

Fix build with ACPI_DEBUG option.

Reported by: Mark Santcroos <marks@ripe.net>, des+tinderbox


117374 10-Jul-2003 wpaul

tdkphy.c is missing from this module's Makefile. Add it.


117339 08-Jul-2003 jhb

Add an ACPI to ISA psuedo bridge driver. It attaches an isab(4) device to
ACPI nodes with the plug and play ID's defined for a "Generic ISA Bus
Device" as defined in section 10.7 of the ACPI 2.0 specification. This
gives machines like the Libretto that contain a fake ISA bus that is not
connected via a PCI-ISA bridge an ISA bus for ISA devices to attach to.

Tested by: markm


117254 05-Jul-2003 jmg

add the mbr_enc file so that we can load the module on sparc64.


117062 30-Jun-2003 sam

nitpicking

Submitted by: Ruslan Ermilov <ru@FreeBSD.org>


116960 28-Jun-2003 ru

Attach the amd(4) module to the i386 and pc98 builds only;
untested on other platforms.

Not objected to by: scottl


116953 28-Jun-2003 sam

switch to new 802.11 support


116952 28-Jun-2003 sam

hookup ath and ath_hal to the build


116944 28-Jun-2003 scottl

Hook umct up to the module tree.


116943 28-Jun-2003 scottl

Add 'umct', a driver for MCT Corp. and Belkin F5U109 USB-Serial adapters.
This is based on the ubsa driver by Alexander Kabaev along with documentation
gleaned from the Linux mct_u232 driver. I've had this driver sitting in my
tree for almost 6 months, and several others have found it useful.


116871 26-Jun-2003 ru

Attach the "null" module to the LINT build.

Reviewed by: markm


116814 25-Jun-2003 sam

module for atheros hal


116808 25-Jun-2003 harti

This is a netgraph node to access ATM interfaces. It works with the
hatm(4) and fatm(4) drivers, en(4) will follow soon.


116782 24-Jun-2003 iedowse

The ext2fs module needs a machine-dependent bitops.h file, so only
build it on the i386 and alpha architectures, where this has been
set up (there is also a sparc64-bitops.h in sys/gnu/ext2fs, but it
appears to be broken and it is not linked up).

This should unbreak the sparc64 LINT build.


116766 23-Jun-2003 iedowse

Include the ufs module if ALL_MODULES is defined so that it gets
built by LINT. Also override a number of knobs for enabling and
disabling various modules in the ALL_MODULES case to further increase
LINT's module coverage.

Submitted by: ru


116758 23-Jun-2003 mdodd

Hook up scd(4) to the build.

Noticed by: ru


116754 23-Jun-2003 iedowse

Add a few missing opt_ files to make this module compile again.


116744 23-Jun-2003 sam

module for Atheros 802.11 driver


116735 23-Jun-2003 harti

This is a driver for Fore PCA200E cards that uses busdma and works on
little endian and big endian and with 32 and 64 bit pointers. It already
has the hooks to be used for HARP, NATM and ngATM.


116518 18-Jun-2003 phk

Add "GEOM_FOX", a class which detects and selects between multiple
redundant paths to the same device.

This class reacts to a label in the first sector of the device,
which is created the following way:

# "0123456789abcdef012345..."
# "<----magic-----><-id-...>
echo "GEOM::FOX someid" | dd of=/dev/da0 conv=sync

NB: Since the fact that multiple disk devices are in fact the same
device is not known to GEOM, the geom taste/spoil process cannot
fully catch all corner cases and this module can therefore be
confused if you do the right wrong things.

NB: The disk level drivers need to do the right thing for this to
be useful, and that is not by definition currently the case.


116491 17-Jun-2003 harti

This is a driver for Fore/Marconi HE155 and HE622 ATM cards. It is full
busdma and has extensively been tested on i386 and sparc64.


116444 16-Jun-2003 harti

Repo-copy of sys/pci/if_en_pci.c to the rest of the midway driver (sys/dev/en)
so that all of the driver sources are in one place. Adjust the configuration
files and the module build.


116441 16-Jun-2003 harti

Fix the breakage introduced by rev. 1.43 of sys/dev/midway.c (don't commit
on friday 13th and without making a universe). This adds struct and
constant definitions for ATM traffic parameters and re-enables the
build of the midway driver.

Tested by: make universe


116380 15-Jun-2003 nyan

Include "../Makefile.inc"


116379 15-Jun-2003 nyan

Most power management devices don't exist on pc98.


116378 15-Jun-2003 imp

The en module has been broken for the last 40 hours. Disconnect it
from the tree until it is fixed. Since it is an atm driver, it isn't
commonly used so this will not negatively impact too many people.
harti can reconnect it when he resurfaces and corrects the en module
problems. This should allow snapshots to start succeeding again.

Reported by: lots of people


116349 14-Jun-2003 jmg

Fix the KMOD for the lpbb device.


116348 14-Jun-2003 nsouch

amdpm was omitted from the build of i2c controllers. Fixed.


116347 14-Jun-2003 nsouch

Add i2c to the list of modules to build.


116273 12-Jun-2003 grog

Remove these files. They have successors in tools/debugscripts.


116258 12-Jun-2003 harti

This is a driver for the physical layer chips used in ATM interfaces.
It currently supports the PMC Sierra Lite, Ultra and 622 chips and
the IDT 77105. The driver handles media options and state in a consistent
manner for ATM drivers. The next commit to the midway driver will make
it use utopia.


116125 09-Jun-2003 phk

Add new geom_ccd module


116124 09-Jun-2003 phk

remove old CCD module


115783 03-Jun-2003 gordon

Add a geom_vol_ffs module and hook up to the build.


115618 01-Jun-2003 des

Add (but do not connect) a half-finished driver for Aureal Vortex cards.
The mixer works, pcm support is half done.


115479 31-May-2003 phk

Add GEOM module compilation shims.


114973 13-May-2003 nyan

Move the ips driver from ${MACHINE_ARCH} == "i386" to ${MACHINE} == "i386".

Approved by: re (scottl)


114905 11-May-2003 scottl

Hook up the ips module


114902 11-May-2003 scottl

Add the 'ips' driver for the IBM (now Adaptec) ServeRAID controller
series. This driver was generously developed and released by David
Jeffreys and Adaptec. I've updated it to work with 5.x and fixed a
few bugs.

MFC After: 1 week


114878 10-May-2003 julian

Part one of undating the bluetooth code to the newest version

Submitted by: Maksim Yevmenkin <m_evmenkin@yahoo.com>
Approved by: re@


114577 03-May-2003 akiyama

Add RealTek RTL8150 USB to fast Ethernet controller driver.
This driver now supports the Melco LUA-KTX and the GREEN HOUSE
GH-USB100B.

Reviewed by: imp
MFC after: 2 weeks


114246 29-Apr-2003 njl

Support functions for the new ACPI import.
* AcpiOsDerivePciId(): finds a bus number, given the slot/func and the
acpi parse tree.
* AcpiOsPredefinedOverride(): use the sysctl hw.acpi.os_name to
override the value for _OS.

Ideas from: takawata, jhb
Reviewed by: takawata, marcel
Tested on: i386, ia64


114018 25-Apr-2003 harti

Convert the midway driver to use busdma. Except for this conversion the
following changes have been done:

- stylify. The original code was too hard to read.
- get rid of a number of compilation options (Adaptec-only, Eni-only, no-DMA).
- more debugging features.
- locking. This is not correct yet in the absence of interface layer locking,
but is correct enough to not to cause lock order reversals.
- remove RAW mode. There are no users of this in the tree and I doubt that
there are any.
- remove NetBSD compatibility code. There was no way to keep NetBSD non-busdma
and FreeBSD busdma code together.
- if_en now buildable as a module.

This has been actively tested on sparc64 and i386 with ENI server and
client cards and an Adaptec card (thanks to kjc).

Reviewed by: mdodd, arr


113757 20-Apr-2003 wpaul

Add device driver support for the ASIX Electronics AX88172 USB 2.0
ethernet controller. The driver has been tested with the LinkSys
USB200M adapter. I know for a fact that there are other devices out
there with this chip but don't have all the USB vendor/device IDs.

Note: I'm not sure if this will force the driver to end up in the
install kernel image or not. Special magic needs to be done to exclude
it to keep the boot floppies from bloating again, someone please
advise.


113584 17-Apr-2003 simokawa

MFp4(simokawa_firewire):
Many internal structure changes for the FireWire driver.

- Compute CRC in CROM parsing.
- Add support for configuration ROM build.
- Simplify dummy buffer handling.
- busdma conversion
- Use swi_taskqueue_giant for -current. Mark the interrupt routine as MPSAFE.
- AR buffer handling.
Don't reallocate AR buffer but just recycle it.
Don't malloc and copy per packet in fwohci_arcv().
Pass packet to fw_rcv() using iovec.
Application must prepare receiving buffer in advance.
- Change fw_bind API so that application should pre-allocate xfer structure.
- Add fw_xfer_unload() for recycling struct fw_xfer.
- Add post_busreset hook
- Remove unused 'sub' and 'act_type' in struct fw_xfer.
- Remove npacket from struct fw_bulkxfer.
- Don't call back handlers in fwochi_arcv() if the packet has
not drained in AT queue
- Make firewire works on big endian platform.
- Use native endian for packet header and remove unnecessary ntohX/htonX.
- Remove FWXFERQ_PACKET mode. We don't use it anymore.
- Remove unnecessary restriction of FWSTMAXCHUNK.
- Don't set root node for phy config packet if the root node is
not cycle master capable but set myself for root node.
We should be the root node after next bus reset.

Spotted by: Yoshihiro Tabira <tabira@scd.mei.co.jp>
- Improve self id handling

Tested on: i386, sparc64 and i386 with forced bounce buffer


113473 14-Apr-2003 ticso

add EHCI (USB 2.0) controller support.

Approved by: joe
gallatin (mentor)
Obtained from: NetBSD


113429 13-Apr-2003 fjoe

Driver for Granch SBNI16 SHDSL modem

Submitted by: Denis I. Timofeev <timofeev@granch.ru>
MFC after: 1 week


113423 13-Apr-2003 nyan

The dpt, ex and idt modules are for i386 only.


113205 07-Apr-2003 mdodd

- Add PCI support (Adaptec AHA-2920/A,Future Domain TMC-18XX/3260).
- Reduce duplicated code.

PR: 50427
Submitted by: Bob Bishop <rb@gid.co.uk>


112806 29-Mar-2003 mdodd

opt_geom.h is no longer required for this module.


112805 29-Mar-2003 mdodd

Add 'idt' driver to module build.


112803 29-Mar-2003 mdodd

Add module infrastructure for 'dpt' driver.


112802 29-Mar-2003 mdodd

Add module infrastructure for 'if_ex'.


112798 29-Mar-2003 mdodd

Add module infrastructure for 'vpd' and 'smbios' and move 'smbios'
to new home.


112793 29-Mar-2003 mdodd

Add module infrastructure for elink.


112792 29-Mar-2003 mdodd

Add module infrastructure for if_ie.


112785 29-Mar-2003 mdodd

'speaker' not 'atspeaker'


112784 29-Mar-2003 mdodd

Retire 'atspeaker' and 'pcspeaker'. We'll use 'speaker' which
is the same as the config device directive.

Reminded by: Takahashi Yoshihiro <nyan@jp.FreeBSD.org>


112590 25-Mar-2003 mdodd

Merge PC98 support.


112567 24-Mar-2003 mdodd

I seem to have forgotten this. Sorry.


112551 24-Mar-2003 mdodd

Use repo-copied files in sys/i386/bios.


112303 15-Mar-2003 mdodd

Don't build if_iso88025subr.c into the oltr module.


112146 12-Mar-2003 ru

Simplify the assignment statement.


112127 11-Mar-2003 sam

fix module building; drivers now require opt_{ubsec,hifn}.h


112103 11-Mar-2003 sam

FIPS 140-2 rng data tester for h/w crypto devices. This driver periodically
monitors the entropy data harvested by crypto drivers to verify it complies
with FIPS 140-2. If data fails any test then the driver discards it and
commences continuous testing of harvested data until it is deemed ok.
Results are collected in a statistics block and, optionally, reported on
the console. In normal use the overhead associated with this driver is
not noticeable.

Note that drivers must (currently) be compiled specially to enable use.

Obtained from: original code by Jason L. Wright


112041 09-Mar-2003 akiyama

Fix device freeze to reduce output packet size.
And make this value configurable by kernel config or sysctl.


112031 09-Mar-2003 nyan

Build the drm module also on pc98.


112015 09-Mar-2003 anholt

Update the DRM to latest from DRI CVS. This is approximately the version
included in XFree86 4.3, but includes some fixes. Notable changes include
Radeon 8500-9100 support, PCI Radeon/Rage 128 support, transform & lighting
support for Radeons, and vblank syncing support for r128, radeon, and mga.
The gamma driver was removed due to lack of any users.


112008 08-Mar-2003 jlemon

Fix module build by adding options to Makefile.


111926 05-Mar-2003 peter

Finish driving a stake through the heart of netns and the associated
ifdefs scattered around the place - its dead Jim!

The SMB stuff had stolen AF_NS, make it official.


111899 05-Mar-2003 das

Make TTYHOG tunable.

Reviewed by: mike (mentor)


111771 02-Mar-2003 rwatson

A cute yet small MAC policy that provides a simple ACL mechanism to
permit users and groups to bind ports for TCP or UDP, and is intended
to be combined with the recently committed support for
net.inet.ip.portrange.reservedhigh. The policy is twiddled using
sysctl(8). To use this module, you will need to compile in MAC
support, and probably set reservedhigh to 0, then twiddle
security.mac.portacl.rules to set things as desired. This policy
module only restricts ports explicitly bound using bind(), not
implicitly bound ports where the port number is selected by the
IP stack. It appears to work properly in my local configuration,
but needs more broad testing.

A sample policy might be:

# sysctl security.mac.portacl.rules="uid:425:tcp:80,uid:425:tcp:79"

This permits uid 425 to bind TCP sockets to ports 79 and 80. Currently
no distinction is made for incoming vs. outgoing ports with TCP,
although that would probably be easy to add.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, Network Associates Laboratories


111631 27-Feb-2003 markm

This is not going to win prizes for the most useful module ever,
but it is useful to me for some testing and warns-fixing.


111624 27-Feb-2003 ru

Hook up the if_my module to the build.


111610 27-Feb-2003 tjr

Build the ncp and nwfs modules again, but only on i386 for now.


111539 26-Feb-2003 scottl

Revert the use of -g that leaked in.


111528 26-Feb-2003 scottl

Introduce a new taskqueue that runs completely free of Giant, and in
turns runs its tasks free of Giant too. It is intended that as drivers
become locked down, they will move out of the old, Giant-bound taskqueue
and into this new one. The old taskqueue has been renamed to
taskqueue_swi_giant, and the new one keeps the name taskqueue_swi.


111457 25-Feb-2003 marcel

Remove support for running in SimOS. The support has rotted over
time and there's no indication that it will improve anytime soon.
By removing support for SimOS it is possible to build LINT on
Alpha, which is considered more important at the moment.

Not objected to on: alpha@


110844 14-Feb-2003 anholt

Split the arch-specific AGP files into the appropriate files.* and do the same
for the agp module, and add agp to the list of modules to compile for alpha.
Add an alpha_mb() to agp_flush_cache for alpha -- it's not correct but may
improve the situation, and it's what linux and NetBSD do.


110821 13-Feb-2003 peter

We only provide agp drivers for the intel chipsets, move the agp
subdir to the i386-only section.


110799 13-Feb-2003 simokawa

Remove unnecessary EXPORT_SYMS.


110502 07-Feb-2003 nyan

pci_if.h is not needed.


110499 07-Feb-2003 nyan

- Clean up ISA DMA supports.
- Rename all sndbuf_isadma* functions to sndbuf_dma* and move them into
sys/dev/sound/isa/sndbuf_dma.c.

No response from: sound


110498 07-Feb-2003 nyan

isa_if.h is not needed.

No response from: sound


110409 05-Feb-2003 ambrisko

Take the rc4 code out of ng_mppc module so we don't fail to load when
we have the rc4 code already in the kernel (via wlan stuff or awi).
Add a dependency on the rc4 module so if it doesn't exist then load it.

Reviewed by: archie


110295 03-Feb-2003 ume

Add IPv6 support for Linuxlator.

Reviewed by: dwmalone
MFC after: 10 days


110285 03-Feb-2003 nyan

Add CanBe power management controller support.

Submitted by: KIYOHARA Takashi <kiyohara@kk.iij4u.or.jp>


109818 25-Jan-2003 orion

Add ac97_patch.[ch] that provide space for ac97 codec specific patches.


109771 24-Jan-2003 fjoe

- add support for IPX (tested with mount -t nwfs and mars_nwe),
IP fast forwarding, SIOCGIFADDR, setting hardware address (not currently
enabled in cm driver), multicasts (experimental)
- add ARC_MAX_DATA, use IF_HANDOFF, remove arc_sprintf() and some unused
variables
- if_simloop logic is made more similar to ethernet
- drop not ours packets early (if we are not in promiscous mode)

Submitted by: mark tinguely (partially)


109708 22-Jan-2003 gibbs

Update GENSRCS and aicasm options correctly depending on whether register
pretty printing is enabled

Add a dependency on the source files for aicasm so that it will be rebuilt
if out of date.

Simplify.


109617 21-Jan-2003 jake

Run kldxref on sparc64, it works now.


109514 19-Jan-2003 obrien

Remove miidevs.h and generate it from miidevs at compile time.
The devlist2h.awk tool to do this has been repocopied to sys/tools/.


109412 17-Jan-2003 mdodd

A driver for the System Management Application Program
Interface (SMAPI) BIOS, which is present on some IBM
Thinkpad models (560, 600, 770 to name a few.)

The SMAPI BIOS provides access to System Information,
System Configuration, and Power Management.


109325 15-Jan-2003 sam

remove wi-specific host ap code; the wi driver now depends on the
wlan module for 802.11 core support


109321 15-Jan-2003 sam

hookup wlan and rcv4 modules to the build

Reviewed by: imp


109320 15-Jan-2003 sam

add module for 802.11 link layer code

Reviewed by: imp


109318 15-Jan-2003 sam

make rc4 crypto support a module so other modules can depend on it

Submitted by: imp
Reviewed by: imp


109167 13-Jan-2003 phk

Add opt_geom.h to the list.


109019 09-Jan-2003 obrien

Build gem(4) on powerpc also.


109018 09-Jan-2003 obrien

Moved if_hme to hme.
(I need a score card to keep track of the /sys layout fights)


109017 09-Jan-2003 obrien

Add an hme(4) module.

PR: 46871
Submitted by: Hartmut Brandt <brandt@fokus.gmd.de>


108977 09-Jan-2003 tmm

Include if_hme_sbus.c, so that the module can also be used on sbus
machines. Remove opt_bdg.h, which is not needed.


108965 08-Jan-2003 tmm

Build a gem module, for sparc64 only for now.


108957 08-Jan-2003 obrien

Add an hme(4) module.

PR: 46871
Submitted by: Hartmut Brandt <brandt@fokus.gmd.de>


108655 04-Jan-2003 simokawa

- Replace printf() with device_printf().
- Separate fc->dev (i.e. fwohci0) and fc->bdev (i.e. firewire0).
- Remove unused firewirebusreg.h.
- Reduce size of descriptor block for asynchronous transmit and
check the number of descriptor when copying from mbuf.
- Skip mbuf whose length is zero. NFS seems passing such mbuf and
some chips generates unrecoverable error.


108503 31-Dec-2002 simokawa

- Implement primal Configuration ROM parser.
- Support multiple LUNs for SBP-II.


108241 23-Dec-2002 julian

Make it work -current style.


107843 14-Dec-2002 tjr

libmchain no longer exports m_fixhdr(); remove it from EXPORT_SYMS.


107840 13-Dec-2002 scottl

Move the amd(4) driver to it's own directory in preparation for it growing
an sbus front-end.


107804 13-Dec-2002 jake

Don't run kldxref when installing modules on sparc64. kldxref and the whole
module dependency system rely on linker behaviour that is machine dependent
and not part of the elf spec, and only work by accident on other platforms.

Approved by: re


107679 08-Dec-2002 rwatson

Correct alphabetization of awi entry.

Inane act of: re
Spotted by: bde


107675 08-Dec-2002 rwatson

Move the awi module build dependency into the MACHINE_ARCH=i386 entry.


107669 07-Dec-2002 rwatson

Hook up the awi module for build on i386 and pc98, which appear to be
the supported platforms. We build it into GENERIC, and it is currently
listed on the supported module list for drivers.conf on i386, which
breaks the release build. This may fix the release build for RC1 on
i386.

Conspiracy of: re


107548 03-Dec-2002 rwatson

Unhook the old LOMAC module, now replaced with mac_lomac.

Approved by: re (jhb)
Obtained from: TrustedBSD Project
Sponsored by: DARPA, Network Associates Laboratories


107457 01-Dec-2002 nyan

Add Makefile.inc to include ../Makefile.inc.

Approved by: re (rwatson)


107281 26-Nov-2002 rwatson

Unhook LOMAC kernel module since the functionality is now provided by
the smaller, cleaner, less bit-rotted mac_lomac module.

Approved by: re
Obtained from: TrustedBSD Project
Sponsored by: DARPA, Network Associates Laboratories


107278 26-Nov-2002 rwatson

Hook up the mac_lomac module build.

Approved by: re
Obtained from: TrustedBSD Project
Sponsored by: DARPA, Network Associates Laboratories


107178 22-Nov-2002 njl

New SCSI target emulator code

This code allows a user program to enable target mode on a SIM and
then emulate any number of devices (disks, tape drives, etc.) All
decisions about device behavior (UA, CA, inquiry response) are left
to the usermode program and the kernel driver is merely a conduit
for CCBs. This enables multiple concurrent target emulators, each
using its own backing store and IO model.

Also included is a user program that emulates a disk (RBC) using a
file as a backing store. This provides functionality similar to
md(4) at the CAM layer.

Code has been tested on ahc(4) and should also work on isp(4) (and
other SIMs that gain target mode support). It is a complete rewrite
of /sys/cam/scsi_target* and /usr/share/examples/scsi_target.

Design, comments from: gibbs
Supported by: Cryptography Research
Approved by: re


107140 21-Nov-2002 scottl

Hook the RAIDFrame module up to the build

Approved by: re


107131 21-Nov-2002 imp

Fix make buildkernel.

These makefiles work when building in the sys/modules directory, but
not with the objdir stuff that buildkernel uses. This is because they
used -I../../../blah rather than -I${.CURDIR}/../../../blah.

# I didn't fix the abuse of CFLAGS to specify -g since I wanted the
# barest minimal change since we're in a code freeze.

Approved by: make buildkernel...
Hat for armchair anarchists: core member fixing src tree damage


107125 21-Nov-2002 julian

Make the bluetooth modules

Approved by: re


107120 20-Nov-2002 julian

The second try a committing the bluetooth code
Has been seen to work on several cards and communicating with
several mobile phones to use them as modems etc.

We are still talking with 3com to try get them to allow us to include
the firmware for their pccard in the driver but the driver is here..
In the mean time
it can be downloaded from the 3com website and loaded using the utility
bt3cfw(8) (supplied) (instructions in the man page)

Not yet linked to the build

Submitted by: Maksim Yevmenkin <myevmenk@exodus.net>
Approved by: re


106863 13-Nov-2002 mux

Remove opt_pci.h from SRCS, it doesn't exist anymore.


106861 13-Nov-2002 mux

Remove opt_pci.h from SRCS.


106813 12-Nov-2002 simokawa

Split userland services to fwdev.c.


106766 11-Nov-2002 mux

Warning fixes.


106765 11-Nov-2002 mux

Warning fix.


106762 11-Nov-2002 mux

Don't override CWARNFLAGS in these Makefiles.


106759 11-Nov-2002 mux

Don't override CWARNFLAGS in this Makefile.


106658 08-Nov-2002 jhb

Make 3dfx i386-only. The memrange API it uses may be defined in an MI
header, but it is only implemented on i386.


106657 08-Nov-2002 jhb

Move rc(4) over to MI notes and enable it as a MI module.


106556 07-Nov-2002 jhb

Move firewire back to being MI.


106550 07-Nov-2002 jhb

Create a MACHINE_ARCH == i386 section that first lists modules common
to both i386 and pc98 and then uses MACHINE subsections to list modules
specific to i386/i386 and i386/pc98.


106539 06-Nov-2002 jhb

lnc(4) uses kvtop() and is thus i386-only for now.


106534 06-Nov-2002 jhb

Make firewire i386-only for now. It doesn't quite handle machines with
64-bit address spaces yet. Pointy hat to myself for sticking it in the MI
NOTES file to begin with.


106532 06-Nov-2002 jhb

ed(4) uses kvtop() and is thus i386-only. It has several other warnings
related to sizeof(int) != sizeof(void *), but kvtop() is much harder to
fix.

Approved by: imp


106497 06-Nov-2002 nyan

Move adding -DPC98 to CFLAGS from each modules to sys/modules/Makefile.inc.


106496 06-Nov-2002 nyan

Include "../Makefile.inc".


106449 05-Nov-2002 mdodd

- Convert to newbus, bus_space etc.
- Move to MI space.

Tested on: i386


106412 04-Nov-2002 rwatson

Permit MAC policies to instrument the access control decisions for
system accounting configuration and for nfsd server thread attach.
Policies might use this to protect the integrity or confidentiality
of accounting data, limit the ability to turn on or off accounting,
as well as to prevent inappropriately labeled threads from becoming nfs
server threads.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, Network Associates Laboratories


106389 03-Nov-2002 scottl

Hook the aic7xxx modules up. This requires some extra care since aicasm
is a compiler tool and needs to be compiled by the host compiler. I've
tested this in i386->sparc cross-build, 4.7->current upgrade, normal
buildkernel target, and normal /sys/i386/compile/GENERIC configurations.

Submitted by: ru


106375 03-Nov-2002 simokawa

Enable if_fwe.


106266 31-Oct-2002 julian

Add the netgraph 'source' module.
This is NOT YET CONVERTED TO -current.
This node is a source for preprogrammed packets at a known rate for testing.

I will convert it to -current "in place" but will MFC teh original
pre-conversion variant as that is what is originally submitted.
Man page my me, info from Dave's README.

Submitted by: Dave Chapeskie <dchapeskie@SANDVINE.com>
Obtained from: Sandvine inc.
MFC after: 1 week


106260 31-Oct-2002 jhb

Add an isp(4) module. sbus support is only compiled in on sparc64.
pci support is always compiled in.


106258 31-Oct-2002 jhb

Add a module for mpt(4).


106235 31-Oct-2002 nyan

Rename the speaker device for pc98 to 'pcspeaker'.


106159 29-Oct-2002 julian

Finally get around to committing Bill Paul's FEC netgraph nodes.
These are really only partly netgraph nodes as they do not use the
netgraph interfaces for many of the functions for which they could
be used, however they represent important functionality.

Submitted by: wpaul
MFC after: 2 days


106048 27-Oct-2002 mux

Don't roll our own clean target, the default one
works better.


106038 27-Oct-2002 mux

- Comment a line which sets CISS_DEBUG by default.
- Use -DCISS_DEBUG rather than -DCISS_DEBUG=0.


105988 26-Oct-2002 rwatson

Slightly change the semantics of vnode labels for MAC: rather than
"refreshing" the label on the vnode before use, just get the label
right from inception. For single-label file systems, set the label
in the generic VFS getnewvnode() code; for multi-label file systems,
leave the labeling up to the file system. With UFS1/2, this means
reading the extended attribute during vfs_vget() as the inode is
pulled off disk, rather than hitting the extended attributes
frequently during operations later, improving performance. This
also corrects sematics for shared vnode locks, which were not
previously present in the system. This chances the cache
coherrency properties WRT out-of-band access to label data, but in
an acceptable form. With UFS1, there is a small race condition
during automatic extended attribute start -- this is not present
with UFS2, and occurs because EAs aren't available at vnode
inception. We'll introduce a work around for this shortly.

Approved by: re
Obtained from: TrustedBSD Project
Sponsored by: DARPA, Network Associates Laboratories


105849 24-Oct-2002 marcel

Build the following modules on ia64 as well:
ar, asr, bktr, cardbus, cbb, ep, exca, hea, hfa, ipfilter, lomac,
netgraph, pccard, rc, sound, sppp, vinum.


105845 24-Oct-2002 kris

Remove gcc-specific optimization/debugging CFLAGS


105841 24-Oct-2002 rwatson

Commit of Makefile missed in earlier pass.

Submitted by: kuriyama


105827 23-Oct-2002 rwatson

Provide a simple sample labeled access control policy, mac_partition.
This policy can be loaded dynamically, and assigns each process a
partition number, as well as permitting processes to operate outside
the partition. Processes contained in a partition can only "see"
processes inside the same partition, so it's a little like jail.
The partition of a user can be set using the label mechanisms in
login.conf. This sample policy is a good starting point for developers
wanting to learn about how to produce labeled policies, as it labels
only one kernel object, the process credential.

PR:
Submitted by:
Reviewed by:
Approved by:
Obtained from: TrustedBSD Project
Sponsored by: DARPA, Network Associates Laboratories


105806 23-Oct-2002 jhb

- New-bussify the rc(4) device driver.
- Add detach support to the driver so that you can kldunload the module.
Note that currently rc_detach() fails to detach a unit if any of its
child devices are open, thus a kldunload will fail if any of the tty
devices are currently open.
- sys/i386/isa/ic/cd180.h was moved to sys/dev/ic/cd180.h as part of
this change.

Requested by: rwatson
Tested by: rwatson


105725 22-Oct-2002 rwatson

opt_mac.h is no longer required for any of these modules, remove from
the dependencies.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, Network Associates Laboratories


105594 21-Oct-2002 bde

Fixed some unsorting.


105588 20-Oct-2002 rwatson

Hook up opt_mac.h to the build dependencies. The way we currently
handle this stuff is dangerous. :-)

Obtained from: TrustedBSD Project
Sponsored by: DARPA, Network Associates Laboratories


105587 20-Oct-2002 rwatson

Add opt_mac.h to dependencies for if_stf.c module.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, Network Associates Laboratories


105552 20-Oct-2002 kan

Connect ubsa module to build.

Forgotten by: kan


105503 20-Oct-2002 scottl

After much delay and anticipation, welcome RAIDFrame into the FreeBSD
world. This should be considered highly experimental.

Approved-by: re


105419 18-Oct-2002 emoore

(1) added LSI Logic copyright, and legal line 3 in license, and string
changes for "LSILogic"
(2) enabled non-disk support through CAM interface
(3) HA_INQ (a) enabled tagged queuing (b) disable reset during
driver loading (b) renamed BSDi string to LSI
(4) disabled detecting disk devices during SCSI INQUIRY
(5) changed dcdb single element sglist to send one entire buffer chunk
(6) nsgelem not set in sglist
(7) ap_data_transfer_length not set for dcdb
(8) changed "struct thread" to "d_thread_t" for compatibliity { xxx_open,
xxx_close, xxx_ioctl }
(9) miscellaneous compatiblity fixes
(10) bug fix for 0x0409/0x1000 card
(11) added compiling amr_cam.c in sys/conf/files
(12) added compiling amr_cam.c in sys/modules/amr/Makefile

Reviewed by:ps
MFC after:1 week
1 week


105251 16-Oct-2002 markm

Module-ize the 'core' crypto stuff. This may still need to be compiled
into the kernel by default (if required), but other modules can now
depend() on this.

Fix inter-module dependancy.

Earlier version OK'ed by: sam


105115 14-Oct-2002 jhb

- Remove unused opt_foo.h headers.
- Don't mess with CFLAGS.
- Fix description of fwe module Makefile.


105094 14-Oct-2002 nyan

The ep and pccard modules build on pc98.


105062 13-Oct-2002 cognet

Connect trm(4) to the build.

Reviewed by: mux (mentor)
Approved by: mux (mentor)


104771 10-Oct-2002 kan

Allow ubsa(4) driver to be build as a kernel module.

Approved by: obrien


104594 07-Oct-2002 alfred

Disconnect "sem" module from the build.


104557 06-Oct-2002 mux

Oops. Actually connect back msdosfs to the build for every platform.

Spotted by: bde


104540 05-Oct-2002 mux

The msdosfs module now builds on sparc64. No idea if it works
though.


104494 05-Oct-2002 iwasaki

Add code for ACPI PCI link object manipulation.
This allocate the best IRQ to boot-disable devices (have IRQ 0).
Allocated IRQ will be used for PCI interrupt routing when ACPI is
enabled.

Note that verbose messaging enabled for the time being so that
people can easily notice the strange behavior if it happened.


104487 04-Oct-2002 sam

hookup new crypto support to the config/build process


104483 04-Oct-2002 sam

module for ubsec crypto driver


104482 04-Oct-2002 sam

module for hifn driver


104481 04-Oct-2002 sam

module for /dev/crypto support


104446 04-Oct-2002 mdodd

Turn on the mcd(4) module.


104445 04-Oct-2002 mdodd

newbus & bus_space the mcd(4) driver.


104366 02-Oct-2002 sobomax

Since bpf is no longer an optional component, remove associated ifdef's.

Submitted by: don't quite remember - the name of the sender disappeared
with the rest of my inbox. :(


104313 01-Oct-2002 jake

Moved the cam and cd9660 modules to the MI list. Don't build msdosfs or
syscons on sparc64; msdosfs will likely never work, syscons needs work.


104270 01-Oct-2002 imp

need exca too


104173 30-Sep-2002 mdodd

HARP driver for the IDT77201/211 NICStAR ATM Adapter (Including Fore LE155).

Obtained from: Richard Hodges <rh@matriplex.com>


103988 26-Sep-2002 imp

Add cardbus, cbb, ep and pccard. These can likely be moved to the MI
section, but I've not had a chance to build them on other
architectures recently enough to add them.


103952 25-Sep-2002 scottl

The AAC_COMPAT_LINUX option was really annoying, since it made the
aac driver dependent on the linux emulation module. This was
especially bad for the release engineers who tried to move the
aac driver from the kernel onto the drivers floppy. The linux
compat bits for this driver are now in their own driver, aac_linux.
It can be loaded as a module or compiled into the kernel. For
the latter case, the AAC_COMPAT_LINUX option is needed, along with
the COMPAT_LINUX option.

I've tested this in every configuration I can think of. This is an
MFC candidate for 4.7.

Idea from: rwatson
MFC after: 3 days


103870 23-Sep-2002 alfred

use __packed.


103770 22-Sep-2002 jake

Moved nfs_diskless setup code from autoconf.c to nfsclient/nfs_diskless.c
so that it is MI. Allow nfs_mountroot to return an error if the nfs_diskless
struct is not valid, rather than panicing later on. Call nfs_setup_diskless()
from nfs_mountroot if NFS_ROOT is defined, like bootpc_init(). Removed legacy
root mount support for sparc64, and enabled NFS_ROOT by default.


103743 21-Sep-2002 simokawa

Firewire can be built on other than i386 after sbp.c fix.

Tested on: Alpha (beast.freebsd.org)


103574 19-Sep-2002 alfred

Add the rest of the kernel support for the sem_ API in kern/uipc_sem.c.

Option 'P1003_1B_SEMAPHORES' to compile them in, or load the "sem" module
to activate them.

Have kern/makesyscalls.sh emit an include for sys/_semaphore.h into sysproto.h
to pull in the typedef for semid_t.

Add the syscalls to the syscall table as module stubs.


103436 17-Sep-2002 peter

Initiate deorbit burn for the i386-only a.out related support. Moves are
under way to move the remnants of the a.out toolchain to ports. As the
comment in src/Makefile said, this stuff is deprecated and one should not
expect this to remain beyond 4.0-REL. It has already lasted WAY beyond
that.

Notable exceptions:
gcc - I have not touched the a.out generation stuff there.
ldd/ldconfig - still have some code to interface with a.out rtld.
old as/ld/etc - I have not removed these yet, pending their move to ports.
some includes - necessary for ldd/ldconfig for now.

Tested on: i386 (extensively), alpha


103386 16-Sep-2002 nyan

Don't build unneeded modules for pc98.


103309 14-Sep-2002 mjacob

Put firewire under architectures it actually might conceivably
build on, let alone actually do some useful work on real hardware.

Namely, put it in i386/pc98. There is no bus_dma.h on the other architecures,
tra la.


103287 13-Sep-2002 ikob

Add firewire module


103285 13-Sep-2002 ikob

Initial import for IEEE1394 OHCI chipdet device driver and SBP-2 (Serial
Bus Protocol 2:SCSI over IEEE1394) support for CAM.


103226 11-Sep-2002 peter

I completely fubared this. An empty EXPORT_SYMS= is not valid. I know I
build this several times, and even tested loaded the module. I must have
changed something right before commit.

Pointed out by: bde


103178 10-Sep-2002 sobomax

Cosmetics: #define NETATALK --> #define NETATALK 1, so that it is in line with
other #define FOO.


103112 09-Sep-2002 imp

Remove duplicate entry. Since we call things cbb in the source, pccbb
is obsolete.


103089 08-Sep-2002 peter

opt_kstack_pages.h is not needed anymore. It would have been a Bad Thing
if it had been different to the running kernel.


103075 07-Sep-2002 tmm

Unbreak the modules build:
- add dependencies on opt_cpu.h and opt_kstack_pages.h to the linux module
Makefile in the i386 case. The latter is needed by an i386-only file, the
former by the i386 implementation of linux_sysvec.c (opt_cpu.h is used for
architecture-dependent options, so I added it only for i386, although this
file is also generated for the alpha).
- add a dependency on opt_kstack_pages.h to the pecoff module Makefile.


103053 07-Sep-2002 peter

Add the aout module subdir for the i386.


103052 07-Sep-2002 peter

Add an a.out exec module.


103029 06-Sep-2002 sobomax

Connect if_gre module to the build.


103028 06-Sep-2002 sobomax

Add if_gre module glue.


102902 03-Sep-2002 gibbs

Remove aic7xxx from the module build framework until all bootstrapping
issues are resolved.


102708 31-Aug-2002 gibbs

Add cleandepend target.


102703 31-Aug-2002 gibbs

Pass the cleandir target on to the aicasm Makefile. This should
fix the buildkernel target.


102690 31-Aug-2002 gibbs

Complete the hookup of ahd/ahc module building.


102490 27-Aug-2002 imp

Fix this pending the decision of which of the redundant
sys/modules/{pc,}cbb/Makefile to remove.


102483 27-Aug-2002 bde

Removed explicit rule for creating a null opt_bus.h. kmod.mk does this
automatically once opt_foo.h is in SRCS, modulo some carelessness in
removing garbage in stale versions of opt_foo.h (touch(1) should not
be used to create opt_foo.h in kmod.mk or elsewhere).

Cleaned up nearby rule for creating opt_ddb.h.


102460 26-Aug-2002 jhb

Have to create opt_bus.h for sys/bus.h to be happy. *sigh*

Noticed by: imp and others


102453 26-Aug-2002 jhb

Oops, forgot to hook up the ACPI PCI bus in the module.

Noticed by: imp


102449 26-Aug-2002 jhb

Hook up the new ACPI PCI bus and catch up to ACPI PCI bridge driver changes.


102202 20-Aug-2002 archie

Keep subdirectory list sorted.


102197 20-Aug-2002 archie

Add ng_l2tp module.


102181 20-Aug-2002 nyan

Remove duplicate vinum entry.


102048 18-Aug-2002 mike

Catch up to rev 1.8 of sys/alpha/osf1/osf1_mount.c.


102011 17-Aug-2002 orion

Support for VIA VT8233 audio controller.


101946 15-Aug-2002 alfred

Remove cam_extend.c from sources to unbreak modules.

Missed by: kern/39809,njl


101737 12-Aug-2002 rwatson

Depend on opt_mac.h.


101715 12-Aug-2002 alfred

add opt_mac.h to SRCS to unbreak module build.


101708 12-Aug-2002 rwatson

Add opt_mac.h to dependencies for svr4 module, since I'm about to
commit the MAC checks for it.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs


101703 11-Aug-2002 joe

Add the uftdi ucom driver which supports the following adapters:

Inland UAS111
QVS USC-1000
HP USB-Serial adapter shipped with some HP laptops

Submitted by: takawata
MFC After: 7 days


101588 09-Aug-2002 brooks

Make ppp(4) devices clonable and unloadable.


101410 06-Aug-2002 benno

Connect bmtphy to the mii module build.

Forgotten a long time ago by: benno


101246 03-Aug-2002 imp

We now have opt_wi.h, so go ahead and add it. Default it to 1.


101189 01-Aug-2002 rwatson

Introduce support for Mandatory Access Control and extensible
kernel access control.

Invoke appropriate MAC entry points for a number of VFS-related
operations in the Linux ABI module. In particular, handle uselib
in a manner similar to open() (more work is probably needed here),
as well as handle statfs(), and linux readdir()-like calls.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs


101172 01-Aug-2002 rwatson

Introduce support for Mandatory Access Control and extensible
kernel access control.

Hook up various policy modules to the kernel build.

Note that a number of these modules require futher entry point commits
in the remainder of the kernel to become fully functional, but enough
of the pieces are in place to allow experimentation.

Note also that it would be desirable to not build the mac_*.ko modules
if 'options MAC' is not defined in the kernel configuration, because
the resulting modules are not useful without the kernel option. There
doesn't appear to be precedent for a way to do this -- for example,
we allow ipfw.ko to be built even if 'options NETINET' isn't defined.
Suggests welcomed on the "best" way to do this.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs


101132 01-Aug-2002 rwatson

Introduce support for Mandatory Access Control and extensible
kernel access control.

Modify procfs so that (when mounted multilabel) it exports process MAC
labels as the vnode labels of procfs vnodes associated with processes.

Approved by: des
Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs


101131 01-Aug-2002 scottl

Allow the ahc and ahd drivers to be built as modules. This also
breaks the ahc driver into a core back-end and pci and eisa
front-ends.


101130 01-Aug-2002 rwatson

Introduce support for Mandatory Access Control and extensible
kernel access control.

Modify pseudofs so that it can support synthetic file systems with
the multilabel flag set. In particular, implement vop_refreshlabel()
as pn_refreshlabel(). Implement pfs_refreshlabel() to invoke this,
and have it fall back to the mount label if the file system does
not implement pn_refreshlabel() for the node. Otherwise, permit
the file system to determine how the service is provided.

Approved by: des
Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs


101113 31-Jul-2002 rwatson

The ppp and tunnel modules now rely on opt_mac.h. Missed in a previous
commit.

Submitted by: Anders Andersson <anders@hack.org>


100969 30-Jul-2002 iwasaki

Resolve conflicts arising from the ACPI CA 20020725 import.


100958 30-Jul-2002 joe

Commit a version of the uvisor driver for connecting Handspring
Visors via USB.

Submitted by: Chia-liang Kao <clkao@clkao.org>


100473 22-Jul-2002 peter

Remove bktr.h/NBKTR. Set BKTR_FREEBSD_MODULE in opt_bktr.h instead.


100447 21-Jul-2002 nsayer

Add uaudio -- a USB audio device driver.

This driver actually works slightly better on -stable than on -current
(the system locks on detach on -current), so it should be MFC'd somewhat
sooner.

This driver currently points out a difficulty in the sound device framework.
The PCM unregister routine is allowed to refuse the detach if the device is
in use. In the case of a USB device, however, this unregistration is much more
mandatory in nature, since the device is *actually* gone when this call is
made. The sound subsystem really should not refuse an unregistration and
should take its own steps to reject further I/O. As a result, if you detach
a USB sound device while it is in use, you can expect a panic shortly
thereafter.

This device cannot currently record audio. Some routines are unwritten as
of yet in uaudio.c to support recording.

This device hangs my -current box on detach. I don't know why. This does
not happen on my -stable machine.

Obtained from: Hiroyuki Aizu
MFC after: 2 weeks


100134 15-Jul-2002 alfred

Add IPv6 support.

Submitted by: Jean-Luc Richier <Jean-Luc.Richier@imag.fr>


100082 15-Jul-2002 markm

Upgrade the random device to use a "real" hash instead of building
one out of a block cipher. This has 2 advantages:
1) The code is _much_ simpler
2) We aren't committing our security to one algorithm (much as we
may think we trust AES).

While I'm here, make an explicit reseed do a slow reseed instead
of a fast; this is in line with what the original paper suggested.


99682 09-Jul-2002 iwasaki

Resolve conflicts arising from the ACPI CA 20020611 import.


99100 30-Jun-2002 iedowse

Add a makefile for building UFS as a module. Since it is of marginal
use it is not built by default, and there are currently bugs that
prevent UFS from being unloaded. Nevertheless it can be useful when
developing UFS code on network-booted machines.


98963 28-Jun-2002 julian

bring Makefile up to date with new ipfw

Submitted by: luigi


98849 26-Jun-2002 ken

At long last, commit the zero copy sockets code.

MAKEDEV: Add MAKEDEV glue for the ti(4) device nodes.

ti.4: Update the ti(4) man page to include information on the
TI_JUMBO_HDRSPLIT and TI_PRIVATE_JUMBOS kernel options,
and also include information about the new character
device interface and the associated ioctls.

man9/Makefile: Add jumbo.9 and zero_copy.9 man pages and associated
links.

jumbo.9: New man page describing the jumbo buffer allocator
interface and operation.

zero_copy.9: New man page describing the general characteristics of
the zero copy send and receive code, and what an
application author should do to take advantage of the
zero copy functionality.

NOTES: Add entries for ZERO_COPY_SOCKETS, TI_PRIVATE_JUMBOS,
TI_JUMBO_HDRSPLIT, MSIZE, and MCLSHIFT.

conf/files: Add uipc_jumbo.c and uipc_cow.c.

conf/options: Add the 5 options mentioned above.

kern_subr.c: Receive side zero copy implementation. This takes
"disposable" pages attached to an mbuf, gives them to
a user process, and then recycles the user's page.
This is only active when ZERO_COPY_SOCKETS is turned on
and the kern.ipc.zero_copy.receive sysctl variable is
set to 1.

uipc_cow.c: Send side zero copy functions. Takes a page written
by the user and maps it copy on write and assigns it
kernel virtual address space. Removes copy on write
mapping once the buffer has been freed by the network
stack.

uipc_jumbo.c: Jumbo disposable page allocator code. This allocates
(optionally) disposable pages for network drivers that
want to give the user the option of doing zero copy
receive.

uipc_socket.c: Add kern.ipc.zero_copy.{send,receive} sysctls that are
enabled if ZERO_COPY_SOCKETS is turned on.

Add zero copy send support to sosend() -- pages get
mapped into the kernel instead of getting copied if
they meet size and alignment restrictions.

uipc_syscalls.c:Un-staticize some of the sf* functions so that they
can be used elsewhere. (uipc_cow.c)

if_media.c: In the SIOCGIFMEDIA ioctl in ifmedia_ioctl(), avoid
calling malloc() with M_WAITOK. Return an error if
the M_NOWAIT malloc fails.

The ti(4) driver and the wi(4) driver, at least, call
this with a mutex held. This causes witness warnings
for 'ifconfig -a' with a wi(4) or ti(4) board in the
system. (I've only verified for ti(4)).

ip_output.c: Fragment large datagrams so that each segment contains
a multiple of PAGE_SIZE amount of data plus headers.
This allows the receiver to potentially do page
flipping on receives.

if_ti.c: Add zero copy receive support to the ti(4) driver. If
TI_PRIVATE_JUMBOS is not defined, it now uses the
jumbo(9) buffer allocator for jumbo receive buffers.

Add a new character device interface for the ti(4)
driver for the new debugging interface. This allows
(a patched version of) gdb to talk to the Tigon board
and debug the firmware. There are also a few additional
debugging ioctls available through this interface.

Add header splitting support to the ti(4) driver.

Tweak some of the default interrupt coalescing
parameters to more useful defaults.

Add hooks for supporting transmit flow control, but
leave it turned off with a comment describing why it
is turned off.

if_tireg.h: Change the firmware rev to 12.4.11, since we're really
at 12.4.11 plus fixes from 12.4.13.

Add defines needed for debugging.

Remove the ti_stats structure, it is now defined in
sys/tiio.h.

ti_fw.h: 12.4.11 firmware.

ti_fw2.h: 12.4.11 firmware, plus selected fixes from 12.4.13,
and my header splitting patches. Revision 12.4.13
doesn't handle 10/100 negotiation properly. (This
firmware is the same as what was in the tree previously,
with the addition of header splitting support.)

sys/jumbo.h: Jumbo buffer allocator interface.

sys/mbuf.h: Add a new external mbuf type, EXT_DISPOSABLE, to
indicate that the payload buffer can be thrown away /
flipped to a userland process.

socketvar.h: Add prototype for socow_setup.

tiio.h: ioctl interface to the character portion of the ti(4)
driver, plus associated structure/type definitions.

uio.h: Change prototype for uiomoveco() so that we'll know
whether the source page is disposable.

ufs_readwrite.c:Update for new prototype of uiomoveco().

vm_fault.c: In vm_fault(), check to see whether we need to do a page
based copy on write fault.

vm_object.c: Add a new function, vm_object_allocate_wait(). This
does the same thing that vm_object allocate does, except
that it gives the caller the opportunity to specify whether
it should wait on the uma_zalloc() of the object structre.

This allows vm objects to be allocated while holding a
mutex. (Without generating WITNESS warnings.)

vm_object_allocate() is implemented as a call to
vm_object_allocate_wait() with the malloc flag set to
M_WAITOK.

vm_object.h: Add prototype for vm_object_allocate_wait().

vm_page.c: Add page-based copy on write setup, clear and fault
routines.

vm_page.h: Add page based COW function prototypes and variable in
the vm_page structure.

Many thanks to Drew Gallatin, who wrote the zero copy send and receive
code, and to all the other folks who have tested and reviewed this code
over the years.


98402 18-Jun-2002 julian

A node that creates a device entry in /dev (yay devfs)
so that /dev/mumble can be the entrypoint to some networking graph,
e.g. a tunnel or a remote tape drive or whatever...

Not fully tested (by me) yet.

Submitted by: Mark Santcroos <marks@ripe.net>
MFC after: 3 weeks


98325 17-Jun-2002 jhay

sppp needs slcompress.c nowadays.

PR: 39369


97785 03-Jun-2002 pdeuskar

Added support for 82545EM and 82546EB based adapters.
Added Vlan support.

MFC after: 1 week


97759 03-Jun-2002 mdodd

Build a 'hea_pci' driver module.


97758 03-Jun-2002 mdodd

- Add 'hea'.
- Compile 'hfa' only on i386 (for now).


97613 30-May-2002 takawata

Make oldcard and newcard kernel module work.


97442 29-May-2002 marcel

Remove bktr for ia64. Same problem as vinum. See PR 38678.


97441 29-May-2002 marcel

Vinum doesn't build on ia64.
See PR: 38678


96902 19-May-2002 marcel

Remove asr from the ia64 build. Its use of KERNBASE appears i386
specific by way of which headers are being included (and headers
not included).


96890 19-May-2002 marcel

Hook up the new linux_ptrace implementation.

PR: 33299
Submitted by: Alexander N. Kabaev <ak03@gte.com>


96749 16-May-2002 iedowse

Complete the separation of ext2fs from ufs by copying the remaining
shared code and converting all ufs references. Originally it may
have made sense to share common features between the two filesystems,
but recently it has only caused problems, the UFS2 work being the
final straw.

All UFS_* indirect calls are now direct calls to ext2_* functions,
and ext2fs-specific mount and inode structures have been introduced.


96566 14-May-2002 ru

Check that kldxref(8) exists before running it.


95836 01-May-2002 peter

Zap KMODDEPS entries so that people do not wonder why it isn't working on
-current.

Apolgies to: anhold


95666 28-Apr-2002 des

Move drm to the i386-only section.


95611 28-Apr-2002 scottl

Nuke -g


95607 28-Apr-2002 anholt

Hook the DRM up to the build and add it to NOTES.

Approved by: des


95586 27-Apr-2002 anholt

Add makefiles for DRM modules

Approved by: des


95536 27-Apr-2002 scottl

Add a CAM interface to the aac driver. This is useful in case you should
ever connect a SCSI Cdrom/Tape/Jukebox/Scanner/Printer/kitty-litter-scooper
to your high-end RAID controller. The interface to the arrays is still
via the block interface; this merely provides a way to circumvent the
RAID functionality and access the SCSI buses directly. Note that for
somewhat obvious reasons, hard drives are not exposed to the da driver
through this interface, though you can still talk to them via the pass
driver. Be the first on your block to low-level format unsuspecting
drives that are part of an array!

To enable this, add the 'aacp' device to your kernel config.

MFC after: 3 days


95075 19-Apr-2002 semenu

Move tx(4) driver to sys/dev/tx. BTW split hardware structures and constants
into if_txreg.h.

MFC after: 1 week


95040 19-Apr-2002 marcel

Build modules on ia64:
o Make the cam, cd9660 lomac and sound modules i386 and alpha
specific due to link problems (@gprel relocation when @ltoff
is required). Once resolved, these can be moved back to the
generic list.
o Build linprocfs only on those architectures that have the
linux module.
o Make the sppp module i386 and alpha specific due to compile
problems (pointers as switch cases). Once resolved, this can
be moved back to the generic list.
o Build all i386 specific modules, with the exception of those
mentioned above as being moved from the generic list to the
i386 list and those with dependencies on the linux module (aac)
or i386 dependent (ar, apm, atspeaker, fpu, gnufpu, ibcs2,
linux, ncv, nsp, netgraph, oltr, pecoff, s3, sbni, stg and
vesa).
o Don't build acpi as a module yet. It most be ported first.
Once ported, it can be added to the ia64 list.
o Don't build ipfilter yet due to compile errors (osreldate.h
not found).


94898 17-Apr-2002 mdodd

- Convert the 'hfa' ATM interface driver to newbus.
- Add stubs for EISA and SBUS cards.
(VME, FutureBUS, and TurboChannel stubs not provided.)
- Add infrastructure to build driver and bus front-end modules.


94875 16-Apr-2002 julian

This time get it right


94872 16-Apr-2002 julian

Makefile for the myson driver.


94663 14-Apr-2002 scottl

Actually add the UDF files!


94658 14-Apr-2002 scottl

Add a filesystem driver for the Universal Disk Format. For more info,
see http://people.freebsd.org/~scottl/udf

MFC after: when asmodai gets the backport done
Prodded by: phk asmodai des


94487 12-Apr-2002 imp

-DWI_HOSTAP no longer needed


93611 02-Apr-2002 imp

First cut at breaking out the bus attachment from the bus independent
part of the driver. Also, move the softc and some other stuff to
if_wivar.h from if_wireg.h to make future merging activities easier.


93124 25-Mar-2002 obrien

Fix kernel build.


93023 23-Mar-2002 nsouch

Major rework of the iicbus/smbus framework:

- VIA chipset SMBus controllers added
- alpm driver updated
- Support for dynamic modules added
- bktr FreeBSD smbus updated but not tested
- cleanup


93011 23-Mar-2002 amorita

Add new graphical screen saver (dragon_saver).
Add support for NEC PC-9821 PEGC screen (fire/logo/rain/warp_saver).


92868 21-Mar-2002 ru

Replaced hacks in sbin/Makefile,v 1.99 and usr.sbin/Makefile,v 1.217
with the NO_IPFILTER make.conf(5) knob.

(So that we can "make the-rest-of-the-world" again.)


92603 18-Mar-2002 joe

Add a USB comm driver.

Ported from NetBSD by: akiyama


92581 18-Mar-2002 mux

Unbreak the build of smbfs.ko.

Reviewed by: sheldonh


91640 04-Mar-2002 iwasaki

Add generalized power profile code.
This makes other power-management system (APM for now) to be able to
generate power profile change events (ie. AC-line status changes), and
other kernel components, not only the ACPI components, can be notified
the events.

- move subroutines in acpi_powerprofile.c (removed) to kern/subr_power.c
- call power_profile_set_state() also from APM driver when AC-line
status changes
- add call-back function for Crusoe LongRun controlling on power
profile changes for a example


91609 04-Mar-2002 alfred

Support for USB fm radio.

Submitted by: David Yeske <dyeske@yahoo.com>


91365 27-Feb-2002 julian

turn on the ethertype filter module


91072 22-Feb-2002 des

(Belatedly) add the required EXPORT_SYMS. I'm not sure the list is complete,
but at least linprocfs works (I haven't had the opportunity to test other
stuff that depends on the linux module, like aac or tdfx)


90970 20-Feb-2002 shiba

Add a module of xe driver.

Approved by: imp


90789 17-Feb-2002 phk

Always build all modules for LINT


90706 15-Feb-2002 bde

Fix my recent breakage of some modules.


90441 10-Feb-2002 phk

It's OK to be pedantic, but long long literals are OK.


90223 04-Feb-2002 des

Move the pseudofs, procfs and linprocfs modules out from the fs directory.
Keeping them there seemed like a good idea at the time, but it annoys bde
and confuses people who do not understand how MODULES_OVERRIDE works.


89951 29-Jan-2002 imp

Module for exca. Eventually, this will be shared between pcic and pccbb.


89682 23-Jan-2002 cg

remove modules no longer built


89681 23-Jan-2002 cg

consolidate bits that don't need to be seperate modules into the modules
that want them


89580 20-Jan-2002 msmith

Add the 'iir' driver, for the Intel Integrated RAID controllers and
prior ICP Vortex models. This driver was developed by Achim Leubner
of Intel (previously with ICP Vortex) and Boji Kannanthanam of Intel.

Submitted by: "Kannanthanam, Boji T" <boji.t.kannanthanam@intel.com>
MFC after: 2 weeks


89443 17-Jan-2002 mjacob

Allow alpha kernels to compile again- make sure opt_ddb.h is included
and the reference to db_regs is *extern* from alpha/include/db_machdep.h
(put it in alpha/alpha/machdep.c)- this avoids the problems we've had
about different 'common' sizes prohibiting the kernel from linking.


89293 12-Jan-2002 archie

Export "ng_ether_enaddr_type" because the ng_bridge type uses it.


89271 11-Jan-2002 imp

I don't think that these modules should export symbols at all. All
intermodule communication is done via kobj calls. If anything
currently depends on them, let it break so that we can fix it. Maybe
we'll need to export some of the card_if.c or power_if.c symbols, but
I think those should be in the base kernel (since all *_if.c should be
in the base kernel for just these reasons).


89266 11-Jan-2002 bde

Fixed some style bugs (disordered SRCS and garbage comment near EOF).


89260 11-Jan-2002 ru

Drop <bsd.man.mk> support from <bsd.kmod.mk>.

Not objected to by: -current


89246 11-Jan-2002 sobomax

Export cd9660_wchar2char symbol, because we need it in the pluggable
unicode decoding klds (cd9660_unicode port).


89245 11-Jan-2002 msmith

Turn on unconditional symbol export for modules whose API is
not clear enough, will require additional analysis, or will
require some input from their maintainers.


89244 11-Jan-2002 msmith

Export symbols that constitute APIs defined by these
modules.

Note that in the case of 'mii' the API is not clearly
defined, and the symbols exported represent a subset
defined by current usage.


89188 10-Jan-2002 sheldonh

Back out previous revision, which will be applied directly to
the RELENG_4 branch when approved by the release engineers.


89181 10-Jan-2002 msmith

genassym depends on the presence of common variables, disable the use
of -fno-common in this case.


89167 09-Jan-2002 peter

Remove KMODDEPS, this is not used on -current and should not be left
around as a bad example.


89125 09-Jan-2002 sheldonh

Use KMODDEPS to document module dependencies on libiconv and
libmchain.

KMODDEPS seems to be a no-op in HEAD, but is required in RELENG_4,
where MODULE_DEPEND seems to be a no-op.

Therefore, this change is harmless in -CURRENT, but will fix the
dependencies when merged to RELENG_4, where they are currently not
registered!

PR: kern/33625
Submitted by: Joe Marcus Clarke <marcus@marcuscom.com>


89099 08-Jan-2002 fjoe

- generic Arcnet framework
- device driver for SMC COM90cx6 Arcnet network adapters

Obtained from: NetBSD


88633 29-Dec-2001 alfred

Make AIO a loadable module.

Remove the explicit call to aio_proc_rundown() from exit1(), instead AIO
will use at_exit(9).

Add functions at_exec(9), rm_at_exec(9) which function nearly the
same as at_exec(9) and rm_at_exec(9), these functions are called
on behalf of modules at the time of execve(2) after the image
activator has run.

Use a modified version of tegge's suggestion via at_exec(9) to close
an exploitable race in AIO.

Fix SYSCALL_MODULE_HELPER such that it's archetecuterally neutral,
the problem was that one had to pass it a paramater indicating the
number of arguments which were actually the number of "int". Fix
it by using an inline version of the AS macro against the syscall
arguments. (AS should be available globally but we'll get to that
later.)

Add a primative system for dynamically adding kqueue ops, it's really
not as sophisticated as it should be, but I'll discuss with jlemon when
he's around.


88420 22-Dec-2001 iwasaki

Add OS layer ACPI mutex and threading support.
- Temporary fix a bug of Intel ACPI CA core code.
- Add OS layer ACPI mutex support. This can be disabled by
specifying option ACPI_NO_SEMAPHORES.
- Add ACPI threading support. Now that we have a dedicate taskqueue for
ACPI tasks and more ACPI task threads can be created by specifying option
ACPI_MAX_THREADS.
- Change acpi_EvaluateIntoBuffer() behavior slightly to reuse given
caller's buffer unless AE_BUFFER_OVERFLOW occurs. Also CM battery's
evaluations were changed to use acpi_EvaluateIntoBuffer().
- Add new utility function acpi_ConvertBufferToInteger().
- Add simple locking for CM battery and temperature updating.
- Fix a minor problem on EC locking.
- Make the thermal zone polling rate to be changeable.
- Change minor things on AcpiOsSignal(); in ACPI_SIGNAL_FATAL case,
entering Debugger is easier to investigate the problem rather than panic.


88308 20-Dec-2001 pdeuskar

-Remove unneeded include stddef.h
-Modify modules Makefile so that em driver compiles only on
i386 platform. (Alpha not supported yet)

PR: kern/32993
MFC after: 1


87985 15-Dec-2001 non

Add modules of scsi_low based SCSI drivers ncv, nsp, stg, and common
part scsi_low.

Submitted-by: takawata


87984 15-Dec-2001 non

Add module directories and makefiles for ncv, nsp, stg and scsi_low
KLD modules.

Submitted-by: takawata


87727 12-Dec-2001 sheldonh

Connect libiconv to the build.

Recent work by fjoe and bp has fixed smbfs. The smbfs module
can now be loaded once libiconv and libmchain have been loaded,
and works!


87385 05-Dec-2001 imp

Use new location for joy, plus list its new bus front ends.


87321 04-Dec-2001 des

Pseudofsize procfs(5).


87195 02-Dec-2001 bp

Enable build of smbfs. It works now as before on both UP and MP machines.


87189 02-Dec-2001 pdeuskar

This is the first commit of the Intel gigabit driver for
PRO/1000 cards.

Submitted by:Prafulla Deuskar
Reviewed by: Paul Saab
MFC after:1 week


87188 02-Dec-2001 msmith

Re-enable the ciss driver, now that it should be building again.


87062 28-Nov-2001 imp

Remove ciss from the modules build until the build issues are resolved.


87011 27-Nov-2001 msmith

Add the 'ciss' driver, which supports the Compaq SmartRAID 5* family of
RAID controllers (5300, 532, 5i, etc.)

Thanks to Compaq and Yahoo! for support during the development of this
driver.

MFC after: 1 week


86752 21-Nov-2001 fjoe

Add driver for Granch SBNI12-xx ISA and PCI network adapters.

MFC after: 1 week


86632 19-Nov-2001 green

Reference lomac in its new location.


86621 19-Nov-2001 green

The "lomac" module compiles fine on Alpha, too.

Tested by: wilko


86613 19-Nov-2001 green

Add module "lomac" to the modules Makefile, i386 section. If someone on
Alpha can verify that it compiles fine there, too, this should be moved
to the MI section (or that problem fixed); I've only had x86 hardware to
est with.

Sponsored by: DARPA, NAI Labs (CBOSS project)


86612 19-Nov-2001 green

Depend on vnode_if.h.


86582 19-Nov-2001 imp

Create a module for awi.


86573 19-Nov-2001 green

Add module compile framework for LOMAC.

Sponsored by: DARPA, NAI Labs (CBOSS project)


86538 18-Nov-2001 marcel

Pass maintainership over to emulation@FreeBSD.org. It has been fun,
but time and other interests is making it hard. Open the door for
new blood and fresh tactics now that the Linuxulator has had its
facelift.

Thanks to all who contributed during my tour of duty!


86410 15-Nov-2001 matusita

Add card_if.h to SRCS.

src/sys/dev/an/if_an_pccard.c rev 1.10 change requires to include
"card_if.h" but Makefile doesn't know about this file. Without this,
kernel build will fail at this driver.


86133 06-Nov-2001 iwasaki

Add S4BIOS sleep (BIOS hibernation) and DSDT overriding support.
- Add S4BIOS sleep implementation. This will works well if MIB
hw.acpi.s4bios is set (and of course BIOS supports it and hibernation
is enabled correctly).
- Add DSDT overriding support which is submitted by takawata originally.
If loader tunable acpi_dsdt_load="YES" and DSDT file is set to
acpi_dsdt_name (default DSDT file name is /boot/acpi_dsdt.aml),
ACPI CA core loads DSDT from given file rather than BIOS memory block.
DSDT file can be generated by iasl in ports/devel/acpicatools/.
- Add new files so that we can add our proposed additional code to Intel
ACPI CA into these files temporary. They will be removed when
similar code is added into ACPI CA officially.


85963 03-Nov-2001 phk

Clean up the bogus pci.h file we create.


85957 03-Nov-2001 phk

Add modules for lpt, plip, ppbus, ppi and pps.

Submitted by: j mckitrick <jcm@freebsd-uk.eu.org>


85760 31-Oct-2001 msmith

Update to reflect files added/removed with the 20011018 ACPI CA update.


85722 30-Oct-2001 julian

A node that allows ethernet type packets to be filtered to different
hooks depending on ethertype. Great for prototyping protocols.
connects to the lower and upper hooks of an ethernet type of node.

Obtained from: Monzoon Networks.
Thanks to Andre Oppermann, May 2001.


85621 28-Oct-2001 nyan

fixed to support pc98


85620 28-Oct-2001 nyan

Remove duplicate apm entry for pc98


85556 26-Oct-2001 iwasaki

Add APM compatibility feature to ACPI.
This emulates APM device node interface APIs (mainly ioctl) and
provides APM services for the applications. The goal is to support
most of APM applications without any changes.
Implemented ioctls in this commit are:
- APMIO_SUSPEND (mapped ACPI S3 as default but changable by sysctl)
- APMIO_STANDBY (mapped ACPI S1 as default but changable by sysctl)
- APMIO_GETINFO and APMIO_GETINFO_OLD
- APMIO_GETPWSTATUS

With above, many APM applications which get batteries, ac-line
info. and transition the system into suspend/standby mode (such as
wmapm, xbatt) should work with ACPI enabled kernel (if ACPI works well :-)

Reviewed by: arch@, audit@ and some guys


85428 24-Oct-2001 mjacob

Unbreak alpha builds.


85417 24-Oct-2001 ume

Make apm a module.
We need further work to be able to specify an equivalence of `flags 0x20'.
Many PCs should work for now. But, some PCs need `flags 0x20'.


85413 24-Oct-2001 nyan

Added the pmc driver which supports power management controller of
old NEC PC-98NOTE.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)
MFC after: 1 week


85288 21-Oct-2001 des

This module will soon need opt_linux.h (for <linux/linux_util.h>)


85261 20-Oct-2001 mjacob

remove wx


85260 20-Oct-2001 mjacob

Oops. Remove wx.


85141 19-Oct-2001 marcel

Build the linux module on Alpha again. Note that the linux module
is not added to the MI list of modules. The current state of
affairs is such that the linux module is the exception, not the
common case.


85135 19-Oct-2001 mjacob

Linux compiles broken on alpha again. Remove.


85132 19-Oct-2001 jlemon

Hook the gx module up to the build.


84783 10-Oct-2001 ps

Make MAXTSIZ, DFLDSIZ, MAXDSIZ, DFLSSIZ, MAXSSIZ, SGROWSIZ loader
tunable.

Reviewed by: peter
MFC after: 2 weeks


84528 05-Oct-2001 ps

Activate the bridge/dummynet modules.

Reminded by: ru


84516 05-Oct-2001 ps

Make it so dummynet and bridge can be loaded as modules.

Submitted by: billf


84499 04-Oct-2001 msmith

Update list of sources to match 20010920 snapshot.


84473 04-Oct-2001 ru

Removed mentions of TARGET_ARCH from non-cross places.


84154 30-Sep-2001 iedowse

Add a change I forgot when adding ED_NO_MIIBUS. This will likely
be backed out with the rest of ED_NO_MIIBUS when the general miibus
code makes proper use of newbus.


84059 27-Sep-2001 wpaul

Add device driver support for the Broadcom BCM570x family of gigabit
ethernet controllers. This adds support for the 3Com 3c996-T, the
SysKonnect SK-9D21 and SK-9D41, and the built-in gigE NICs on
Dell PowerEdge 2550 servers. The latter configuration hauls ass:
preliminary measurements show TCP speeds of over 900Mbps using
only normal size frames.

TCP/IP checksum offload, jumbo frames and VLAN tag insertion/stripping
are supported, as well as interrupt moderation.

Still need to fix autonegotiation support for 1000baseSX NICs, but
beyond that, driver is pretty solid.


84053 27-Sep-2001 brooks

Add ng_ip_input. A new netgraph node for queuing IP packets into the
main IP input processing code.


83998 26-Sep-2001 brooks

/home/brooks/ng_gif.message


83934 25-Sep-2001 brooks

Make faith loadable, unloadable, and clonable.


83768 21-Sep-2001 ru

Only call kldxref(8) once, after installing all modules.

OK'ed by: peter


83702 20-Sep-2001 peter

Add nfs_lock.c to the build list. *blush*


83685 20-Sep-2001 peter

I forgot to rm the nfs module directory.

Submitted by: mux@qualys.com


83651 18-Sep-2001 peter

Cleanup and split of nfs client and server code.
This builds on the top of several repo-copies.


83607 18-Sep-2001 ru

KLDMOD is not used since share/mk/bsd.kmod.mk,v 1.60.

Forgotten by: peter


83549 16-Sep-2001 nyan

Added pc98 support.


83500 15-Sep-2001 mr

Conditionalize building of ex2fs module by WANT_EXT2FS_MODULE


83398 13-Sep-2001 mr

Add ext2fs module


83366 12-Sep-2001 julian

KSE Milestone 2
Note ALL MODULES MUST BE RECOMPILED
make the kernel aware that there are smaller units of scheduling than the
process. (but only allow one thread per process at this time).
This is functionally equivalent to teh previousl -current except
that there is a thread associated with each process.

Sorry john! (your next MFC will be a doosie!)

Reviewed by: peter@freebsd.org, dillon@freebsd.org

X-MFC after: ha ha ha ha


83221 08-Sep-2001 marcel

Round of cleanups and enhancements. These include (in random order):

o Introduce private types for use in linux syscalls for two reasons:
1. establish type independence for ease in porting and,
2. provide a visual queue as to which syscalls have proper
prototypes to further cleanup the i386/alpha split.
Linuxulator types are prefixed by 'l_'. void and char have not
been "virtualized".

o Provide dummy functions for all syscalls and remove dummy functions
or implementations of truely obsolete syscalls.

o Sanitize the shm*, sem* and msg* syscalls.

o Make a first attempt to implement the linux_sysctl syscall. At this
time it only returns one MIB (KERN_VERSION), but most importantly,
it tells us when we need to add additional sysctls :-)

o Bump the kenel version up to 2.4.2 (this is not the same as the
KERN_VERSION MIB, BTW).

o Implement new syscalls, of which most are specific to i386. Our
syscall table is now up to date with Linux 2.4.2. Some highlights:
- Implement the 32-bit uid_t and gid_t bases syscalls.
- Implement a couple of 64-bit file size/offset bases syscalls.

o Fix or improve numerous syscalls and prototypes.

o Reduce style(9) violations while I'm here. Especially indentation
inconsistencies within the same file are addressed. Re-indenting
did not obfuscate actual changes to the extend that it could not
be combined.

NOTE: I spend some time testing these changes and found that if there
were regressions, they were not caused by these changes AFAICT.
It was observed that installing a RH 7.1 runtime environment
did make matters worse. Hangs and/or reboots have been observed
with and without these changes, so when it failed to make life
better in cases it doesn't look like it made it worse.


83151 06-Sep-2001 nyan

Use MACHINE_ARCH instead of MACHINE to fix pc98 module.


83125 05-Sep-2001 brooks

Attach if_vlan to the build process.


83124 05-Sep-2001 brooks

vlan.h is obsolete, don't create it anymore.


83122 05-Sep-2001 brooks

Update tx(4) to always enable vlan(4) support.

Approved by: semenu


83115 05-Sep-2001 brooks

Make vlan(4) loadable, unloadable, and clonable. As a side effect,
interfaces must now always enable VLAN support.

Reviewed by: jlemon
MFC after: 3 weeks


82937 04-Sep-2001 phk

Kill the NCCD constant by modernizing the ccd driver.

Submitted by: sobomax
Reviewed by: phk


82783 02-Sep-2001 shiba

Make the fe driver kernel object module to compile in default.

Reviewed by: imp


82578 30-Aug-2001 msmith

Remove old acpica module


82539 30-Aug-2001 msmith

Build the ACPI module by default.


82538 30-Aug-2001 msmith

Update for slightly changed ACPI OSD module. Make debugging code conditional
on ACPI_DEBUG, so we can set it in /etc/make.conf.


82518 29-Aug-2001 gallatin

Fix linux_getcwd() so that if the cwd isn't cached (__getcwd() fails),
the cwd is looked up inside the kernel. The native getcwd() in libc
handles this in userland if __getcwd() fails.

Obtained from: NetBSD via OpenBSD
Tested by: Chris Casey <chriss@phys.ksu.edu>, Markus Holmberg <markush@acc.umu.se>
Reviewed by: Darrell Anderson <anderson@cs.duke.edu>
PR: kern/24315


82454 28-Aug-2001 imp

wi driver now includes pci.h, so we need to generate it to generate it.


81593 13-Aug-2001 semenu

Add support for 802.1Q VLAN and oversized ethernet frames.

PR: kern/29235
Submitted by: Peter Jeremy <peter.jeremy@alcatel.com.au>
Reviewed by: Yar Tikhiy <yar@FreeBSD.org>
MFC after: 1 week


81325 09-Aug-2001 peter

Build modules from the main src/sys tree.
Tidy up some loose ends.. there were extra -I's being added to CFLAGS for
no reason.


80352 25-Jul-2001 fenner

Unbreak ip_mroute_mod


80348 25-Jul-2001 sheldonh

Add build infrastructure for a libiconv loadable kernel module.

This should allow the use of the smbfs module without the
requirement to rebuild the kernel with LIBICONV.


80322 25-Jul-2001 dd

sys/kern/tty_snoop.c is now sys/dev/snp/snp.c.

Repo-copy by: jdp


80308 25-Jul-2001 mjacob

Move netgraph to i386 only. Which is where it works only.


80305 24-Jul-2001 brooks

Make ng_split part of the module building process.

MFC after: 7 weeks


80220 23-Jul-2001 wpaul

Grrr. Module depends on vlan.h, and I committed the wrong version
of if_txpreg.h, which didn't have sc_rxbufprod defined in the softc
struct.


80219 23-Jul-2001 wpaul

You were knocked senseless by the Boomerang, spun around by the Cyclone,
blown over by the Hurricane and had a house dropped on you by the Tornado.
Now it's time to have your parade rained on by... the Typhoon!

This commit adds driver support for 3Com 3cR990 10/100 ethernet
adapters based on the Typhoon I and Typhoon II chipsets. This is actually
a port of the OpenBSD driver with many hacks by me.

No Virginia, there isn't any support for the hardware crypto yet. However
there is support for TCP/IP checksum offload and VLANs.

Special thanks go to Jason Wright, Aaron Campbell and Theo de Raadt for
squeezing enough info out of 3Com to get this written, and for doing
most of the hard work.

Manual page is included. Compiled as a module and included in GENERIC.


80028 20-Jul-2001 takawata

Add ACPI S2-S4BIOS Suspend/Resume code.
Some problems may remain.

Reviewed by:iwasaki


79967 19-Jul-2001 jlemon

Unconditinally turn on VLAN support when building fxp as a module, since
it may be plugged into a kernel that supports VLANs. If the kernel is
not VLAN aware, things will still work as before.

Modules don't really have option support, so this is somewhat of a hack.


79745 15-Jul-2001 brooks

Put module directories one per line so adding new modules creates readable
diffs and produces less conflicts with local source trees.


79695 14-Jul-2001 msmith

Merge with latest version of the Mylex 6+ driver.

- All sources are built in a single object, reducing namespace pollution.
- Kill the ready queue, and handle a busy response to mly_start in callers
rather than deferring the command.
- Improve our interaction with CAM:
- Don't advertise physical channels as SCSI busses by default.
- use the SIM queue freeze capability rather than queueing CDBs internally.
- force bus reprobe at module load time.
- Clean up more resources in mly_free.
- Tidy up debugging levels.
- Tidy up handling of events (mostly just code cleanliness).
- Use explanatory macros for operations on bus/target/channel numbers.


79415 08-Jul-2001 julian

turn on the null-modem device.
(I've been using it with vmware for over a year now.)


79410 07-Jul-2001 msmith

Ha! This time, I remembered the ACPI module. Update the sources list
to reflect recent changes in the code.


79207 04-Jul-2001 nyan

- Don't overwrite inb, inw and outw.
- Move the lance_probe function to if_lnc.c.
- Support C-NET(98)S again.

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata) and nyan
No response from: Paul Richards


79106 02-Jul-2001 brooks

gif(4) and stf(4) modernization:

- Remove gif dependencies from stf.
- Make gif and stf into modules
- Make gif cloneable.

PR: kern/27983
Reviewed by: ru, ume
Obtained from: NetBSD
MFC after: 1 week


79047 01-Jul-2001 cg

intel ich/ich2 driver - this needs some work but is functional enough for
the impatient.

Hardware...
Provided by: ps
Lost by: <censored>
Found by: <censored>
Not delivered by: Ashley Penney <ashp@unloved.org>
Retrieved by: greid, Andrew McKay <andy@openirc.co.uk>
Delivered by: Andrew McKay <andy@openirc.co.uk>

PR: kern/25507
Submitted by: Katsurajima Naoto <raven@katsurajima.seya.yokohama.jp>


78969 29-Jun-2001 joerg

Two more "oops"es here: i didn't mean to turn on fdc debugging by
default in the KLD, and to turn off pccard support, so reverse each of
the flags. Also, the flags should be overridable by /etc/make.conf.


78960 29-Jun-2001 joerg

Duh-oh! When beautifying a comment right before my last commit, i
didn't realize that make considers a comment with just leading white
space only an ``unassociated shell command''.


78953 29-Jun-2001 joerg

First stab at fixing resource deallocation, and implementing fdc(4) as
a KLD. Still doesn't work well except in the PCMCIA case (now if only
pccardd(8) could load and unload drivers dynamically...). Mainly, it
tries to find fdc0 on the PCI bus for whatever obscure reasons, but i
need someone who understands driver(9) to fix this. However, it's at least
already better than before, and i'm tired of maintaining too many private
changes in my tree, given the large patches bde submitted. :)

Idea of a KLD triggered by: Michael Reifenberger <root@nihil.plaut.de>


78930 28-Jun-2001 takawata

Follow Mike's commit by adding acpi_powerres.c.


78917 28-Jun-2001 dd

Remove dgm module.

Forgotten by: brian


78666 23-Jun-2001 cg

add sndstat.c so module users have /dev/sndstat again


78218 14-Jun-2001 joerg

Implement a loadable module for the oltr Olicom Token Ring driver. I
could only get a chance of testing it under 4.3, but together with the
if_oltr.c fixes at least it seems to work now. If someone has the chance
to test this under -current, please do.

Unfortunaltey, the TR code itself (if_iso88025subr.c) is not written
in a way that would allow to make a seaparate KLD out of it. By now,
just link it directly into the oltr KLD since it's probably the POLA
to be able to load the TR code together with the only TR hardware
driver we've got by now.

I've got one single unexplained panic (in doreti_switch or somewhere
there, calling a 0xc1XXXXXX address that did no longer belong to the
kernel at all) after unloading the modules once, thus i don't propose
a MFC of this module despite my testing has been done solely on 4.3,
unless someone is really going to test this stuff in -current.


78114 11-Jun-2001 des

Linprocfs builds on Alpha now.


78029 10-Jun-2001 des

Preemptive brucification.


78028 10-Jun-2001 des

Connect linprocfs to the build.


78023 10-Jun-2001 des

Disconnect linprocfs prior to moving it.


78005 10-Jun-2001 des

Connect the fs directory to the build.


78000 10-Jun-2001 des

Add a build directory and Makefile for pseudofs.


77884 07-Jun-2001 cg

enable vchan building


77854 07-Jun-2001 jlemon

Relocate IPFilter from sys/netinet to sys/contrib/ipfilter.


77577 01-Jun-2001 ru

- VFS_SET(msdos) -> VFS_SET(msdosfs)
- msdos.ko -> msdosfs.ko
- mount_msdos(8) -> mount_msdosfs(8)
- "msdos" -> "msdosfs" compatibility glue in mount(8)


77575 01-Jun-2001 ru

Remove vestiges of MFS.


77542 31-May-2001 wpaul

Add device driver support for the Level 1 LXT1001 NetCellerator
gigabit ethernet controller chip. This device is used on some
fiber optic gigE cards from SMC, D-Link and Addtron. Jumbograms and
TCP/IP checksum offload on receive are supported. Hardware VLAN
filtering is not, because it doesn't play well with our existing
VLAN code. Also add manual page.

There is a 4.x version of this driver available at
http://www.freebsd.org/~wpaul/Level1/4.x if anyone feels adventurous
and wants to test it. I still need to do performance testing and
tuning with this device.

(For my next trick, I will make the 3Com 3cR990 sit up and beg.)


77483 30-May-2001 takawata

Fix include path for recent acpica update.


77469 30-May-2001 dougb

Don't ask to build something that doesn't exist anymore.


77468 30-May-2001 dougb

Move the mfs deletion process down the road a few steps


77431 29-May-2001 msmith

New files for the ACPI CA 20010518 update.


77353 28-May-2001 ru

Name this module msdos.ko so that mount_msdos(8) can autoload
it with vfsload("msdos").

(The proper fix would be to rename the `msdos' file system to
`msdosfs' in VFS_SET(), and mount_msdos(8) to mount_msdosfs(8).
But that would break too many existing fstab(5) setups, and
would require a lot of unnecessary documentation and code
msdos -> msdosfs changes.)

Noticed by: markm


77223 26-May-2001 ru

- sys/n[tw]fs moved to sys/fs/n[tw]fs
- /usr/include/n[tw]fs moved to /usr/include/fs/n[tw]fs


77162 25-May-2001 ru

- sys/msdosfs moved to sys/fs/msdosfs
- msdos.ko renamed to msdosfs.ko
- /usr/include/msdosfs moved to /usr/include/fs/msdosfs


77103 23-May-2001 dd

Build snp(4) as a module.


77033 23-May-2001 ru

Name this module `umapfs'.


77031 23-May-2001 ru

- FDESC, FIFO, NULL, PORTAL, PROC, UMAP and UNION file
systems were repo-copied from sys/miscfs to sys/fs.

- Renamed the following file systems and their modules:
fdesc -> fdescfs, portal -> portalfs, union -> unionfs.

- Renamed corresponding kernel options:
FDESC -> FDESCFS, PORTAL -> PORTALFS, UNION -> UNIONFS.

- Install header files for the above file systems.

- Removed bogus -I${.CURDIR}/../../sys CFLAGS from userland
Makefiles.


77019 22-May-2001 dd

Add a makefile for snp(4) since it can be compiled as a module now.


76976 22-May-2001 grog

Add vinumobj.h to SRCS.


76848 19-May-2001 brian

digiio.h has moved to /usr/include/sys


76744 17-May-2001 bde

Backed out rev.1.8. Rev.1.8 was just to support a bogus unused include
in ng_tty.c.


76670 16-May-2001 imp

Catch up with some recent changes:
1) pcic_isa.c
2) For pc98, add mecia driver and -DPC98 to command line.
3) pcic_p.c -> pcic_pci.c


76529 13-May-2001 jlemon

Update makefile to reflect vlan support.


76522 12-May-2001 wpaul

Unbreak release. *sigh*


76479 11-May-2001 wpaul

Add support for gigabit ethernet cards based on the NatSemi DP83820
and DP83821 gigabit ethernet MAC chips and the NatSemi DP83861 10/100/1000
copper PHY. There are a whole bunch of very low cost cards available with
this chipset selling for $150USD or less. This includes the SMC9462TX,
D-Link DGE-500T, Asante GigaNIX 1000TA and 1000TPC, and a couple cards
from Addtron.

This chip supports TCP/IP checksum offload, VLAN tagging/insertion.
2048-bit multicast filter, jumbograms and has 8K TX and 32K RX FIFOs.
I have not done serious performance testing with this driver. I know
it works, and I want it under CVS control so I can keep tabs on it.
Note that there's no serious mutex stuff in here yet either: I need
to talk more with jhb to figure out the right way to do this. That
said, I don't think there will be any problems.

This driver should also work on the alpha. It's not turned on in
GENERIC.


76195 02-May-2001 brian

Add a ``digi'' driver.

This driver supports PCI Xr-based and ISA Xem Digiboard cards.
dgm will go away soon if there are no problems reported. For now,
configuring dgm into your kernel warns that you should be using
digi. This driver is probably close to supporting Xi, Xe and Xeve
cards, but I wouldn't expect them to work properly (hardware
donations welcome).

The digi_* pseudo-drivers are not drivers themselves but contain
the BIOS and FEP/OS binaries for various digiboard cards and are
auto-loaded and auto-unloaded by the digi driver at initialisation
time. They *may* be configured into the kernel, but waste a lot
of space if they are. They're intended to be left as modules.

The digictl program is (mainly) used to re-initialise cards that
have external port modules attached such as the PC/Xem.


76185 01-May-2001 schweikh

pseudo-device -> device in kernel config.
Reviewed by: joerg, dd


75907 24-Apr-2001 sheldonh

Revert previous delta, which was completely bogus.

The perceived problem was the symptom of a local error.


75902 24-Apr-2001 sheldonh

Disconnect linux from the build. The buildkernel target has been
breaking on linux for more than two days because sys_exit_args
referenced in linux_sysent.c does not exist.


75886 23-Apr-2001 orion

Add als4000 subdir.


75885 23-Apr-2001 orion

Initial version of Avance Logic ALS4000 pcm driver.


75813 21-Apr-2001 mjacob

add MARVELL to the list of phys to go into miibus


75651 18-Apr-2001 alfred

NFS module now requires nfs_lock.c


75550 16-Apr-2001 markm

Add missing sound module.

OK'ed by: cg


75541 16-Apr-2001 jhay

Move the isa parts to a separate file.


75511 14-Apr-2001 brian

dgm now builds as a module


75479 13-Apr-2001 bp

Add smbfs module. Currently it includes smbfs, netsmb and DES parts.
Kernel should be compiled with options LIBMCHAIN and LIBICONV.


75356 09-Apr-2001 mjacob

We now depend on miibus_if.h.


75335 09-Apr-2001 cg

enable the rate conversion feeder.

the main benefit this gives for now is that via686 audio devices on
motherboards with ac97 codecs that do not support vra will be able to use
sample rates other than 48khz.


75325 08-Apr-2001 obrien

Style fix.


75082 02-Apr-2001 imp

Add support for MODULES_OVERRIDE. This is a list of modules to build
instead of all of them. You can put this in /etc/make.conf or in
makeoptions.

Reviewed by: arch@

# docs to follow.


75062 01-Apr-2001 scottl

Make an attempt to get the asr driver to compile on Alpha by fixing some i386
specific bogons. Compile with -O0, as anything higher gives the compiler
a fit. No idea if this driver will actually work on Alpha, though.


74935 28-Mar-2001 alfred

Forgot to add pci_if.h to SRCS

Pointed out by: phk


74871 27-Mar-2001 cokane

Remove NOMAN


74761 24-Mar-2001 peter

Catch these modules up with obrien's recent cleanup commit.


74760 24-Mar-2001 peter

Drop 'KMODDEPS = snd_pcm' - it isn't used.


74759 24-Mar-2001 peter

Back out 'KMODDEPS = miibus' addition in last commit. This isn't used.


74443 19-Mar-2001 rwatson

o Adding UFS_EXTATTR support in MFS required the inclusion of opt_ufs.h.
I didn't realize we had an MFS module, so didn't update the
dependencies there to reflect opt_ufs.h.

Obtained from: TrustedBSD Project


74429 19-Mar-2001 orion

pcm driver for S3 Sonicvibes chipset.

Reviewed by: Cameron Grant


74379 17-Mar-2001 scottl

Fix the building of the aac driver as a module. Add a comment about enabling
debug information for the driver.


74181 12-Mar-2001 jlemon

Adjust the fxp module to use the correct directory path, and add a
dependency on miibus.


74133 12-Mar-2001 jlemon

Add Intel 82553, 82555 PHY driver.


74073 10-Mar-2001 markm

The /dev/random driver used Rijndael, not Blowfish, now.


74065 10-Mar-2001 bp

Remove now unused opt_ipx.h and opt_inet.h


74048 09-Mar-2001 phk

Remove vn(4) driver.


73857 06-Mar-2001 jhb

#if 0 out a variable only used in #if 0'd code to quiet a warning.


73374 03-Mar-2001 imp

Add support for Dlink DL10022 to the ed driver. This is a mii part
bolted to a ne-2000 chip. This is necessary for the NetGear FA-410TX
and other cards.

This also requires you add mii to your kernel if you have an ed driver
configured.

This code will result in a couple of timeout messages for ed on the
impacted cards. Additional work will be needed, but this does work
right now, and many people need these cards.

Submitted by: Ian Dowse <iedowse@maths.tcd.ie>


73163 27-Feb-2001 julian

Not quite working makefile to make the nmdm device as a module.


73129 27-Feb-2001 peter

Remove some cruft


73010 25-Feb-2001 julian

Allow the eiface node to be made as a module (not linked into build yet)


73004 25-Feb-2001 julian

Add a Makefile for the sample node so It can be compiled.
This helps to stop it from geting out of sync.
It is not part of the normal build but I can use it with all the others
when I make changes to netgraph to ensure it is buildable.


72980 24-Feb-2001 bp

Introduce API for sequential reads/writes (build/dissect) of mbuf chains.

Reviewed by: Ian Dowse <iedowse@maths.tcd.ie>,
Bosko Milekic <bmilekic@technokratis.com>,
Julian Elischer <julian@elischer.org> and arch@/net@
Obtained from: smbfs


72909 22-Feb-2001 julian

Add a 'splitter' node to separate a bidirectional
packet flow into two unidirectional flows.

Part of a suite of nodes developed for packet flow control.
More to follow as I have time to port them to 5.x or
as others do so. The ipfw node will be the hardest..

Submitted by: "Vitaly V. Belekhov" <vitaly@riss-telecom.ru>


72797 21-Feb-2001 nyan

Fixed warnings.


72735 20-Feb-2001 jlemon

Hook up the linux module for alpha again.

Approved by: beast


72709 19-Feb-2001 mjacob

Move linux to i386 only until it gets fixed for alpha (again).


72315 10-Feb-2001 nyan

Add pc98 support.


72162 08-Feb-2001 nyan

Added pc98 supports.


72132 07-Feb-2001 semenu

Add QS6612, AC101 and LXT970 personal drivers and register definitions.

Obtained from: NetBSD/OpenBSD


72028 05-Feb-2001 cg

add forgotten makefile


72017 04-Feb-2001 cg

add driver for CS4281 sound chips

Submitted by: Orion Hodson <O.Hodson@cs.ucl.ac.uk>


72016 04-Feb-2001 cg

add driver for CMedia CMI8338/CMI8738 sound chips

Submitted by: Orion Hodson <O.Hodson@cs.ucl.ac.uk>


72013 04-Feb-2001 imp

Remove NAHA, NAHATOT and aha_softcs and related code. It was unused
except for setting it. Also remove count from aha and replace it with
optional.

Also add commented out pccard lines for all the old card drivers.
They have to be commented out until they are converted because it
causes problems in NEWCARD.


71996 04-Feb-2001 peter

Remove some stray traces of KMODDEPS


71989 04-Feb-2001 peter

Zap obsolete (died with LKM) EXPORT_SYMS variable


71985 04-Feb-2001 peter

Zap some bad examples:
opt_foo.h:
touch opt_foo.h
.. is unnecessary - kmod.mk does this for us.


71901 01-Feb-2001 scottl

Driver for the ESS Maestro3 and Allegro sound chips. Note that due to the
amount of GPL'd firmware in the driver, it will only be built as a module.

Approved by: cg


71896 01-Feb-2001 des

KLDify the "speaker" device (which calls itself atspeaker internally, and
is i386-specific, so name the module atspeaker rather than speaker).


71886 31-Jan-2001 scottl

Update the module Makefile to reflect the state of things from the last
acpi-ca import.

Approved by: msmith


71832 30-Jan-2001 jhay

Make klds for the ar and sr devices and hook them up.

The normal versions are called if_ar.ko and if_sr.ko and the netgraph
versions ng_sync_ar.ko and ng_sync_sr.ko.


71795 29-Jan-2001 peter

Zap silly #if NPCI > 0 and the hoops that we jump through for the module
case. Use an 'and' case in conf/files so that it only gets compiled if
pci is present.


71619 25-Jan-2001 nyan

Added necessary include for pc98.


71370 22-Jan-2001 nyan

Added PC-98 apm support.

Submitted by: MURAMATSU Atsushi <amura@ma3.seikyou.ne.jp>


71197 17-Jan-2001 peter

Argh! add card_if.h to the generated list. This fixes kernel builds for
those who haven't added 'NO_MODULES=off' to /etc/make.conf.


71080 15-Jan-2001 markm

Clean up Makefile, and remove the last vestiges of NOBLOCKRANDOM.


70836 09-Jan-2001 green

Evidently, svr4 is broken at the moment. Disconnect the build to prevent
Bad Things from unsuspecting module loaders.


70834 09-Jan-2001 wollman

select() DKI is now in <sys/selinfo.h>.


70831 09-Jan-2001 wollman

Note new location of wi driver source code.


70782 08-Jan-2001 imp

Add aic to the list of drivers that might work with NEWCARD. I've added
the same config lines that NetBSD has. This builds with both NEWCARD
and GENERIC config files.


70739 07-Jan-2001 peter

It is unlikely that we'll be supporting old-style ZMAGIC linux a.out
binaries on anything but i386.. (ia64, sparc64, etc) Invert the .if
so that it is inclusive of i386 platforms rather than excluding just
the alpha.


70711 06-Jan-2001 obrien

Use a consistent style and one much closer to the rest of /usr/src


70708 06-Jan-2001 asmodai

We don't use += for SRCS in Makefiles, we simply use the
line continuation character and state the rest of the sourcefiles
on the next line.


70704 06-Jan-2001 kuriyama

Fix typo.

Pointed out by: Motomichi Matsuzaki <mzaki@e-mail.ne.jp>


70688 05-Jan-2001 nsouch

Add the VESA S3 linear framebuffer driver. It works on top of VESA by replacing
the video switch by another. Exactly as VESA does on top of VGA.

It adds linear framebuffer to S3 VESA 1.2 cards.

Obtained from: The original S3 ISA code comes from
Peter Horton <pdh@colonel-panic.com>


70623 03-Jan-2001 jhay

Make sppp a kld.


70609 02-Jan-2001 imp

add pcic_p to the list of things built


70556 01-Jan-2001 phk

Add a missing vnode_if.h.

Submitted by: Jim Bloom <bloom@acm.org>


70476 29-Dec-2000 paul

Change the module name from lnc to if_lnc so that ifconfig works.


70426 28-Dec-2000 des

Retire kernfs (kernel part).


70292 23-Dec-2000 cg

add sys/dev/sound/pcm/buffer.c, lefo out of last commit


70287 22-Dec-2000 obrien

*sigh* The `pecoff' module was added to all arches w/out testing a compile
on all arches. This fixes the Alpha kernel build.


70271 22-Dec-2000 takawata

Add ACPI AC adaptor and ACPI Control Method Battery.
And install notify handler for thermal zone .


70251 21-Dec-2000 takawata

Add pecoff directory.

Submitted by:nyan


70224 20-Dec-2000 takawata

Add PECOFF (WIN32 Execution file format) support.
To use it, some dll is needed. And currently, the dll is only for NetBSD.
So one more kernel module is needed.
For more infomation,
http://chiharu.haun.org/peace/ .

Reviewed by: bp


70188 19-Dec-2000 alex

Enable the sym module.


70187 19-Dec-2000 alex

Use the default value for MFILES


70142 18-Dec-2000 green

Unbreak the modules after the last commit (newpcm kobjification).


70134 18-Dec-2000 cg

kobjify.

this gives us several benefits, including:

* easier extensibility- new optional methods can be added to
ac97/mixer/channel classes without having to fixup every driver.

* forward compatibility for drivers, provided no new mandatory methods are
added.


70091 16-Dec-2000 nyan

PC-98 boxes use aic_cbus.c instead of aic_isa.c.


70078 16-Dec-2000 paul

Enable building of lnc module.


70077 16-Dec-2000 paul

Add lnc module.


70066 15-Dec-2000 wpaul

Whups: only build the if_el module on the x86 platform for now, until
I can confirm it works on the alpha.


70064 15-Dec-2000 wpaul

Newbus the if_el (3Com 3c501) driver. Use bus_space_X() functions.
Add detach routine and turn driver into a module so it can be loaded
and unloaded. Also take a stab at implementing multicast packet
reception so that this NIC will work with IPv6. Promiscuous mode
doesn't seem to work, but I'm not sure why. It works well enough that
I can run dhclient on it and put it on the office network though.
Also ripped out spl stuff and replaced it with mutexes.


70002 14-Dec-2000 imp

Fix this based on Mike's moved pci code. We needed to delete the pci_m
from this module anyway, so I just did that.


69996 13-Dec-2000 des

Reconnect linprocfs.


69962 13-Dec-2000 imp

Add aic and ray modules. I've been building these for a while now on
i386.


69961 13-Dec-2000 imp

Module for aic

Submitted by: Michael Reifenberger


69931 12-Dec-2000 des

The linprocfs sources have moved to sys/compat/linprocfs.


69917 12-Dec-2000 des

Temporarily disconnect linprocfs from the build, until I fix it so it builds
with Kirk's big proc patch.


69816 10-Dec-2000 nyan

Added '-DPC98' to CFLAGS if MACHINE == pc98.


69797 09-Dec-2000 des

Add four missing source files.


69783 08-Dec-2000 msmith

Next phase in the PCI subsystem cleanup.

- Move PCI core code to dev/pci.
- Split bridge code out into separate modules.
- Remove the descriptive strings from the bridge drivers. If you
want to know what a device is, use pciconf. Add support for
broadly identifying devices based on class/subclass, and for
parsing a preloaded device identification database so that if
you want to waste the memory, you can identify *anything* we know
about.
- Remove machine-dependant code from the core PCI code. APIC interrupt
mapping is performed by shadowing the intline register in machine-
dependant code.
- Bring interrupt routing support to the Alpha
(although many platforms don't yet support routing or mapping
interrupts entirely correctly). This resulted in spamming
<sys/bus.h> into more places than it really should have gone.
- Put sys/dev on the kernel/modules include path. This avoids
having to change *all* the pci*.h includes.


69725 07-Dec-2000 alex

Build the sym driver as a kernel module.


69691 07-Dec-2000 imp

Add support for compiling ray driver.


69607 05-Dec-2000 takawata

Update Makefile to follow acpica-1115 import.


69539 03-Dec-2000 marcel

Don't auto-generate the syscalls.


69533 02-Dec-2000 marcel

Fix dependency for auto-generated files. This commit is
for archiving purposes only; auto-generation is going to
be reverted.

requested by: obrien
submitted: gallatin


69524 02-Dec-2000 markm

Default the /dev/random loadable module to blocking-on-bootup,
but leave a commented-out macro to change this.


69494 01-Dec-2000 alfred

Revert disconnect of sysvipc now that there's a makefile available


69487 01-Dec-2000 alfred

Forgotten makefile.


69475 01-Dec-2000 des

Disconnect sysvipc, since it doesn't build.


69449 01-Dec-2000 alfred

sysvipc loadable.

new syscall entry lkmressys - "reserved loadable syscall"

Make syscall_register allow overwriting of such entries (lkmressys).


69381 30-Nov-2000 sheldonh

Retire the osf1(8) utility. The Makefile hasn't installed this critter
for a while.

Providing shell scripts that do nothing but load a similarly named
kernel loadable module is out of vogue.


69350 29-Nov-2000 sheldonh

Remove the ibcs2(8) shell script.

Providing shell scripts that do nothing but load a similarly named
kernel loadable module in out of vogue.

There is no ibcs2(4) manual page, and I haven't managed to coax
anyone into contributing one based on the linux(4) manual page.


69349 29-Nov-2000 sheldonh

Decommission the svr4(8) shell script, which has been pointless since
our kernel module system learned how to handle dependencies.

Providing a whole bunch of shell scripts that do nothing but load
a similarly named kernel loadable module is out of vogue.

The svr4(8) manual page has been replaced with a much better svr4(4)
page.


69288 28-Nov-2000 jon

A bunch of newcard/cardbus changes that's been sitting in my tree for a while:

- Make pccbb/cardbus kld loadable and unloadable.
- Make pccbb/cardbus use the power interface from pccard instead of inventing its own.
- some other minor fixes


69253 27-Nov-2000 obrien

Don't install the osf1 script from here. It causes the release build to
break as ${DESTDIR}/usr/bin doesn't exist where the module is being
installed.


69225 26-Nov-2000 jlemon

Fix another callout_init() that I missed.


69209 26-Nov-2000 phk

unhook netgraph/bridge until somebody makes it compile in LINT


69126 24-Nov-2000 markm

Add a module makefile for if_ep.

This is not enabled by default, as the module is missing a bunch of
useful stuff (like the ability to unload).

Not objected to by: mdodd


69060 22-Nov-2000 archie

Add one2many subdirectory (previously forgotten).


68961 20-Nov-2000 ru

mdoc(7) police: use the new features of the Nm macro.


68810 16-Nov-2000 archie

New netgraph node type ng_one2many(4).


68716 14-Nov-2000 ru

Use Fx macro wherever possible.


68419 07-Nov-2000 wpaul

The vortex driver can be compiled as a KLD now. The EISA attachment
is only built on the i386 platform for now, since it depends on symbols
which I'm pretty sure won't be present in the alpha build.


68341 05-Nov-2000 marcel

Fix breakage for parallel builds.


68303 04-Nov-2000 obrien

Now have the `linux' module on the Alpha too.


68245 02-Nov-2000 sheldonh

Retire the joy(8) script. Using shell scripts to load kernel loadable
modules is out of fashion.

There is still a joy(4) manual page to clue people into the existence of
the joy of FreeBSD.


68243 02-Nov-2000 sheldonh

Retire linux(8). Using shell scripts to load kernel loadable modules is
out of fashion. This particular case, unlike joy(8) and friends which
are just plain silly, did more than just load a kernel loadable module.
However, /etc/rc and the linux_base port were adjusted a while back to
cope with the absence of this script.

The only outstanding reason to hang on to it would have been for the
linux(8) manual page, which clued folks into the existence of the
Linuxulator. A new linux(4) was introduced a while back. It does
a much better job.

This script just isn't useful any more.


68214 01-Nov-2000 gallatin

Support for the linux ipc syscalls on the alpha, where each one has
its own syscall rather than going through a demux function like
linux_ipc() on i386


68162 01-Nov-2000 obrien

Allow the building of the syscall bits at compile time.


68141 01-Nov-2000 cg

kill old sb driver


68140 01-Nov-2000 cg

switch over to new sb8/sb16 code


68103 31-Oct-2000 nsayer

Don't needlessly indirect the APM softstate. It does nothing but
obfuscate the code.


68050 31-Oct-2000 nyan

Disabled EGA/VGA 1bpp/4bpp modes support. This is not real fix, but this comes
back to support 8bpp mode.


68036 31-Oct-2000 takawata

Makefile for ACPI CA base acpi driver kernel module.
This module is intended to be loaded from /boot/loader,not from kldload(8).


68021 31-Oct-2000 markm

Convert the de driver into a loadable module. Still missing is an
unload method. Lots of old cruft is removed.

Thanks to WPaul for large clue-injection and debugging services.

Reviewed by: wpaul


67805 28-Oct-2000 cg

modules for the new sb8 and sb16 drivers


67784 28-Oct-2000 nyan

Removed extra calculation for X position (PC-98 only).

Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata)


67753 28-Oct-2000 obrien

Hook ipfilter back up as it compiles now.


67710 27-Oct-2000 ache

Remove ipfilter and mark it as broken until it will be fixed by maintainer.
Not compiles under -current


67689 27-Oct-2000 markm

As the blocking model has seems to be troublesome for many, disable
it for now with an option.

This option is already deprecated, and will be removed when the
entropy-harvesting code is fast enough to warrant it.


67562 25-Oct-2000 n_hibma

The USB scanner driver. To be used together with SANE.


67555 25-Oct-2000 msmith

Major update to the 'twe' driver.

- Layout reorganisation to enhance portability. The driver now has
a relatively MI 'core' and a FreeBSD-specific layer over the top.
Since the NetBSD people have already done their own port, this is
largely just to help me with the BSD/OS port.

- Request ID allocation changed to improve performance (I'd been
considering switching to this approach after having failed to come
up with a better way to dynamically allocate request IDs, and seeing
Andy Doran use it in the NetBSD port of the driver convinced me
that I was wasting my time doing it any other way). Now we just
allocate all the requests up front.

- Maximum request count bumped back to 255 after characterisation
of a firmware issue (off-by-one causing it to crash with 256
outstanding commands).

- Control interface implemented. This allows 3ware's '3dm' utility to
talk to the controller. 3dm will be available from 3ware shortly.

- Controller soft-reset feature added; if the controller signals a
firmware or protocol error, the controller will be reset and all
outstanding commands will be retried.


67412 21-Oct-2000 nyan

if_ed_cbus.c is required from PC-98 only, and if_ed_isa.c is not necessary
for PC-98.


67410 21-Oct-2000 nyan

Add '-DPC98' to CFLAGS if MACHINE == pc98.


67112 14-Oct-2000 markm

After some complaints about the dir names, the random device is
now in dirs called sys/*/random/ instead of sys/*/randomdev/*.

Introduce blocking, but only at startup; the random device will
block until the first reseed happens to prevent clients from
using untrustworthy output.

Provide a read_random() call for the rest of the kernel so that
the entropy device does not need to be present. This means that
things like IPX no longer need to have "device random" hardcoded
into thir kernel config. The downside is that read_random() will
provide very poor output until the entropy device is loaded and
reseeded. It is recommended that developers do NOT use the
read_random() call; instead, they should use arc4random() which
internally uses read_random().

Clean up the mutex and locking code a bit; this makes it possible
to unload the module again.


66826 08-Oct-2000 obrien

Don't install manpages.
They are being moved elsewhere, and they are causing problems being here.


66752 06-Oct-2000 alex

Enable the if_ed module.


66751 06-Oct-2000 alex

Add card_if.h and sort the header files, while I'm here.


66710 06-Oct-2000 jhb

- Include opt_vesa.h in vesa.c so that the VESA_DEBUG option is actually
propagated from the kernel config file to the source.
- Add some more debug messages to list each mode that is rejected or found.


66620 04-Oct-2000 obrien

Only install secondary components if the destination directory exists.
This may be a WIP, but `make release' needs it sooner than later.


66550 02-Oct-2000 nyan

Added NEC PC-9801-83, 84, PC-9801-103, 104, PC-9801N-25 and PC-9801N-J02R
support which use National Semiconductor DP8393X (SONIC) as ethernet
controller. Currently, this driver is used on only PC-98.

Submitted by: Motomichi Matsuzaki <mzaki@e-mail.ne.jp>
Obtained from: NetBSD/pc98


66398 26-Sep-2000 bde

Removed garbage (CFLAGS+= ${PROTOS} was a vestige of an old way of
configuring INET).


66397 26-Sep-2000 bde

Removed fresh garbage (vestiges of old way of configuring number of
units), mature garbage (vestiges of old way of configuring bpf) and
old garbage (vestiges of old way of configuring INET).

Fixed most style bugs.


66396 26-Sep-2000 bde

Removed mature garbage (vestiges of old way of configuring bpf) and old
garbage (vestiges of old way of configuring INET).

Fixed most style bugs.


66394 26-Sep-2000 bde

Removed garbage (CFLAGS+= ${PROTOS} was a vestige of an old way of
configuring INET).

Fixed most style bugs (mainly hard-coding of ${.TARGET}).


66393 26-Sep-2000 bde

Handle slip options in the usual way (generate a dummy options file in
the module Makefile and don't clutter the sources with ifdefs).

Fixed nearby formatting bugs.


66392 26-Sep-2000 bde

Removed fresh garbage (old way of configuring number of units) and old
garbage (very old way of configuring INET).

Fixed a style bug (hard-coded ${.TARGET}).


66391 26-Sep-2000 bde

Backed out previous commit (SMPng megacommit: support for garbage added
to ppp_tty.c by the megacommit, and garbage added here).


66320 24-Sep-2000 alex

Add Makefile to build an if_ed kernel module. Works on both, i386 and
alpha.

No response from: the world


66309 23-Sep-2000 cg

add feeder_fmt.c


66303 23-Sep-2000 ume

Make ip6fw as loadable module.


66302 23-Sep-2000 jhb

Enable the snd_maestro module and have the snd_driver module depend on it.

Approved by: cg


66277 22-Sep-2000 ps

Remove the NCPU, NAPIC, NBUS, NINTR config options. Make NAPIC,
NBUS, NINTR dynamic and set NCPU to a maximum of 16 under SMP.

Reviewed by: peter


66140 20-Sep-2000 imp

No need to generate opt_compat_oldisa.h


66131 20-Sep-2000 wpaul

Add a new driver for the AMD PCnet/FAST, FAST+ and Home PCI adapters.
Previously, these cards were supported by the lnc driver (and they
still are, but the pcn driver will claim them first), which is fine
except the lnc driver runs them in 16-bit LANCE compatibility mode.
The pcn driver runs these chips in 32-bit mode and uses the RX alignment
feature to achieve zero-copy receive. (Which puts it in the same
class as the xl, fxp and tl chipsets.) This driver is also MI, so it
will work on the x86 and alpha platforms. (The lnc driver is still
needed to support non-PCI cards. At some point, I'll need to newbusify
it so that it too will me MI.)

The Am79c978 HomePNA adapter is also supported.


66129 20-Sep-2000 wpaul

Add a homePNA PHY driver. This is really only a stub: MII-based homePNA
PHYs tend to look like 10mbps PHYs with no autonegotiation. This allows
us to display the proper media type and link status however.


66072 19-Sep-2000 imp

Add card_if.h


65793 13-Sep-2000 msmith

A new driver for PCI:SCSI RAID controllers based on the Adaptec FSA
design. This includes integrated Dell RAID controllers, the Dell
PERC 2/QC and the HP NetRAID-4M.


65697 10-Sep-2000 roger

Update to build both bktr and bktr_mem modules


65686 10-Sep-2000 markm

Large upgrade to the entropy device; mainly inspired by feedback
from many folk.

o The reseed process is now a kthread. With SMPng, kthreads are
pre-emptive, so the annoying jerkiness of the mouse is gone.

o The data structures are protected by mutexes now, not splfoo()/splx().

o The cryptographic routines are broken out into their own subroutines.
this facilitates review, and possible replacement if that is ever
found necessary.

Thanks to: kris, green, peter, jasone, grog, jhb
Forgotten to thank: You know who you are; no offense intended.


65557 07-Sep-2000 jasone

Major update to the way synchronization is done in the kernel. Highlights
include:

* Mutual exclusion is used instead of spl*(). See mutex(9). (Note: The
alpha port is still in transition and currently uses both.)

* Per-CPU idle processes.

* Interrupts are run in their own separate kernel threads and can be
preempted (i386 only).

Partially contributed by: BSDi (BSD/OS)
Submissions by (at least): cp, dfr, dillon, grog, jake, jhb, sheldonh


65548 06-Sep-2000 obrien

Since AlphaLinux is the weirdest Linux of all, probably best to do the
logic this way.


65547 06-Sep-2000 obrien

Two sys/compat/linux sources aren't applicable on the Alpha at this time.


65543 06-Sep-2000 cg

ess maestro driver - not enabled by default

Submitted by: Taku YAMAMOTO <taku@cent.saitama-u.ac.jp>


65423 04-Sep-2000 gshapiro

Fix typo


65383 02-Sep-2000 cg

remove opt_devfs.h


65374 02-Sep-2000 phk

Avoid the modules madness I inadvertently introduced by making the
cloning infrastructure standard in kern_conf. Modules are now
the same with or without devfs support.

If you need to detect if devfs is present, in modules or elsewhere,
check the integer variable "devfs_present".

This happily removes an ugly hack from kern/vfs_conf.c.

This forces a rename of the eventhandler and the standard clone
helper function.

Include <sys/eventhandler.h> in <sys/conf.h>: it's a helper #include
like <sys/queue.h>

Remove all #includes of opt_devfs.h they no longer matter.


65312 01-Sep-2000 msmith

Add the 'asr' driver, supplied by Mark Salyzyn of Adaptec (nee DPT).
This provides support for the Adaptec SCSI RAID controller family,
as well as the DPT SmartRAID V and VI families.

The driver will be maintained by Mark and Adaptec, and any changes
should be referred to the MAINTAINER.


65310 01-Sep-2000 archie

New netgraph node type for Ethernet bridging.
No ipfw support yet.


65302 31-Aug-2000 obrien

Cleanup after repo copy of sys/svr4 to sys/compat/svr4.


65267 30-Aug-2000 msmith

Only build 'mly' on i386, as it doesn't build and hasn't been tested on
Alpha.


65245 30-Aug-2000 msmith

Major update to the AMI MegaRAID driver.

- New support for 40LD firmware found in Series 475 and 471 adapters.
- Better support for 8LD firmware adapters
- Ioctl passthrough interface for userland utilities.
- Improved error handling and queueing.
- Several bugfixes (including the 'still open' shutdown bug and
closing some small race conditions).
- Zone-style command allocator, reducing memory wasted under heavy
load conditions.
- CAM interface (disabled and not fully working) for SCSI passthrough
access to non-disk devices

Thanks to AMI for supplying a pile of new adapters and various other
help in making this happen.


65244 30-Aug-2000 imp

Resplit pcic back into two pcic and pccard.


65243 30-Aug-2000 imp

Remove pcic and oldcard from files built. Oldcard desn't work, so
shouldn't be built by default. pcic and pccard are going to go
through some changes and I'll not be testing them on the alpha so I
don't want to break them for the FreeBSD/alpha folks.


65238 30-Aug-2000 phk

fix ccd module.


65223 29-Aug-2000 cg

sigh, add opt_devfs.h


65206 29-Aug-2000 cg

activate fm801


65205 29-Aug-2000 cg

add driver for forte-media fm801

PR: conf/20698
Submitted by: dimmy the wild <diwil@dataart.com>


65144 28-Aug-2000 marcel

Don't enable Linuxulator support if not on an i386.

PR: 20873
Submitted by: Christian Weisgerber <naddy@mips.inka.de>


64987 23-Aug-2000 msmith

This is the initial import of a new driver for the current family of
PCI:SCSI RAID controllers from Mylex.


64930 22-Aug-2000 marcel

Connect the new sources in /sys/compat/linux and the new file
in /sys/i386/linux.


64884 21-Aug-2000 phk

Add dummy opt_devfs.h file.


64852 19-Aug-2000 imp

Don't build pccard for now until I can resolve the linker interaction
issue that I'm seeing.


64851 19-Aug-2000 imp

Work around a possible kernel linker bug. It appears that the data
elements defined by foo_if.c aren't sharable amoung modules (I'm
working on a bug report for it now), or else I don't understand
something. It showed up as kobj functions not being called.

In any event, link in the pcic and pccard parts of the modules to work
around the problem for now.


64621 13-Aug-2000 n_hibma

CAM, the module: scbus, da, cd, and st wrapped in one module.

Make the umass driver depend on this module.

Makes it possible to compile the kernel without SCSI support and load it
when for example a USB floppy is conencted.


64441 09-Aug-2000 cg

activate via82c686 audio driver


64439 09-Aug-2000 cg

new driver: via 82c686 chipset audio

not personally tested, but i'm assured it works

Submitted by: David Jones <dej@ox.org>
PR: kern/20161


64302 06-Aug-2000 cokane

Cleaning conflicting module tree. Use modules/3dfx instead.


64301 06-Aug-2000 cokane

Fix clean to remove pci.h
Numerous style fixes

Submitted by: Marcel Moolenaar <marcel@cup.hp.com>


64113 01-Aug-2000 nsayer

The solo driver now works for playback, so far as I can tell.
recording is still broken, but IMHO that's enough to at least
"hook it up" to the rest of the kernel/module builds.


64082 01-Aug-2000 ache

Back out opt_ipfilter.h creation I add recently and add -DIPFILTER=1
to CFLAGS instead
According to other sources, opt_ipfilter.h not supposed to be included for
modules


64079 01-Aug-2000 ache

Fix prev. commit: NIPFILTER -> IPFILTER


64077 31-Jul-2000 ache

Generate opt_ipfilter.h to fix 'make depend'


64065 31-Jul-2000 nsayer

Add the module Makefile for the newly committed ESS solo sound driver.
It will be connected to the parent Makefile after more testing.


63962 28-Jul-2000 sheldonh

Rename the loadable nullfs kernel module: null -> nullfs


63794 24-Jul-2000 sheldonh

When manual pages are moved or removed, MANX should be changed
to NOMAN.

Reported by: bde


63727 21-Jul-2000 nsayer

Somehow the module makefile got missed in the big commit.


63726 21-Jul-2000 sheldonh

Move the ef(4) manual page from sys/modules/if_ef to share/man/man4, as
discussed with bp.


63714 21-Jul-2000 sheldonh

Move the netgraph-related manual pages into share/man/man4/, as
discussed with archie.


63695 20-Jul-2000 nsayer

Oops. Activate tap in man4 and modules makefiles


63510 19-Jul-2000 peter

Use <bsd.kmod.mk> not a path to ../../conf/kmod.mk.


63010 12-Jul-2000 dfr

Add support for Intel's i810 chipset with integrated graphics. An
associated patch to XFree86 allows the X server to work with this chipset
on FreeBSD. Additional work will include porting the Linux 3D driver.

Submitted by: Ruslan Ermilov <ru@FreeBSD.org>


62768 07-Jul-2000 markm

Honour appropriate no-crypto flags.


62765 07-Jul-2000 markm

Add entropy gathering code. This will work whether the module is
compiled in or loaded.


62599 04-Jul-2000 cg

enable newpcm module building


62598 04-Jul-2000 cg

newpcm module makefiles

once built, 'kld_load snd_driver; kldunload snd_driver' will load all sound
drivers and unload all unattached ones. attached drivers do not yet support
unloading.


62145 26-Jun-2000 archie

Build ng_ether(4) KLD.


62132 26-Jun-2000 cokane

Add 3dfx to the makefile, the new home for the kmod to interface /dev/3dfx.


62118 26-Jun-2000 markm

Better style(9) for the module build.


62096 25-Jun-2000 cokane

Change tdfx.ko to 3dfx.ko to prevent filename conflict when XF86 4.x
DRI support is ready for us, as per Doug Rabson's request <dfr>.


62070 25-Jun-2000 markm

Build the entropy device (/dev/random) as a module. This may not
be a permanent rule, because this device may eventually be deemed
"effectively compulsory", and built by default directly into the
kernel. For the moment, however, this is useful for debugging and
development.

Reviewed by: dfr


62065 25-Jun-2000 markm

Remove unneeded header.


62026 23-Jun-2000 archie

Back out previous commit until the build of the 'tdfx' module is unbroken.


62014 23-Jun-2000 cokane

Add tdfx to modules Makefile, so it gets made.


61990 23-Jun-2000 cokane

Finish up the fixing of the linux ioctl stuff. Add line to remove the dev
entry upon unload.

Fix the module makefile.


61986 23-Jun-2000 cokane

Fixed trouble with linux emu, not it should work in the module.
Removed unnecessary warning message too.


61966 22-Jun-2000 cokane

Switch LINUX_TDFX to TDFX_LINUX, that's what i get for typing this
at 2 in the morning.


61933 22-Jun-2000 cokane

Took TDFX_VERBOSE out of Makefile, added $FreeBSD$ and option for DEBUG.
Added a notice for linux users that the kld isn't working for them yet, so
no linux emu from the kld. It compiles statically alright though.


61915 21-Jun-2000 cokane

This commit was generated by cvs2svn to compensate for changes in r61914,
which included commits to RCS files with non-trunk default branches.


61837 20-Jun-2000 alfred

return of the accept filter part II

accept filters are now loadable as well as able to be compiled into
the kernel.

two accept filters are provided, one that returns sockets when data
arrives the other when an http request is completed (doesn't work
with 0.9 requests)

Reviewed by: jmg


61786 18-Jun-2000 imp

Add oldcard, pccard, pcic and sn modules to the build.


61783 18-Jun-2000 imp

Preliminary commit of oldcard module. This might not work, but will.
This should allow one to load oldcard or newcard for testing. Please
let me know if this doesn't work. Don't load this and either of pcic
or pccard. I've not tried it, but I suspect bad things will happen.


61782 18-Jun-2000 mjacob

add ispfw module


61781 18-Jun-2000 mjacob

add if_wx module


61780 18-Jun-2000 mjacob

Add if_wx && ispfw modules


61770 18-Jun-2000 imp

Make pcic compile again with newcard


61767 18-Jun-2000 imp

Build sn as a module


61541 11-Jun-2000 tanimura

1. Update Comtrol RocketPort driver(rp) to version 3.02.
2. Newbusify the driver.
3. Build as a module.

4. Use correct minor numbers when creating device files.
5. Correctly lock control characters.
6. Return ENXIO when device not configured.
Submitted by: Tor Egge <Tor.Egge@fast.no>

7. Fix the baud_table.
Submitted by: Elliot Dierksen <ebd@oau.org>

Note:
- the old driver still lives in src/sys/i386/isa, so that you can
revert to it if something goes wrong.
- The module does not detach very well. Attaching works fine.


61455 09-Jun-2000 dfr

Add agp.


61454 09-Jun-2000 dfr

Add module for agp driver.


61340 06-Jun-2000 obrien

Properly spell "OSF/1".


61217 03-Jun-2000 bde

Fixed style bugs that I unfortunately noticed because bsd.kmod.mk was
being reconstructed.


61204 03-Jun-2000 bde

Use the genassym script here too. The linux and svr4 modules were broken.


60966 27-May-2000 peter

Use .include <bsd.kmod.mk> to get to ../../*/conf/kmod.mk instead of
encoding the relative path.


60956 26-May-2000 msmith

Some joker decided to make it even harder to build modules outside the
kernel, and rather than fix the make search path, hardcoded it into the
module Makefiles themselves. Go with the herd.


60900 25-May-2000 archie

Fix typo.


60896 24-May-2000 msmith

Build the twe module with the rest.


60895 24-May-2000 msmith

Add the 'twe' driver module makefile.


60538 14-May-2000 chris

Remove the -DFDESC cruft that is no longer necessary since the support
for it was removed from <sys/mount.h> long, long ago.


60331 10-May-2000 archie

Update man page to reflect new IPv6 hook. Simplify Makefile.


60311 10-May-2000 sheldonh

Supply only one author name per instance of %A, as per mdoc.samples(7).

PR: 18465
Submitted by: Kazu TAKAMUNE <takamune@avrl.mei.co.jp>


60297 10-May-2000 obrien

Support non-i386 architectures.


60201 08-May-2000 nyan

Added PC-98 supports.

Obtained from: FreeBSD(98) 4.0R-Rev01


60179 07-May-2000 n_hibma

Remove debugging cruft.


60062 06-May-2000 obrien

All the screen savers other than "apm" build on the Alpha. daemon.ko has
been tested to work.


60052 05-May-2000 archie

AUTHOR -> AUTHORS


60010 05-May-2000 archie

Document the new statistics control messages.
Add a note about the IP header asymmetry on the "lower" hook.


59982 04-May-2000 archie

Move netgraph node type man pages from section 8 to section 4.


59951 04-May-2000 peter

Pull in sys/conf/kmod.mk, rather than /usr/share/mk/bsd.kmod.mk.
This means that the kernel can be totally self contained now and is not
dependent on the last buildworld to update /usr/share/mk. This might
also make it easier to build 5.x kernels on 4.0 boxes etc, assuming
gensetdefs and config(8) are updated.


59877 01-May-2000 n_hibma

The USB double bulk pipe driver (Host to host cables). Currently there
are two supported chips, the NetChip 1080 (only prototypes available)
and the EzLink cable. Any other cable should be supported however as they
are all very much alike (there is a difference between them wrt
performance).

It uses Netgraph.

This driver was mostly written by Doug Ambrisko and Julian Elischer and
I would like to thank Whistle for yet another contribution. And my
aplogies to them for me sitting on the driver for so long (2 months).

Also, many thanks to Reid Augustin from NetChip for providing me with a
prototype of their 1080 chip.

Be aware of the fact that this driver is very immature and has only been
tested very lightly. If someone feels like learning about Netgraph however
this is an excellent driver to start playing with.


59874 01-May-2000 peter

Add $FreeBSD$


59865 01-May-2000 peter

Zap KMODDEPS line


59782 30-Apr-2000 julian

Update the man page to reflect the recent changes to the kernel API for
netgraph.


59690 27-Apr-2000 nyan

Added PC-98 supports.

Submitted by: Chiharu Shibata <chi@bd.mbn.or.jp>,
Tomokazu HARADA <tkhara@osk4.3web.ne.jp> and
yokota


59617 25-Apr-2000 bp

More machdep/random.h -> sys/random.h fixes.


59583 24-Apr-2000 yokota

- Added support for 1bpp and 4bpp BMP files.
(PC98 part of the commit will follow.)

Submitted (50%) by: Chiharu Shibata <chi@bd.mbn.or.jp>


59478 22-Apr-2000 wpaul

Reoganize/update the SysKonnect driver:

- Break out the support for the XMAC II's PHY into an miibus driver.

- Reorganize the probe/attach stuff using newbus. Each XMAC is now
attached to the parent GEnesis controller using newbus. This is
necessary since each XMAC must also have an attached miibus, and
the miibus read/write register routines need to be able to get
at the softc struct for each XMAC, not the one for the parent
controller. This allows me to get rid of the grotty code I added
for selecting the unit numbers for the ifnet interfaces: the unit
numbers are now derived from the newbus-assigned unit numbers,
which should track with the ifnet interface numbers. I think.
At the very least, there should never be any collisions.

- Add support for the SK-9821 and SK-9822 1000baseTX adapters. Special
thanks to SysKonnect for loaning me two adapters for testing.


59413 20-Apr-2000 msmith

Point to the new location of the sources under the i386 linux compatibility
code.


59267 16-Apr-2000 grog

Remove MAINTAINER.


59190 13-Apr-2000 grog

Enable building Vinum on alpha.

Submitted-by: Bernd Walter <ticso@cicely.de>
Reminded-by: Pedro A M Vazquez <vazquez@iqm.unicamp.br>


59183 12-Apr-2000 archie

Only build the ng_mppc KLD if !NOCRYPT and required crypto sources exist.


59182 12-Apr-2000 archie

Revert to previous state, plus a few cleanups pointed out by bde.
Instead, make the decision as to whether to build this KLD in ../Makefile.


59155 11-Apr-2000 semenu

Premier version of Makefile to build tx driver as KLD


59154 11-Apr-2000 semenu

As tx driver was patched for newbus, we can now build it as module!
Add it to Makefile.


59151 11-Apr-2000 archie

Turn off build of ng_mppc KLD until I can figure out how to have the
Makefile correctly handle all the possible permutations (including
missing crypto sources). Suggestions welcome.


59129 10-Apr-2000 archie

Turn off MPPE encryption if NOCRYPT is defined. If neither compression
nor encryption is enabled, don't build or install anything.


59110 09-Apr-2000 archie

Add ng_mppc(8) netgraph node as a KLD module.

Obtained from: Whistle source tree


59061 06-Apr-2000 bp

Uncomment ETHER_II frame and remove BPF related variable.


58822 30-Mar-2000 peter

Move linprocfs to the i386-only section so the Alpha buildworld has a
chance at finishing..


58757 28-Mar-2000 n_hibma

Remove some cruft


58635 26-Mar-2000 charnier

Remove duplicate word


58556 25-Mar-2000 des

Linux /proc filesystem.

Submitted by: pb


58543 25-Mar-2000 imp

Make pcic module compile again for NEWCARD (not for old pccard).


58296 19-Mar-2000 kato

Define PC98 when MACHINE == pc98, because msdos_vfsops.c contains
`#ifdef PC98'.


58133 16-Mar-2000 n_hibma

Please welcome the URio driver. Written by
Iwasa Kazmi <kzmi\@ca2.so-net.ne.jp>


58016 13-Mar-2000 archie

- Document updates in iface netgraph node type functionality
- Remove makefile hacks for opt_inet.h, etc: the KLD now supports
whatever address families your kernel was compiled with automagically


58007 13-Mar-2000 archie

Fix typo.

Reported by: Robert Swindells <swindellsr@genrad.co.uk>


57894 10-Mar-2000 archie

Correct man page title.


57651 01-Mar-2000 sheldonh

Disconnect pcfclock from the build until it works on the Alpha.


57632 29-Feb-2000 billf

Add a little more history of when netgraph appeared in FreeBSD.

Reviewed by: asmodai


57620 29-Feb-2000 sheldonh

Enable pcfclock as a kernel loadable module.

PR: 16804
Submitted by: sascha@schumann.cx
Approved by: jkh (release engineer)


56836 29-Jan-2000 peter

Use config's conditional compilation rather than using #ifdefs that make
modular compilation harder. I'm doing this because people seem to like
cut/pasting examples of bad practices in existing code.


56778 29-Jan-2000 brian

Restore to version 1.14. Only opt_inet.h is required again.


56735 28-Jan-2000 bde

Add ${DEBUG_FLAGS} to CFLAGS in bsd.kmod.mk, not in scattered module
makefiles. Bad examples in fxp/Makefile keep getting copied to new
makefiles.


56673 27-Jan-2000 peter

Move if_tun back to the common section now that it works on the Alpha.

Tested by: make world


56637 26-Jan-2000 peter

Re-add vpo. I've just re-tested this in a 'make world' on a December
vintage system, well before the ppbus changes. When I called it an
"example" module, I meant as an example for the rest of the ppbus client
drivers, not that it was worthless. I'll mail my 5.8MB world.log to
anybody who doesn't believe me.

Wrongly accused by: obrien


56624 26-Jan-2000 obrien

Remove `vpo' with a vengeance -- "EXAMPLE" modules have *NO* business
being hooked up to the build system, *COMPILABLE WORKING* modules do.

Not `make' tested by: Peter


56622 26-Jan-2000 brian

Don't use ATM on the alpha - it #errors out.

Pointed out by: jdp


56621 26-Jan-2000 obrien

if_tun is out of here -- it can come back with it stops breaking the
Alpha build.


56555 24-Jan-2000 brian

Move the *intrq variables into net/intrq.c and unconditionally
include this in all kernels. Declare some const *intrq_present
variables that can be checked by a module prior to using *intrq
to queue data.

Make the if_tun module capable of processing atm, ip, ip6, ipx,
natm and netatalk packets when TUNSIFHEAD is ioctl()d on.

Review not required by: freebsd-hackers


56462 23-Jan-2000 peter

Add an example vpo module. I don't have a zip drive to test it, but it
behaves the normal way when loaded at runtime versus being statically
compiled. (normal == print garbage on the printer :-).


56453 23-Jan-2000 n_hibma

Get rid of some debugging cruft.


56436 23-Jan-2000 brian

Hmm, don't compile in INET6, IPX or NETATALK support for the
moment :-( I think we need some sort of stub variable and a
``is this queue available'' flag.


56424 23-Jan-2000 bp

Allow if_ef driver to be compiled into kernel.


56411 23-Jan-2000 brian

Support INET6, NETATALK and IPX as well as INET.


56332 20-Jan-2000 yokota

Do not explicitly create empty option files; they are taken
care of by bsd.kmod.mk.

Pointed out by: bde


56200 17-Jan-2000 archie

Work around aparent bug in the .Dv macro by eliminating some spaces.
The closing curly-brace in this line was being omitted somehow.


56043 15-Jan-2000 yokota

This is the 3rd stage of syscons code reorganization.

- Split terminal emulation code from the main part of the driver so
that we can have alternative terminal emulator modules if we like in
the future. (We are not quite there yet, though.)

- Put sysmouse related code in a separate file, thus, simplifying the
main part of the driver.

As some files are added to the source tree, you need to run config(8)
before you compile a new kernel next time.

You shouldn't see any functional change by this commit; this is only
internal code reorganization.


55999 14-Jan-2000 wpaul

Grrr. Really add the module makefile for the Aironet driver.


55992 14-Jan-2000 wpaul

Add driver support for the Aironet 4500/4800 series wireless 802.11
NICs. (Finally!) The PCMCIA, ISA and PCI varieties are all supported,
though only the ISA and PCI ones will work on the alpha for now.
PCCARD, ISA and PCI attachments are all provided. Also provided an
ancontrol(8) utility for configuring the NIC, man pages, and updated
pccard.conf.sample. ISA cards are supported in both ISA PnP and hard-wired
mode, although you must configure the kernel explicitly to support the
hardwired mode since you have to know the I/O address and port ahead
of time.

Special thanks to Doug Ambrisko for doing the initial newbus hackery
and getting it to work in infrastructure mode.


55944 14-Jan-2000 wpaul

Add device driver support for USB ethernet adapters based on the CATC
USB-EL1202A chipset. Between this and the other two drivers, we should
have support for pretty much every USB ethernet adapter on the market.
The only other USB chip that I know of is the SMC USB97C196, and right
now I don't know of any adapters that use it (including the ones made
by SMC :/ ).

Note that the CATC chip supports a nifty feature: read and write combining.
This allows multiple ethernet packets to be transfered in a single USB
bulk in/out transaction. However I'm again having trouble with large
bulk in transfers like I did with the ADMtek chip, which leads me to
believe that our USB stack needs some work before we can really make
use of this feature. When/if things improve, I intend to revisit the
aue and cue drivers. For now, I've lost enough sanity points.


55830 12-Jan-2000 yokota

Add opt_ukbd.h.


55789 10-Jan-2000 wpaul

Attempt to fix a problem with receiving packets on USB ethernet interfaces.
Packets are received inside USB bulk transfer callbacks, which run at
splusb() (actually splbio()). The packet input queues are meant to be
manipulated at splimp(). However the locking apparently breaks down under
certain circumstances and the input queues can get trampled.

There's a similar problem with if_ppp, which is driven by hardware/tty
interrupts from the serial driver, but which must also manipulate the
packet input queues at splimp(). The fix there is to use a netisr, and
that's the fix I used here. (I can hear you groaning back there. Hush up.)

The usb_ethersubr module maintains a single queue of its own. When a
packet is received in the USB callback routine, it's placed on this
queue with usb_ether_input(). This routine also schedules a soft net
interrupt with schednetisr(). The ISR routine then runs later, at
splnet, outside of the USB callback/interrupt context, and passes the
packet to ether_input(), hopefully in a safe manner.

The reason this is implemented as a separate module is that there are
a limited number of NETISRs that we can use, and snarfing one up for
each driver that needs it is wasteful (there will be three once I get
the CATC driver done). It also reduces code duplication to a certain
small extent. Unfortunately, it also needs to be linked in with the
usb.ko module in order for the USB ethernet drivers to share it.

Also removed some uneeded includes from if_aue.c and if_kue.c

Fix suggested by: peter
Not rejected as a hairbrained idea by: n_hibma


55728 10-Jan-2000 phantom

. add manpage for svr4(8)
. s/freebsd/FreeBSD


55661 09-Jan-2000 bde

Cleaned up options handling:
- don't generate unusable headers or #defines.
- removed duplicate opt_svr4.h in CLEANFILES.
- removed bogus dependency of svr4.h on options headers.


55655 09-Jan-2000 bde

Compile svr4_genassym.c with ordinary ${CFLAGS}. The (small) need for
-U_KERNEL became negative when all all the genassym.c's were converted
to be cross-built.

Use "genassym ... > ${.TARGET}", not "genassym -o $@ ...", so that
genassym(1) doesn't need to support -o.

Removed duplicate -D_KERNEL from CFLAGS.

Removed triplicate -D_KERNEL from flags for compiling svr4_locore.s.


55653 09-Jan-2000 bde

Compile linux_genassym.c with ordinary ${CFLAGS}. The (small) need for
-U_KERNEL became negative when all all the genassym.c's were converted
to be cross-built.

Use "genassym ... > ${.TARGET}", not "genassym -o $@ ...", so that
genassym(1) doesn't need to support -o.

Removed duplicate -D_KERNEL from flags for compiling linux_locore.s.


55429 05-Jan-2000 wpaul

Add device driver support for USB ethernet adapters based on the
Kawasaki LSI KL5KUSB101B chip, including the LinkSys USB10T, the
Entrega NET-USB-E45, the Peracom USB Ethernet Adapter, the 3Com
3c19250 and the ADS Technologies USB-10BT. This device is 10mbs
half-duplex only, so there's miibus or ifmedia support. This device
also requires firmware to be loaded into it, however KLSI allows
redistribution of the firmware images (I specifically asked about
this; they said it was ok).

Special thanks to Annelise Anderson for getting me in touch with
KLSI (eventually) and thanks to KLSI for providing the necessary
programming info.

Highlights:
- Add driver files to /sys/dev/usb
- update usbdevs and regenerate attendate files
- update usb_quirks.c
- Update HARDWARE.TXT and RELNOTES.TXT for i386 and alpha
- Update LINT, GENERIC and others for i386, alpha and pc98
- Add man page
- Add module
- Update sysinstall and userconfig.c


55422 04-Jan-2000 grog

Remove non-functional 'all:' target.
Remove unused 'state.h' and 'maketabs' targets.
Fix white space style bugs.

Submitted-by: bde

Sort module names in SRCS.

Suggested-by: bde

Correct breakage committed in revision 1.16.


55348 03-Jan-2000 archie

Fix typos per PR 15649. Also did some rewording for clarity.

PR: docs/15649
Submitted by: Kazuo Horikawa <horikawa@jp.FreeBSD.org>


55336 03-Jan-2000 marcel

Remove -g compiler flag.


55335 03-Jan-2000 marcel

o Add build-tools target for maketabs although it doesn't seem to
be used. I therefore won't add it to Makefile.inc1.
o Remove -g compilation flags.


55206 29-Dec-1999 peter

Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL"
is an application space macro and the applications are supposed to be free
to use it as they please (but cannot). This is consistant with the other
BSD's who made this change quite some time ago. More commits to come.


55162 28-Dec-1999 wpaul

This commit adds device driver support for the ADMtek AN986 Pegasus
USB ethernet chip. Adapters that use this chip include the LinkSys
USB100TX. There are a few others, but I'm not certain of their
availability in the U.S. I used an ADMtek eval board for development.
Note that while the ADMtek chip is a 100Mbps device, you can't really
get 100Mbps speeds over USB. Regardless, this driver uses miibus to
allow speed and duplex mode selection as well as autonegotiation.
Building and kldloading the driver as a module is also supported.

Note that in order to make this driver work, I had to make what some
may consider an ugly hack to sys/dev/usb/usbdi.c. The usbd_transfer()
function will use tsleep() for synchronous transfers that don't complete
right away. This is a problem since there are times when we need to
do sync transfers from an interrupt context (i.e. when reading registers
from the MAC via the control endpoint), where tsleep() us a no-no.
My hack allows the driver to have the code poll for transfer completion
subject to the xfer->timeout timeout rather that calling tsleep().
This hack is controlled by a quirk entry and is only enabled for the
ADMtek device.

Now, I'm sure there are a few of you out there ready to jump on me
and suggest some other approach that doesn't involve a busy wait. The
only solution that might work is to handle the interrupts in a kernel
thread, where you may have something resembling a process context that
makes it okay to tsleep(). This is lovely, except we don't have any
mechanism like that now, and I'm not about to implement such a thing
myself since it's beyond the scope of driver development. (Translation:
I'll be damned if I know how to do it.) If FreeBSD ever aquires such
a mechanism, I'll be glad to revisit the driver to take advantage of
it. In the meantime, I settled for what I perceived to be the solution
that involved the least amount of code changes. In general, the hit
is pretty light.

Also note that my only USB test box has a UHCI controller: I haven't
I don't have a machine with an OHCI controller available.

Highlights:

- Updated usb_quirks.* to add UQ_NO_TSLEEP quirk for ADMtek part.
- Updated usbdevs and regenerated generated files
- Updated HARDWARE.TXT and RELNOTES.TXT files
- Updated sysinstall/device.c and userconfig.c
- Updated kernel configs -- device aue0 is commented out by default
- Updated /sys/conf/files
- Added new kld module directory


55063 23-Dec-1999 marcel

Use genassym(1) and <sys/assym.h> to generate assembler symbols.


55062 23-Dec-1999 marcel

Use genassym(1) and <sys/assym.h> to generate assembler symbols.


54972 21-Dec-1999 archie

Revert previous checkin; I incorrectly thought that it was needed
due to having an old version of bsd.kmod.mk.

Caught by: bde


54927 21-Dec-1999 julian

Manual page style work.
Submitted by: Alexey Zelkin <phantom@FreeBSD.org>
thanks!


54801 19-Dec-1999 imp

i82365_isasubr is gone, remove from building module.


54637 15-Dec-1999 gallatin

Enable building of the OSF/1 compat module.


54612 14-Dec-1999 gallatin

Finally add the Alpha OSF/1 compat code. I will add it to the
sys/modules Makefile after completing a buildworld.

History:

The bulk of this code was obtained from NetBSD approximately one year
ago (I have taken care to preserve the original NetBSD copyrights and
I thank the authors for their work.) At that time, the OSF/1 code was
what was left over from their initial bootstrapping off of OSF/1 and
did not provide support for executing shared binaries.

I have independently added support for shared libraries, and support
for some of the more obscure system calls. This code has been
available for testing and comment since January of 1999 and running on
production machines here at Duke since April.

Known working applications include:

- Netscape (all versions I've tried)
- Mathematica 3.0.2
- Splus 3.4
- ArcInfo 7.1
- Matlab (version unknown)
- SimOS
- Atom instrumented binaries (built on a real OSF/1 system)

Applications which are known not to work:

- All applications linking to libmach
- Adobe Acrobat (uses libmach)

This has been tested with applications running against shared
libraries from OSF/1 (aka Tru64) 4.0D and 4.0F.

Reviewed by: marcel, obrien
BDE-lint by: obrien
Agreed in principal to by: msmith


54561 13-Dec-1999 bp

Add module for if_ef driver and make it compile.


54541 13-Dec-1999 cracauer

Add a run of Linux ldconfig.


54522 12-Dec-1999 peter

Move mlx, ncp and nwfs to the common area, they build on the Alpha and
are marked cross-platform in conf/files..


54520 12-Dec-1999 peter

Zap unused CFLAGS += -DNCP


54516 12-Dec-1999 peter

Move mlx from x86-only to generic. It builds on the Alpha and is in the
common conf/files for the main kernel..


54514 12-Dec-1999 peter

Move amr from x86-specific to generic. (it's in the generic conf/files
in the main kernel and builds fine on the alpha here...)


54513 12-Dec-1999 peter

Don't waste time creating amr.h since it (and NAMR) aren't used.


54511 12-Dec-1999 peter

Fix joy and put it back in the MI section. (yes, it works on Alpha)


54509 12-Dec-1999 peter

Change "atapi" (the old one) from "present but broken" to "not present".


54508 12-Dec-1999 peter

Remove a whole bunch of "CFLAGS+= -DFSNAME" cruft. It hasn't been
needed for ages, but keeps getting cut/pasted into new Makefiles.
(Once apon a time it was used to activate mount arguments in
<sys/mount.h>, but that was killed with extreme prejudice long ago)


54502 12-Dec-1999 peter

Bring these more into line with other modules that have .h files generated
on the fly.


54413 10-Dec-1999 archie

Add reference to RFC 1702, after learning how to have "T. Li"
as an author without nroff blowing up.

Problem solved by: fenner


54371 09-Dec-1999 semenu

First version of HPFS stuff.


54344 09-Dec-1999 archie

Update man page: BPF is supported even in the KLD version.


54343 09-Dec-1999 archie

Fix 'make clean'


54331 08-Dec-1999 archie

New netgraph node type 'pptpgre': this performs GRE encapsulation
for the PPTP protocol as specified in RFC 2637.


54329 08-Dec-1999 archie

Include net/slcompress.c in the build of this module.


54320 08-Dec-1999 marcel

Add opt_svr4.h to SRCS. This fixes make depend.


54300 08-Dec-1999 newton

SVR4 emulator source files now take their compilation options from
opt_global.h and opt_svr4.h, instead of from the command line. This
brings them in-line with most of the rest of the kernel.

svr4_ioctl.c has also failed to compile with debugging for a while
now; fixed by adding systm.h and socketvar.

Some svr4 source files are automatically generated from syscalls.master;
these have been committed as consequential changes, otherwise everyone
will have to "make svr4_sysent.c".

Changes:

sys/svr4/svr4.h include opt_global.h and opt_svr4.h
sys/svr4/svr4_ioctl.c include svr4.h, sys/systm.h and sys/socketvar.h
sys/svr4/svr4_ipc.c include svr4.h
sys/svr4/svr4_resource.c include svr4.h
sys/svr4/svr4_socket.c include svr4.h
sys/svr4/svr4_ttold.c include svr4.h
sys/svr4/syscalls.master include svr4.h
sys/svr4/svr4_syscallnames.c dependent on syscalls.master
sys/svr4/svr4_sysent.c dependent on syscalls.master
sys/svr4/svr4_syscall.h dependent on syscalls.master
sys/svr4/svr4_proto.h dependent on syscalls.master
sys/modules/svr4/Makefile create opt_global.h and opt_svr4.h


54263 07-Dec-1999 shin

udp IPv6 support, IPv6/IPv4 tunneling support in kernel,
packet divert at kernel for IPv6/IPv4 translater daemon

This includes queue related patch submitted by jburkhol@home.com.

Submitted by: queue related patch from jburkhol@home.com
Reviewed by: freebsd-arch, cvs-committers
Obtained from: KAME project


54220 06-Dec-1999 guido

Add forgotten ip_fil.c and fil.c to kld version

Remove mlfk_ipl.c from here: no sources allowed in these directories!


54173 05-Dec-1999 bde

Sorted SUBDIR.


54140 05-Dec-1999 wpaul

Add pci_if.h to SRCS so that dcphy will build.


54134 04-Dec-1999 wpaul

Add the if_dc driver and remove all of the al, ax, dm, pn and mx drivers
which it replaces. The new driver supports all of the chips supported
by the ones it replaces, as well as many DEC/Intel 21143 10/100 cards.

This also completes my quest to convert things to miibus and add
Alpha support.


54115 04-Dec-1999 julian

forgot .CURDIR
caught by Steven G. Kargl <kargl@troutmask.apl.washington.edu>


54097 03-Dec-1999 archie

New netgraph node type, ng_bpf(8). This node type allows you to
apply bpf(4) filters to data travelling through a netgraph network.


53939 30-Nov-1999 archie

Update documentation to reflect new functionality.


53936 30-Nov-1999 archie

Fix typo.


53913 30-Nov-1999 archie

Add two new generic control messages, NGM_ASCII2BINARY and
NGM_BINARY2ASCII, which convert control messages to ASCII and back.
This allows control messages to be sent and received in ASCII form
using ngctl(8), which makes ngctl a lot more useful.

This also allows all the type-specific debugging code in libnetgraph
to go away -- instead, we just ask the node itself to do the ASCII
translation for us.

Currently, all generic control messages are supported, as well as
messages associated with the following node types: async, cisco,
ksocket, and ppp.

See /usr/share/examples/netgraph/ngctl for an example of using this.

Also give ngctl(8) the ability to print out incoming data and
control messages at any time. Eventually nghook(8) may be subsumed.

Several other misc. bug fixes.

Reviewed by: julian


53855 28-Nov-1999 imp

Add resource activation routines to pcic driver. Minor cleanup of
socket attach code. We now have at least a chance for pccard devices
appearing in the future.

This is a snapshot of ongoing work. Proceed at your own risk.


53846 28-Nov-1999 bde

Removed special rules for building and cleaning device interface files
and empty options files. The rules are now generated automatically in
bsd.kmod.mk. Cleaned up related things ($S and ${CLEANFILES}).


53729 26-Nov-1999 phk

This fell out of a previous commit: create the opt_md.h and opt_mfs.h
files for the md module.


53702 25-Nov-1999 wpaul

Update the WaveLAN/IEEE driver:

- Convert to new bus attachment scheme. Thanks to Blaz Zupan for doing
the initial work here. One thing I changed was to have the attach
and detach routines work like the PCI drivers, which means that in
theory you should be able to load and unload the driver like the PCI
NIC drivers, however the pccard support for this hasn't settled down
yet so it doesn't quite work. Once the pccard work is done, I'll have
to revisit this.

- Add device wi0 to PCCARD. If we're lucky, people should be able to
install via their WaveLAN cards now.

- Add support for signal strength caching. The wicontrol utility has
also been updated to allow zeroing and displaying the signal strength
cache.

- Add a /sys/modules/wi directory and fix a Makefile to builf if_wi.ko.
Currently this module is only built for the i386 platform, though once
the pccard stuff is done it should be able to work on the alpha too.
(Theoretically you should be able to plug one of the WaveLAN/IEEE ISA
cards into an alpha with an ISA slot, but we'll see how that turns out.

- Update LINT to use only device wi0. There is no true ISA version of
the WaveLAN/IEEE so we'll never use an ISA attachment.

- Update files.i386 so that if_wi is dependent on card.


53646 23-Nov-1999 guido

Add ipfilter kld and wire it in.


53558 22-Nov-1999 green

Add vnode_if.c to CLEANFILES.


53557 22-Nov-1999 green

Change a CLEANFILES misspelling to get miibus_if.h removed.


53556 22-Nov-1999 green

Make this compile (remove vnode_if.c from SRCS) and clean properly
(add opt_bus.h to CLEANFILES).


53547 22-Nov-1999 n_hibma

Clean up the Makefiles, make them consistent with the others and remove
debugging falgs (-g).


53546 22-Nov-1999 n_hibma

Add the usb module and move the USB related modules into the generic section
USB seems to compile on Alpha's as well.


53545 22-Nov-1999 n_hibma

USB is loadable as a module as well.


53533 21-Nov-1999 julian

Document the requirement for root privileges.


53501 21-Nov-1999 julian

Document new feature (support for write(2) when 1 hook attached).


53409 19-Nov-1999 imp

Module name is cardbus, not pccard.


53399 19-Nov-1999 archie

Update references.


53398 19-Nov-1999 archie

Miscellaneous edits.


53397 19-Nov-1999 archie

Add reference to ng_pppoe(8).


53395 19-Nov-1999 archie

Update to reflect changed functionality.


53392 19-Nov-1999 green

Reenable "umodem", as its build is not broken anymore.


53340 18-Nov-1999 imp

Add modules for cardbus and the cardbus bridge driver. Files needed
to build these to be committed next.

Again, not added to sys/modules/Makefile


53339 18-Nov-1999 imp

Newcard's pccard module. It compiles, but doesn't work. This should
make development easier and push the ability of newbus to load busses
to the test.

Not added to sys/modules/Makefile because it isn't ready to break the
nightly snapshots for alpha yet :-).

NOTE: This is only for NEWCARD. The old pccard stuff will not build
as a loadable module.


53337 18-Nov-1999 imp

Hijack old, broken, obsolete, unsupported pcic module for the NEWCARD
code. You can now build the newcard's pcic driver as a module for all
the joy that will bring you, which currently isn't so much joy as it
is pain.

The old pccard module will never be made to work again, so I think
this is OK. Note, it still remains disabled in sys/modules/Makefile
on purpose.


53326 18-Nov-1999 green

For now, disable umodem module building, because it doesn't. Don't
want to break the snapshots :)


53315 17-Nov-1999 n_hibma

Change the name of the modules from <name>_mod to <name>

Suggested by: David O'Brien <obrien@FreeBSD.ORG>


53253 17-Nov-1999 n_hibma

Remove -O from CFLAGS


53248 16-Nov-1999 archie

Add reference to new netgraph node type "ksocket".


53247 16-Nov-1999 archie

New Netgraph node type "ksocket".

Obtained from: Whistle source tree


53116 12-Nov-1999 marcel

Replace 'i386' with '${MACHINE_ARCH}' in preparation of the development
of a linuxulator for Alpha.


53077 10-Nov-1999 archie

Update to reflect changes in the node type.


52980 08-Nov-1999 archie

Update to better reflect reality.


52979 08-Nov-1999 archie

Add missing documentation for the two control messages supported
by this node type.


52978 08-Nov-1999 archie

Add some more clarification.


52953 07-Nov-1999 julian

Stop nroff from complaining about the freeBSD version..
Also some updates to the vjc node man page.


52925 06-Nov-1999 julian

Bring the man page for netgraph socket nodes up to date.


52920 06-Nov-1999 julian

Turn on the pppoe node module


52899 05-Nov-1999 roberto

Add a forgotten source file.

Approved by: bp


52787 02-Nov-1999 green

Unbreak this build.


52723 01-Nov-1999 julian

bpf need no longer be an option


52691 30-Oct-1999 mpp

Fix some spelling errors.


52640 29-Oct-1999 archie

Revamped and more useful PPP node type, supporting multi-link PPP directly.


52619 29-Oct-1999 julian

Slight touchups noticed after checkin.


52618 29-Oct-1999 julian

Add a man page for the pppoe node. Includes sample code.


52451 24-Oct-1999 dillon

Put tty back in, problem was due to cvsup mess on freefall.


52447 23-Oct-1999 dillon

Temporarily remove 'tty' netgraph sub module until it can be made
to compile.


52441 23-Oct-1999 julian

Now that Netgraph is in the system there are some cleanups we can do.
Also save a slightly closer to completion version of the PPPOE code.

Submitted by: Archie Cobbs <archie@freebsd.org>


52419 21-Oct-1999 julian

Whistle's Netgraph link-layer (sometimes more) networking infrastructure.
Been in production for 3 years now. Gives Instant Frame relay to if_sr
and if_ar drivers, and PPPOE support soon. See:
ftp://ftp.whistle.com/pub/archie/netgraph/index.html
for on-line manual pages.

Reviewed by: Doug Rabson (dfr@freebsd.org)
Obtained from: Whistle CVS tree


52416 21-Oct-1999 julian

Test commit of first Netgraph file


52282 16-Oct-1999 wpaul

Convert the mx driver to miibus.

In order to make this work, I created a pseudo-PHY driver to deal with
Macronix chips that use the built-in NWAY support and symbol mode port.
This is actually all of them, with the exception of the original MX98713
which presents its NWAY support via the MII serial interface.

The mxphy driver actually manipulates the controller registers directly
rather than using the miibus_readreg()/miibus_writereg() bus interface
since there are no MII registers to read. The mx driver itself pretends
that the NWAY interface is a PHY locayed at MII address 31 for the sole
purpose of allowing the mxphy_probe() routine to know when it needs to
attach to a host controller.


52180 13-Oct-1999 grog

Format documentations in the form that gdb appears to want.

Change the name of rrqi to rqinfo (the equivalent of vinum(8)'s info
-V command).

rqinfo: Cosmetic changes.
Add printout of the new loginfo types.


52179 13-Oct-1999 grog

Add macro 'msgbuf' for printing out msgbuf.


52028 08-Oct-1999 n_hibma

perl5 -> perl
(This was breaking world.)

Submitted by: Marcel Molenaar, green


52027 08-Oct-1999 green

perl5 -> perl
(This was breaking world.)


52010 08-Oct-1999 n_hibma

Change the SOURCE line to include ${CURDIR}

Submitted by: Guy Helmer <ghelmer@scl.ameslab.gov>


52002 07-Oct-1999 n_hibma

Fix typo


52001 07-Oct-1999 n_hibma

The Makefiles for the modules for the USB device drivers.

Finally.


51975 07-Oct-1999 msmith

Connect the 'amr' and 'mlx' drivers. They can be built as modules or
integrated into a static kernel as the user wishes.


51974 07-Oct-1999 msmith

This is a driver for the AMI MegaRAID family of controllers. It all of
the AMI PCI controllers using the 8LD firmware interface (40LD firmware
will be supported as soon as I have hardware to test with).

These controllers are rebadged by Dell as the PERC, as well as by HP
and possibly other vendors.


51973 07-Oct-1999 msmith

This is a driver for the Mylex DAC960 family of integrated RAID
controllers. It currently supports the P, PL, PD and PU variants,
with more to be supported shortly.


51855 02-Oct-1999 bp

ncplib modules: bring up new ncp.ko and nwfs.ko


51851 02-Oct-1999 nsayer

Add the apm_saver syscons screen saver module.

apm_saver uses the apm_display() routine from the apm system to
"suspend" the "display" part of the machine.

This is beneficial for some laptops (or other machines with
non-traditional displays) that choke on the 'green' saver's
effect.

Another way of looking at this is that it's the same as a screen
saver that does an 'apm -d 0' to blank the display and an 'apm -d 1'
to bring it back. One probably ought to use these commands to make
sure the effect will be correct before using it unattended.


51750 28-Sep-1999 peter

Reconnect 'bktr' now that world won't (I hope) break again from it.
'make depend' was falling over in it before.


51748 28-Sep-1999 peter

Make the bktr module build. The Makefile was badly mangled, including
leaving the ".c" out of most of the SRCS= source files.


51739 28-Sep-1999 imp

/tmp/cvswGS523


51712 27-Sep-1999 peter

Zap some unused echo "#define NFOO 1" > foo.h style defunct stuff.


51711 27-Sep-1999 peter

Don't set an unused make(1) variable (NBPF)


51710 27-Sep-1999 peter

bktr (as a module) doesn't build.


51706 27-Sep-1999 peter

Don't generate 'bpf.h' since it's not used.


51704 27-Sep-1999 peter

Don't generate 'bpf.h' since it's not used.


51696 26-Sep-1999 roger

Update to use new Bt848 driver


51683 26-Sep-1999 peter

Minor tidy up of PPP_FILTER and NBPF stuff. Don't generate bpf.h in the
module and don't #include "bpf.h".


51563 22-Sep-1999 green

Add phk's m(4) Memory Disk driver as a KLD. I don't believe it
works properly after unloading, however.


51541 22-Sep-1999 roger

Use new location of Bt848 driver.
Remove NPCI generation as the driver no longer checks for NPIC > 0


51530 22-Sep-1999 wpaul

Spruce up the ADMtek driver: conver to newbus, miibus and add support
for the AN985 "Centaur" chip, which is apparently the next genetation
of the "Comet." The AN985 is also a tulip clone and is similar to the
AL981 except that it uses a 99C66 EEPROM and a serial MII interface
(instead of direct access to the PHY registers).

Also updated various documentation to mention the AN985 and created
a loadable module.

I don't think there are any cards that use this chip on the market yet:
the datasheet I got from ADMtek has boxes with big X's in them where the
diagrams should be, and the sample boards I got have chips without any
artwork on them.


51443 20-Sep-1999 obrien

Change the name of the installed KLM to contain a leading "if_".
Except for miibus which is now installed as miibus.ko.

Discussed by: msmith, peter, and wpaul


51440 19-Sep-1999 wpaul

RealTek driver module wasn't being built; add it to the Makefile.


51432 19-Sep-1999 wpaul

Convert the VIA Rhine driver to miibus.


51101 08-Sep-1999 des

Clean up and reorder.


51034 06-Sep-1999 n_hibma

1) s/mod(un)?load/kld$1load/

2) s/MODLOAD/KMODLOAD/ to be consistent with the rest of the variables
(KMOD, KMODOWN, KMODGRP, etc) and definition of MODLOAD/UNLOAD in the
Makefile of the ATAPI module

3) textual fixups


50986 06-Sep-1999 wpaul

This commit adds driver support for PCI fast ethernet NICs based on
the Davicom DM9100 and DM9102 chipsets, including the Jaton Corporation
XPressNet. Datasheet is available from www.davicom8.com.

The DM910x chips are still more tulip clones. The API is reproduced
pretty faithfully, unfortunately the performance is pretty bad. The
transmitter seems to have a lot of problems DMAing multi-fragment
packets. The only way to make it work reliably is to coalesce transmitted
packets into a single contiguous buffer. The Linux driver (written by
Davicom) actually does something similar to this. I can't recomment this
NIC as anything more than a "connectivity solution."

This driver uses newbus and miibus and is supported on both i386
and alpha platforms.


50983 06-Sep-1999 wpaul

Add a driver for the AMD AM79c873 10/100 PHY. By some strange coincidence,
this PHY and the Davicom DM9101 have exactly the same register definitions.
One of them is probably a clone of the other. I'm not sure which.

This is needed for the Davicom DM9102 10/100 PCI ethernet driver which
will be committed shortly.


50974 05-Sep-1999 wpaul

This commit adds driver support for the Silicon Integrated Systems
SiS 900 and SiS 7016 PCI fast ethernet chipsets. Full manuals for the
SiS chips can be found at www.sis.com.tw.

This is a fairly simple chipset. The receiver uses a 128-bit multicast
hash table and single perfect entry for the station address. Transmit and
receive DMA and FIFO thresholds are easily tuneable. Documentation is
pretty decent and performance is not bad, even on my crufty 486. This
driver uses newbus and miibus and is supported on both the i386 and
alpha architectures.


50934 05-Sep-1999 obrien

Install {ibcs2,svr4}.sh in /usr/sbin and not in /usr/bin.

related to PR: 13545


50892 04-Sep-1999 bde

Don't generate opt_debug_nullfs.h. It is no longer necessary.

Removed bogus definition of NULLFS


50889 04-Sep-1999 bde

Backed out the quick fix in the previous commit. Depending on opt_ddb.h
was a mistake. umapfs no longer depends on any options headers.


50834 03-Sep-1999 marcel

Install linux.sh in /usr/sbin and not in /usr/bin.

PR: 13545
Submitted by: Jose M. Alcaide <jose@we.lc.ehu.es>


50718 01-Sep-1999 newton

Add MAINTAINER line


50703 31-Aug-1999 wpaul

Convert the RealTek 8139 driver to newbus and miibus in one swell foop.
Also set it up to be compiled as a module.


50702 31-Aug-1999 wpaul

Add a driver for the internal PHY in the RealTek 8139.


50695 31-Aug-1999 roger

add vnode_if.h


50675 30-Aug-1999 wpaul

Convert the Adaptec and Winbond drivers to miibus.


50611 30-Aug-1999 bde

"Fixed" my recent world breakage (umap_subr.c now includes opt_ddb.h).

Fixed some style bugs, especially the bogus definition of UMAPFS.


50579 29-Aug-1999 wpaul

Convert the 3Com XL driver to miibus. This one is a little tricky
due to the fact that there are non-MII cards supported by the same
driver and I don't have all of the cards available for testing. There's
also the 3c905B-COMBO which has MII, AUI and BNC media ports all in one
package. Supporting the COMBO is difficult because we have to add the
10base5 and 10base2 media types to the same ifmedia struct as the
MII-attached types, however there is no way to force the miibus and
child PHYs into existence before xl_attach() completes, so there is
no ifmedia struct available in xl_attach(). What we do inistead is
use the mediainit method as a callback: when a child PHY is attached,
it calls the miibus mediainit routine which selects a default media.
This routing also calls the NIC driver's mediainit method (if it
implements one) at which point we can safely add the other media
types.


50501 28-Aug-1999 marcel

Add MAINTAINER and remove the unused COMPAT_LINUX and VM_STACK defines.


50477 28-Aug-1999 peter

$Id$ -> $FreeBSD$


50469 27-Aug-1999 wpaul

Fix path for miibus_if.m (mii > dev/mii);


50465 27-Aug-1999 marcel

Add sysctl variables for the Linuxulator. These reside under `compat.linux' as
discussed on current.

The following variables are defined (for now):

osname (defaults to "Linux")
Allow users to change the name of the OS as returned by uname(2),
specially added for all those Linux Netscape users and statistics
maniacs :-) We now have what we all wanted!

osrelease (defaults to "2.2.5")
Allow users to change the version of the OS as returned by uname(2).
Since -current supports glibc2.1 now, change the default to 2.2.5
(was 2.0.36).

oss_version (defaults to 198144 [0x030600])
This one will be used by the OSS_GETVERSION ioctl (PR 12917) which I
can commit now that we have the MIB. The default version number is the
lowest version possible with the current 'encoding'.

A note about imprisoned processes (see jail(2)):
These variables are copy-on-write (as suggested by phk). This means that
imprisoned processes will use the system wide value unless it is written/set
by the process. From that moment on, a copy local to the prison will be
used.

A note about the implementation:
I choose to add a single pointer to struct prison, because I didn't like the
idea of changing struct prison every time I come up with a new variable. As
a side effect, the extra storage is only needed when a variable is set from
within the prison. This also minimizes kernel bloat when the Linuxulator is
not used; both compiled in or as a module.

Reviewed by: bde (first version only) and phk


50464 27-Aug-1999 wpaul

Update these Makefiles; add mlphy and tlphy to the mii module, add
miibus_if.h to tl module's dependencies.


50388 26-Aug-1999 grog

Change asf function to use the new name of the list in kern_linker.c.
See revision 1.35 of sys/kern/kern_linker.c.


50128 21-Aug-1999 wpaul

This commit adds device driver support for the Sundance Technologies ST201
PCI fast ethernet controller. Currently, the only card I know that uses
this chip is the D-Link DFE-550TX. (Don't ask me where to buy these: the
only cards I have are samples sent to me by D-Link.)

This driver is the first to make use of the miibus code once I'm sure
it all works together nicely, I'll start converting the other drivers.

The Sundance chip is a clone of the 3Com 3c90x Etherlink XL design
only with its own register layout. Support is provided for ifmedia,
hardware multicast filtering, bridging and promiscuous mode.


50120 21-Aug-1999 wpaul

This commit adds support for the NetBSD MII abstraction layer and
MII-compliant PHY drivers. Many 10/100 ethernet NICs available today
either use an MII transceiver or have built-in transceivers that can
be programmed using an MII interface. It makes sense then to separate
this support out into common code instead of duplicating it in all
of the NIC drivers. The mii code also handles all of the media
detection, selection and reporting via the ifmedia interface.

This is basically the same code from NetBSD's /sys/dev/mii, except
it's been adapted to FreeBSD's bus architecture. The advantage to this
is that it automatically allows everything to be turned into a
loadable module. There are some common functions for use in drivers
once an miibus has been attached (mii_mediachg(), mii_pollstat(),
mii_tick()) as well as individual PHY drivers. There is also a
generic driver for all PHYs that aren't handled by a specific driver.
It's possible to do this because all 10/100 PHYs implement the same
general register set in addition to their vendor-specific register
sets, so for the most part you can use one driver for pretty much
any PHY. There are a couple of oddball exceptions though, hence
the need to have specific drivers.

There are two layers: the generic "miibus" layer and the PHY driver
layer. The drivers are child devices of "miibus" and the "miibus" is
a child of a given NIC driver. The "miibus" code and the PHY drivers
can actually be compiled and kldoaded as completely separate modules
or compiled together into one module. For the moment I'm using the
latter approach since the code is relatively small.

Currently there are only three PHY drivers here: the generic driver,
the built-in 3Com XL driver and the NS DP83840 driver. I'll be adding
others later as I convert various NIC drivers to use this code.

I realize that I'm cvs adding this stuff instead of importing it
onto a separate vendor branch, but in my opinion the import approach
doesn't really offer any significant advantage: I'm going to be
maintaining this stuff and writing my own PHY drivers one way or
the other.


50028 19-Aug-1999 mpp

Sort xrefs.

Submitted by: Alexey Zelkin <phantom@cris.net>


49705 14-Aug-1999 grog

Bring up to date to work with -CURRENT.


49611 10-Aug-1999 wpaul

Convert the Winbond driver to newbus and have it compiled as a module.


49610 10-Aug-1999 wpaul

Convert the VIA Rhine driver to newbus and set it up to be compiled as
a module. Also modified the code to work on FreeBSD/alpha and added
device vr0 to the alpha GENERIC config.

While I was in the neighborhood, I noticed that I was still using
#define NFPX 1 in all of the Makefiles that I'd copied from the fxp
module. I don't really use #define Nfoo X so it didn't matter, but
I decided to customize this correctly anyway.


49495 07-Aug-1999 grog

Add vinumraid5.c to list of sources.


49414 04-Aug-1999 nik

"Linux emulator" -> "Linux image activator"

PR: docs/12882
Submitted by: des


49271 30-Jul-1999 newton

Initial checkin


49268 30-Jul-1999 newton

Clarify use of the 'streams' pseudo-device (i.e.: static or kld).
Trust me, this stuff will be in a real manpage before 4.0 ships :-)


49143 28-Jul-1999 wpaul

Add a module Makefile for the PNIC driver.


49076 25-Jul-1999 wpaul

This commit adds device driver support for Adaptec Duralink PCI fast
ethernet controllers based on the AIC-6915 "Starfire" controller chip.
There are single port, dual port and quad port cards, plus one 100baseFX
card. All are 64-bit PCI devices, except one single port model.

The Starfire would be a very nice chip were it not for the fact that
receive buffers have to be longword aligned. This requires buffer
copying in order to achieve proper payload alignment on the alpha.
Payload alignment is enforced on both the alpha and x86 platforms.
The Starfire has several different DMA descriptor formats and transfer
mechanisms. This driver uses frame descriptors for transmission which
can address up to 14 packet fragments, and a single fragment descriptor
for receive. It also uses the producer/consumer model and completion
queues for both transmit and receive. The transmit ring has 128
descriptors and the receive ring has 256.

This driver supports both FreeBSD/i386 and FreeBSD/alpha, and uses newbus
so that it can be compiled as a loadable kernel module. Support for BPF
and hardware multicast filtering is included.


49067 24-Jul-1999 wpaul

Add mx and ax modules for the Macronix and ASIX drivers and update the
modules Makefile so they get built.


49016 23-Jul-1999 wpaul

Create module directories for the xl, ti, tl and sk drivers and add
them to the Makefile so that modules will be generated for /modules.


48645 06-Jul-1999 des

Rename bpfilter to bpf.


48323 28-Jun-1999 des

Use the correct value for banksize so splash_pcx works in LFB modes.


48167 24-Jun-1999 grog

Reenable Vinum build


48104 22-Jun-1999 yokota

The second phase of syscons reorganization.

- Split syscons source code into manageable chunks and reorganize
some of complicated functions.

- Many static variables are moved to the softc structure.

- Added a new key function, PREV. When this key is pressed, the vty
immediately before the current vty will become foreground. Analogue
to PREV, which is usually assigned to the PrntScrn key.
PR: kern/10113
Submitted by: Christian Weisgerber <naddy@mips.rhein-neckar.de>

- Modified the kernel console input function sccngetc() so that it
handles function keys properly.

- Reorganized the screen update routine.

- VT switching code is reorganized. It now should be slightly more
robust than before.

- Added the DEVICE_RESUME function so that syscons no longer hooks the
APM resume event directly.

- New kernel configuration options: SC_NO_CUTPASTE, SC_NO_FONT_LOADING,
SC_NO_HISTORY and SC_NO_SYSMOUSE.
Various parts of syscons can be omitted so that the kernel size is
reduced.

SC_PIXEL_MODE
Made the VESA 800x600 mode an option, rather than a standard part of
syscons.

SC_DISABLE_DDBKEY
Disables the `debug' key combination.

SC_ALT_MOUSE_IMAGE
Inverse the character cell at the mouse cursor position in the text
console, rather than drawing an arrow on the screen.
Submitted by: Nick Hibma (n_hibma@FreeBSD.ORG)

SC_DFLT_FONT
makeoptions "SC_DFLT_FONT=_font_name_"
Include the named font as the default font of syscons. 16-line,
14-line and 8-line font data will be compiled in. This option replaces
the existing STD8X16FONT option, which loads 16-line font data only.

- The VGA driver is split into /sys/dev/fb/vga.c and /sys/isa/vga_isa.c.

- The video driver provides a set of ioctl commands to manipulate the
frame buffer.

- New kernel configuration option: VGA_WIDTH90
Enables 90 column modes: 90x25, 90x30, 90x43, 90x50, 90x60. These
modes are mot always supported by the video card.
PR: i386/7510
Submitted by: kbyanc@freedomnet.com and alexv@sui.gda.itesm.mx.

- The header file machine/console.h is reorganized; its contents is now
split into sys/fbio.h, sys/kbio.h (a new file) and sys/consio.h
(another new file). machine/console.h is still maintained for
compatibility reasons.

- Kernel console selection/installation routines are fixed and
slightly rebumped so that it should now be possible to switch between
the interanl kernel console (sc or vt) and a remote kernel console
(sio) again, as it was in 2.x, 3.0 and 3.1.

- Screen savers and splash screen decoders
Because of the header file reorganization described above, screen
savers and splash screen decoders are slightly modified. After this
update, /sys/modules/syscons/saver.h is no longer necessary and is
removed.


47945 16-Jun-1999 yokota

Print verbose messages when there is error.
Oked by: des


47887 12-Jun-1999 roger

Add bktr (Bt848/Bt878 driver loadable module) to the Makefile i386 only section


47886 12-Jun-1999 roger

Change perl5 to perl (same change as made in the fxp module)


47885 12-Jun-1999 roger

Makefile to build a loadable bktr Bt848/Bt878 device driver
This allows the bt848 grabber to be loaded in the boot loader or
after bootup without the need for a custom kernel


47693 02-Jun-1999 jb

Remove vinum from the build until Greg reviews phk's cdevsw changes.

Preferred by: phk (rather than committing the patch without review).


47678 01-Jun-1999 jlemon

Unifdef VM86.

Reviewed by: silence on on -current


47214 15-May-1999 grog

Reenable vinum build.


47106 13-May-1999 phk

Vinum doesn't compile right now.


46899 10-May-1999 des

MFS: indent-assisted style cleanup.


46689 08-May-1999 des

A little closer to style(9).


46544 06-May-1999 bde

Fixed bitrot in comments.


46526 05-May-1999 obrien

MFS: don't build the pcic.ko module.


46453 04-May-1999 billf

Add procfs_rlimit.c so the kernel actually compiles.

PR: kern/11497
Submitted by: Jos Backus <jos.backus@nl.origin-it.com> (misordered patch)
Pointy Hat: phk, adrian


46409 04-May-1999 jkh

Add missing copyright.


46407 04-May-1999 jkh

Add "fire" screen saver.

Submitted by: Brad Forschinger <retch@flag.blackened.net>


46130 28-Apr-1999 msmith

Allow loadable interface drivers with BPF support to be loaded into a kernel
that doesn't have it. This is achieved by having minimal do-nothing stubs
enabled when there are no bpfilter devices configured.

Driver modules should be built with BPF enabled for maximum
convenience (but can be built without it for maximum performance).


45954 23-Apr-1999 ghelmer

Reference kld(4).

Submitted by: Nathan Ahlstrom <nrahlstr@winternet.com>


45872 20-Apr-1999 peter

No need to use a magic IPFIREWALL_MODULE - the build system supplies
one already we can test for.


45843 19-Apr-1999 peter

Kill joy for the time being, it used lkm unconditionally, breaking world.

Submitted by: "Steven G. Kargl" <kargl@troutmask.apl.washington.edu>


45826 19-Apr-1999 peter

Remove LKM module glue Makefile.


45774 18-Apr-1999 dfr

Use perl, not perl5 to compile interfaces.


45755 18-Apr-1999 bde

Actually build the new fxp module.

Updated comments about rotten modules.

Fixed disorder and English errors.


45745 17-Apr-1999 peter

Disconnect lkm subdir so we don't build a lkm module, in case something
I do breaks world or the nightly snapshots. (you can still do it by hand
though for the moment)


45737 17-Apr-1999 grog

Reverse last checkin, which was a regression. Grrr.


45735 17-Apr-1999 grog

Replace with the correct version which sources in the other .gdbinits.


45722 16-Apr-1999 peter

Add a sample loadable pci driver Makefile..


45663 13-Apr-1999 peter

Drop the atapi module from the build, it's just wasting time.


45647 13-Apr-1999 bde

Fixed bogus SRCS definition which broke `make depend'. Plain `make'
worked accidentally because the rule to generate ${OBJS} from ${SRCS}
is sloppy.

Fixed style bugs.


45617 12-Apr-1999 des

PCX loader for pseudo-device splash.


45616 12-Apr-1999 des

Centralize and reorganize a few macros.


45528 10-Apr-1999 grog

Add kldstat macro, which basically does the same thing as kldstat(8)


45381 06-Apr-1999 ghelmer

Replace LKM with KLD.

Submitted by: Nathan Ahlstrom <nrahlstr@winternet.com>


45322 05-Apr-1999 grog

'fr' macro: trace back to new kernel base 0xc0000000


45290 04-Apr-1999 grog

Correct forgotten defs in defproc macro


45168 31-Mar-1999 grog

Various bug fixes to make them actually work.


45119 29-Mar-1999 yokota

Make the splash screen alternate "fade out" and "fade in" action at
regular intervals, when the module is used as a screen saver.

Submitted by: asami


45087 28-Mar-1999 grog

Restructure the .gdbinit files:

.gdbinit.crash contains a top-level .gdbinit suitable for debugging
crash dumps

.gdbinit.serial contains a top-level .gdbinit suitable for serial
debugging

Each of these two files reads the following files:

.gdbinit.kernel: This file contains general macros suitable for kernel
debugging. It is not related to vinum

.gdbinit.vinum: This file contains macros specific to debugging
vinum.

.gdbinit.paths: Contains information about the location of the source
and object files on the system.


45086 28-Mar-1999 grog

Restructure the .gdbinit files:

.gdbinit.crash contains a top-level .gdbinit suitable for debugging
crash dumps

.gdbinit.serial contains a top-level .gdbinit suitable for serial
debugging

Each of these two files reads the following files:

.gdbinit.kernel: This file contains general macros suitable for kernel
debugging. It is not related to vinum

.gdbinit.vinum: This file contains macros specific to debugging
vinum.

.gdbinit.paths: Contains information about the location of the source
and object files on the system.


44756 14-Mar-1999 julian

quick BDE premption


44754 14-Mar-1999 julian

A bit of a hack, but allows the vn device to be a module again.

Submitted by: Matt Dillon <dillon@freebsd.org>


44739 14-Mar-1999 julian

Submitted by: Matt Dillon <dillon@freebsd.org>
The old VN device broke in -4.x when the definition of B_PAGING
changed. This patch fixes this plus implements additional capabilities.
The new VN device can be backed by a file ( as per normal ), or it can
be directly backed by swap.

Due to dependencies in VM include files (on opt_xxx options) the new
vn device cannot be a module yet. This will be fixed in a later commit.
This commit delimitted by tags {PRE,POST}_MATT_VNDEV


44713 13-Mar-1999 grog

Improve the manner in which the location of the kld is found. It
should now be completely automatic.


44212 22-Feb-1999 newton

Oops. Adding a Makefile might help anyone who wants to use streams
as a module...


44209 22-Feb-1999 n_hibma

Update for the man page. 4.0 is using KLD's not LKM's.


44208 22-Feb-1999 newton

Converted "streams" pseudo-device into a KLD


44060 15-Feb-1999 fenner

Clean up some .Os macro uses: quotes are not needed, multiple arguments
don't really work if the first one isn't "FreeBSD", and "FreeBSD-Experimental"
isn't an OS name.


43704 06-Feb-1999 bde

Honor ${LDFLAGS} for building svr4_genassym. This is part of fixing
world breakage (mainly for cross-world cases). The world Makefile
attempts to build tools static so that nonexistent or wrong shared
libraries and interpreters don't get used. This is broken anyway
since the world Makefile doesn't know about svr4_genassym.

Force building svr4_genassym static. This is part of "fixing"
aout-to-elf-build breakage. aout-to-elf-build abuses NOTOOLS to
avoid rebuilding all the aout tools. This saves time and avoids
some complications. However, it breaks all the internal tools --
they get linked to target libraries which might not work. Cases
where the host can run the target's static libraries are "fixed"
by encrufting all Makefiles that build internal tools to build the
tools static.

Don't add .depend to CLEANFILES -- it just breaks the separation of
`make cleandepend' from `make clean'.

Removed some superflous explicit dependencies.


43673 05-Feb-1999 des

Followup to yokota's last commit:

- va_mode_flags -> va_info.vi_flags
- scanline width may be different from screen width


43664 05-Feb-1999 yokota

- Don't assume the line length in the video memory is always the same as
the screen width.
- Store the current video mode information in the `video_adapter' struct.
- The size of the `v_offscreensize' field in the VESA mode information
block is u_int16, not u_int8.


43580 04-Feb-1999 grog

Split .gdbinit file into two versions, on suitable for remote
debugging, the other for dump analysis.


43556 03-Feb-1999 semenu

Added ntfs subdirectory.
Reviewed by: David O'Brien <obrien@NUXI.com>


43551 03-Feb-1999 semenu

This commit was generated by cvs2svn to compensate for changes in r43550,
which included commits to RCS files with non-trunk default branches.


43490 01-Feb-1999 grog

Move CFLAGS to God's Own Position
Remove white space between CFLAGS and +=
Remove unneeded options

Implied-by: bde


43423 30-Jan-1999 newton

Nuked the "hello, world!" program from this directory (it has
been teleported to share/examples/svr4).


43415 30-Jan-1999 newton

Added a "README" file containing text taken from the message I sent
to -current explaining how to use this sucker.


43414 30-Jan-1999 newton

Activate svr4 module


43412 30-Jan-1999 newton

Emulator KLD for SysVR4 executables grabbed from NetBSD.
See http://www.freebsd.org/~newton/freebsd-svr4 for limitations,
capabilities, history and TO-DO list.


43405 30-Jan-1999 grog

Add MAINTAINER


43373 29-Jan-1999 grog

Include .gdbinit for debugging


43243 26-Jan-1999 julian

Compile the linux module with the same flags as the kernel.
(oops).

Submitted by: "Richard Seaman, Jr." <dick@tar.com>


43229 26-Jan-1999 yokota

Oops, one line was accidentally commented out in the previous commit.


43083 23-Jan-1999 peter

Make the -I paths closer to what happens when compiling as part of the
kernel where #include "filename.h" has been disabled.


42998 21-Jan-1999 yokota

Add VESA mode support. If the VESA support is compiled into the kernel
or the VESA KLD is preloaded by the boot loader, you can load a 256 color
BMP file larger than 320x200.


42990 21-Jan-1999 peter

Oops, I accidently had devfs enabled in the vn module..


42988 21-Jan-1999 peter

Add vn module to build list.


42987 21-Jan-1999 peter

Build a vn module. I've lost count of the number of times I could have
used vn but didn't have it compiled in.


42922 21-Jan-1999 grog

Add source file vinumdaemon.c


42822 19-Jan-1999 peter

Update for pcic for kld modules and activate


42769 17-Jan-1999 peter

Undo #undef KERNEL hack for vnode.h to avoid vnode_if.h.
XXX It probably makes sense to have a flag for bsd.kern.mk to avoid these
rules.
XXX IO_NDELAY seems to be the main reason for it, when used in a cdevsw
read or write "flag" context. Perhaps a redundant declaration
somewhere like sys/conf.h might help remove the need for vnode.h in
these device drivers in the first place.


42763 17-Jan-1999 peter

Clean up the KLD/LKM goop a bit.


42760 17-Jan-1999 peter

Add the lkm module


42759 17-Jan-1999 peter

World, please meet the kld module called "lkm". If you have an a.out
kernel and you forgot to add 'options LKM', you can kldload this module
and get LKM compatability. (!)


42749 17-Jan-1999 yokota

Retrun EAGAIN if the current video mode is a graphics mode.


42720 16-Jan-1999 des

Move the definition of set_origin from logo_saver.c to saver.h.


42623 13-Jan-1999 yokota

Calculate the number of bitmap colors in the correct way.

The bug found by: Kevin Street <street@iname.com>


42529 11-Jan-1999 yokota

Update the pointer into the bitmap correctly. The previous code
had the pointer off by 4 bytes if the width of the bitmap is
a multiple of four.


42506 11-Jan-1999 yokota

Add splash screen module. This version has rather limited
capabilities, but should be a good start... Well, sort of.

It can handle W*ndows 256 color BMP file. (Other color depth probably
won't work.) The size of the image must be 320x200 or less. *sigh*


42504 11-Jan-1999 yokota

The first stage of console driver reorganization: activate new
keyboard and video card drivers.

Because of the changes, you are required to update your kernel
configuration file now!

The files in sys/dev/syscons are still i386-specific (but less so than
before), and won't compile for alpha and PC98 yet.

syscons still directly accesses the video card registers here and
there; this will be rectified in the later stages.


42236 01-Jan-1999 des

Use M_VGA_VG320 if M_VESA_CG800x600 is not available. It looks ugly in
low-res, but it works...

Submitted by: Ben Smithurst <ben@scientia.demon.co.uk>


42228 01-Jan-1999 bde

Fixed bitrot in comments.


42206 31-Dec-1998 des

Activate the rain screensaver.


42205 31-Dec-1998 des

Here's one for the terminally melancholic amongst us.


42204 31-Dec-1998 des

Eliminate "initialization from incompatible type" warning in SAVER_MODULE
macro.


42203 31-Dec-1998 des

Compile without warnings.


42179 30-Dec-1998 yokota

Make the VESA KLD module work!


42143 29-Dec-1998 peter

Add -I${.CURDIR} since it #includes logo.c from the source dir and breaks
when building with an obj dir.

Reported by: Quite a few people.. :-/


42127 28-Dec-1998 peter

Update for pseudo-device support tweaks..


42121 28-Dec-1998 des

Activate the logo screensaver.


42120 28-Dec-1998 des

One more for the road: Chuck the friendly floating daemon. Requires
VESA_800x600 to run.


42119 28-Dec-1998 des

Save the palette in case syscons doesn't restore it properly.
Fix a minor overflow.


42116 28-Dec-1998 peter

Reconnect vinum KLD module and have it build from sys/dev/vinum rather than
from outside the src/sys tree like before.


42109 27-Dec-1998 des

Activate the warp screensaver.


42108 27-Dec-1998 des

Finally give FreeBSD a graphical screensaver. It isn't much, but it works,
and can serve as a template for further efforts. Consider this my (belated)
Christmas present to the Project :)

Requested by: jkh


42099 27-Dec-1998 sos

Temporaryly disable vinum, awaiting repository copy of misplaced files.


42097 27-Dec-1998 sos

Remove depricated wcd module.


41104 12-Nov-1998 jkh

Install scripts without .sh suffix.


41081 11-Nov-1998 peter

Rename joy,ibcs2,linux to joy.sh,ibcs2.sh,linux.sh (via repo copy).


41071 11-Nov-1998 peter

Reenable /usr/bin/ibcs2 installing from here; it works now that the
guaranteed kernel stack overflow is fixed.


41070 11-Nov-1998 bde

Don't forget to remove opt_mfs.h.

Fixed style bugs (bitrotted FOOFS options and hard-coded ${.TARGET}).


41065 10-Nov-1998 jkh

We need to install the linux shell script or the lkm version will
still be in place.


40965 06-Nov-1998 peter

Make this work now; fixing the kstack overflow allows the dependency to
be added to the symbol search order safely.


40964 06-Nov-1998 peter

Don't use a glue file for the module; use the one in the kernel.


40923 05-Nov-1998 peter

Build linux_genassym static, this should help aout-to-elf builds


40921 05-Nov-1998 peter

Do not overwrite the lkm versions of the install scripts for now. linux
works but ibcs2 has a load failure and joy doesn't look like it'll work.


40920 05-Nov-1998 peter

Update to use kldload, no temporary files!


40909 04-Nov-1998 jdp

Fix make world breakage: "$MACHINE_ARCH" -> "${MACHINE_ARCH}".


40908 04-Nov-1998 msmith

Don't try to build i386-centric modules on non-i386 systems.


40885 04-Nov-1998 peter

Simple update to make these work as kld and preload modules.


40858 03-Nov-1998 peter

Reactivate coda. Also, KLD isn't just for i386, it will work on all
architectures since it is a key part of the configuration mechanism. The
exact same code runs in the kernel as it does in a kld module.


40853 03-Nov-1998 peter

The union kld module is now fully functional.


40850 03-Nov-1998 peter

Update comments on status of modules


40612 23-Oct-1998 peter

Refer to vinum driver sources in a single location (outside of the
kernel src/sys tree, sigh - it should really be sys/dev/vinum/*).


40441 16-Oct-1998 peter

Missed this file.


40440 16-Oct-1998 peter

Sample initial set of kld-ified modules. Not all have been completely
converted yet. These are more of a starting point. This is NOT connected
to the parent Makefile.

OK'ed by jkh (who is ever so patiently waiting)


40237 11-Oct-1998 alex

Unregister the glibc2 brand at module unload time.

Change the ELF registration/unregistration scheme to be less error prone.
Adding a new brand requires a single addition to linux_brandlist instead of
modifying linux_load(), linux_unload(), and linux_elf_init().

Approved by: jkh
Reviewed by: msmith


39778 29-Sep-1998 rvb

Fixes for lkm:
1. use VFS_LKM vs ACTUALLY_LKM_NOT_KERNEL
2. don't pass -DCODA to lkm build


39707 28-Sep-1998 grog

Include vinum in SUBDIR


39706 28-Sep-1998 grog

Correct calculation of revive blocksize
Submitted by: Chris Csanady


39705 28-Sep-1998 grog

Get include paths right


39653 25-Sep-1998 rvb

This commit was generated by cvs2svn to compensate for changes in r39652,
which included commits to RCS files with non-trunk default branches.


39652 25-Sep-1998 rvb

lkm for coda


39437 17-Sep-1998 msmith

Add support for glibc consumers using the new ld-linux.so.2 linker.
I can't say this was the most inspired fix, but it matches the design OK.


39428 17-Sep-1998 sos

Fix the sreensavers so the work again with the new syscons & friends.

Submitted by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>


39331 16-Sep-1998 grog

This commit was generated by cvs2svn to compensate for changes in r39330,
which included commits to RCS files with non-trunk default branches.


39304 15-Sep-1998 sos

Add the vesa module to the list


39303 15-Sep-1998 sos

Double oops, committed the wrong Makefile ata that, fixed.


39302 15-Sep-1998 sos

Oops for the Makefile for the VESA lkm


39287 15-Sep-1998 sos

Add VESA support to syscons.

Kazu writes:

The VESA support code requires vm86 support. Make sure your kernel
configuration file has the following line.
options "VM86"
If you want to statically link the VESA support code to the kernel,
add the following option to the kernel configuration file.
options "VESA"

The vidcontrol command now accepts the following video mode names:
VESA_132x25, VESA_132x43, VESA_132x50, VESA_132x60, VESA_800x600

The VESA_800x600 mode is a raster display mode. The 80x25 text will
be displayed on the 800x600 screen. Useful for some laptop computers.

vidcontrol accepts the new `-i <info>' option, where <info> must be
either `adapter' or `mode'. When the `-i adapter' option is given,
vidcontrol will print basic information (not much) on the video
adapter. When the `-i mode' option is specified, vidcontrol will
list video modes which are actually supported by the video adapter.

Submitted by: Kazutaka YOKOTA yokota@FreeBSD.ORG


38911 07-Sep-1998 cracauer

Load linux emulator lkm only when not already loaded. This avoids
leftover files in /tmp. Script slightly modified from PR version
to use fewer processes.
PR: i386/7725
Submitted by: Stefan Eggers seggers@semyam.dinoco.de


38702 31-Aug-1998 wosch

Sort cross references.


38507 24-Aug-1998 jkh

Shut this thing up, like the other LKMs


38137 06-Aug-1998 yokota

The daemon, snake and star savers should refuse to load if the current
video mode is the VESA mode, because they cannot work properly under the
VESA mode support as in the current form.


37877 27-Jul-1998 alex

A better solution to the rm_at_exit problem: Register the exit function
during first mount. Unregister the exit function at last unmount.

Concept by: sef
Reviewed by: sef
Implemented by: alex


37864 25-Jul-1998 alex

Override the default VFS LKM dispatch functions so that a module
unload function can be provided (this is necessary to unregister
the at_exit handler).


37462 07-Jul-1998 bde

Finished previous fix - don't forget to add one dummy options header
to CLEANFILES.

Fixed lots of style bugs.


37461 07-Jul-1998 bde

Added a `build-tools' target for internal tools. (linux_genassym may
not actually work for cross compiling, but that is another problem.)

Honor LDFLAGS for building internal tools. (Tools should normally
be built static to avoid problems with picking up target shared
libraries. bsd.kmod doesn't set -static yet, and has some problems
with `LDFLAGS=-static ...' in the environment.)


37341 02-Jul-1998 sos

Fix the N'th occurance of missed bits due to opt_???? mucking.

Doesn't anybody TEST code before committing....

This is the N+1'th time these laste couble of days...


37324 01-Jul-1998 bde

Fixed missing options headers. Options that affect LKMs shouldn't
exist.


37323 01-Jul-1998 bde

Added opt_vmpage.h to SRCS so that it actually gets created.


37298 30-Jun-1998 sos

Leading whitespace in Makefile are TABS not spaces....


37294 30-Jun-1998 jmg

add new opt_nfs.h to cleanfiles...


37293 30-Jun-1998 jmg

fix more of my breakage... :(

create opt_vmpage.h


37291 30-Jun-1998 jmg

fix buildworld hopefully be3fore anyone complains...

NFS_*TIMO should possibly be converted to sysctl vars (jkh's suggestion),
but in some cases it looks like nfs keeps a copy of the value in a struct

hash sizes are already ifdef'd KERNEL, so there aren't userland inpact
from them...


36171 19-May-1998 jkoshy

Removed reference to obsolete file "README.iBCS2".

Submitted by: Max Euston <max@jmrodgers.com>
PR: 6679


36059 15-May-1998 jb

The FreeBSD lkm design is aout specific.


34905 27-Mar-1998 peter

Give this a shot at actually working as an LKM..


34675 19-Mar-1998 bde

Fixed a race to build the `@' and `machine' symlinks early enough
for `make -jN'.


34529 12-Mar-1998 eivind

The coff LKM needs IBCS2 to be able to link (for the 'make regress'
linktest) - add this as a dependency.


33802 25-Feb-1998 bde

Don't add files handled by bsd.kmod.mk to CLEANFILES. Don't add never-
generated files to CLEANFILES.


33574 18-Feb-1998 msmith

Don't reference (nonesxistent) qcam module.


33143 06-Feb-1998 eivind

Back out opt_diagnostic.h changes.


33105 04-Feb-1998 eivind

Make the LKMs handle DIAGNOSTIC as a new-style option.


33070 04-Feb-1998 eivind

Make this work with SPX_HACK as a new-style option.


32990 01-Feb-1998 bde

Don't put "-I." in ${CFLAGS} here. bsd.kmod.mk now puts an absolute
path to the obj directory in ${CFLAGS}. This is actually equivalent
to "-I." since bsd.kmod.mk also puts -I- in ${CFLAGS}.


32988 01-Feb-1998 bde

Don't put a path to "sys" in ${CFLAGS} here. bsd.kmod.mk now handles
this more generally.


32987 01-Feb-1998 bde

Don't handle the `machine' symlink or related include paths here.
bsd.kmod.mk now handles it more generally.


32986 01-Feb-1998 bde

Fixed breakage from converting NULLFS_DEBUG to a new-style option.


32725 24-Jan-1998 eivind

LKM-support for converting all file-system options to new-style options.


32571 16-Jan-1998 bde

Include <machine/pc/display.h>, not <i386/include/pc/display.h>. This is
not quite correct, because the Makefiles in lkm/syscons don't set up the
`machine' symlink, but other, more volatile headers in <machine> are
already used.


32357 09-Jan-1998 eivind

Minor fixups after INET option change.


32352 08-Jan-1998 eivind

Make the LKMs compile with the INET option as a newstyle option in
opt_inet.h.


31789 16-Dec-1997 eivind

Fix my typo.

Submitted by: helbig


31783 16-Dec-1997 eivind

Handle COMPAT_43 define -> option change.


31781 16-Dec-1997 eivind

Whoops - fix this after yesterday's IPX option changes. Also fix
minor buglet when neither bsdcomp, deflate or filter is used.

Pointed out by: Chris Timmons <skynyrd@opus.cts.cwu.edu>


30725 26-Oct-1997 yokota

- The daemon might go off the screen and crashed the system if the
screen size was changed while the screen saver was inactive. Adjust
the positions of the daemon and the text and clip them accordingly
each time.

- Don't call set_border() too often. Some video chip may produce
flicker.

Pointed out by tony@dell.com

- Don't fill the entire screen with blank char every time the saver is
called. Blank only the part of the screen where the daemon and the
text was previously printed.


30530 18-Oct-1997 peter

Update Makefile to know about PPP_FILTER and fix the PPP_BSDCOMP and
PPP_DEFLATE options... The code uses #if defined(PPP_DEFLATE) etc, so the
original method of "#define PPP_DEFLATE 0" did not actually disable
anything. It was not possible to configure out bsdcomp or zlib
compression. Also, join the settings for PPP_FILTER and NBPFILTER together
since they are related here (can't have PPP_FILTER without NBPFILTER).


30095 04-Oct-1997 yokota

Make the blank screen saver work with MDA and CGA. The fade and green
savers are also modified so that they behave in the same way as the
blank saver on MDA and CGA, although it's not the way these screen
savers are supposed to work, but fading monitor and tickling green
monitor cannot be done on MDA and CGA, AFAIK. So, this is the second
best solution.

As of this change, the current state of support of screen savers is
summarized in the following table.

MDA CGA EGA VGA
blank OK OK NA OK
daemon OK OK OK OK
fade * * NA OK
green * * NA OK
snake OK OK OK OK
star OK OK OK OK

OK: works
NA: doesn't work, the module cannot be loaded for this adapter.
*: behave the same way as the blank saver.

As you can see, EGA is left out for now. But, we can do no better, as
EGA registers cannot be read...

Reviewed by: sos


29272 10-Sep-1997 peter

Add example for IPFIREWALL_DEFAULT_TO_ACCEPT


28873 28-Aug-1997 jlemon

Remove the vm86 LKM.


28800 26-Aug-1997 bde

Removed bogus -I path in CFLAGS.


28526 21-Aug-1997 jmg

make lkm/if_ppp build again.. opt_ppp.h is needed again...

similar fix to one provided in pr4348

Closes PR#4348


27996 09-Aug-1997 dyson

Add VM86 to the lkm build.


27957 07-Aug-1997 bde

Don't use /sys.
Submitted by: Jeremy Lea <reg@shale.csir.co.za>


27536 20-Jul-1997 bde

Fixed bitrot in fpu LKMs.


27427 15-Jul-1997 yokota

Incorporated lots of fixes and suggestions from Bruce and changes to
facilitate the new saver loading/unloading notification interface
in syscons.

daemon_saver:
- M_NOWAIT was wrong, since NULL returns are not handled. Just use
M_WAITOK.
- use `ostype' instead of hard-coded "FreeBSD". Now there is no more
hard-coded string! (But, who will run this screen saver on other
OS?!)
- put macros and data declarations in a consistent order.
- -DDEAMON_ONLY and -DSHOW_HOSTNAME options added in the previous commit
are removed. Options of this kind can go stale and no one notices
because no one uses them. DEAMON_ONLY is just removed. SHOW_HOSTNAME
is made default.

snake_saver:
- use `ostype' and `osrelease' as in the daemon saver. The string changes
slightly - there was a hyphen after "FreeBSD"; now there is a space.
(It is consistent with uname -a, like the daemon server already is.)

all screen savers:
- Use the new add_scrn_saver()/remove_scrn_saver() in syscons.c
to declare loading/unloading of a screen saver. Removed reference
to `current_saver' and the variable `old_saver' as they are not
necessary anymore.
- The blank, fade and green screen savers manipulate VGA registers.
Module loading should fail for non-VGA cards.
- `scrn_blanked' is consistently treated as a number/counter rather
than boolean.
- Some savers touch `scp->start' and `scp->end' to force entire screen
update when stopping themselves. This is unnecessary now because
syscons.c takes care of that.
- cleared up many unused or unnecessary #include statements.
- Removed -DLKM from Makefiles.

YOU NEED TO RECOMPILE BOTH SCREEN SAVERS AND KERNEL AS OF THIS CHANGE.


26893 24-Jun-1997 yokota

Take the OS release string from the kernel variable `osrelease'
rather than hard-code it in the message text. Optinally include
the host name in the message if SHOW_HOSTNAME is defined.

The origianl idea and sample code submitted by Angelo Turetta
<ATuretta@stylo.it>.


26146 26-May-1997 yokota

Corrected accidental breakage in the last commit.

Pointed out by: Steve Passe, smp@csn.net


26128 25-May-1997 obrien

Fixed up ssigala@globalnet.it's "Jumping Daemon" screen saver for < v3.0.


26081 24-May-1997 yokota

Flip the daemon at the edge of the screen.
Submitted by: Sandro Sigala, Chris Shenton


25968 21-May-1997 yokota

Introducing "Jumping Daemon" screen saver. This is really cute and
eye-catching :-)

Submitted by: ssigala@globalnet.it


25967 21-May-1997 yokota

Introducing "Jumping Daemon" screen saver. This is really cute and
eye-catching :-)

Submitted by: ssigala@globalnet.it

Also fixed some `extern' declarations in saver.h.


25343 01-May-1997 jkh

Also quiet down the ibcs2 startup (same reason as linux lkm - it screws
the console output).


25342 01-May-1997 jkh

Merge 1.8.2.1 into -current.


24674 06-Apr-1997 dufault

Make MOD_* macros almost consistent:

Use the name argument almost the same in all LKM types. Maintain
the current behavior for the external (e.g., modstat) name for DEV,
EXEC, and MISC types being #name ## "_mod" and SYCALL and VFS only
#name. This is a candidate for change and I vote just the name without
the "_mod".

Change the DISPATCH macro to MOD_DISPATCH for consistency with the
other macros.

Add an LKM_ANON #define to eliminate the magic -1 and associated
signed/unsigned warnings.

Add MOD_PRIVATE to support wcd.c's poking around in the lkm structure.

Change source in tree to use the new interface.

Reviewed by: Bruce Evans


24673 06-Apr-1997 dufault

Make MOD_* macros almost consistent:

Use the name argument almost the same in all LKM types. Maintain
the current behavior for the external (e.g., modstat) name for DEV,
EXEC, and MISC types being #name ## "_mod" and SYCALL and VFS only
#name. This is a candidate for change and I vote just the name without
the "_mod".

Change the DISPATCH macro to MOD_DISPATCH for consistency with the
other macros.

Add an LKM_ANON #define to eliminate the magic -1 and associated
signed/unsigned warnings.

Add MOD_PRIVATE to support wcd.c's poking around in the lkm structure.

Change source in tree to use the new interface.

Reviewed by: Bruce Evans


22982 22-Feb-1997 peter

Revert $FreeBSD$ back to $Id$


22209 02-Feb-1997 wosch

Make ibcs2 a little bit saver. Add copyright.


21731 15-Jan-1997 sos

Upgrade the kbdio rutines to provide queued kbd & mouse events.
Minor other updates to syscons by me.

Submitted by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>


21673 14-Jan-1997 jkh

Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.


21635 13-Jan-1997 wosch

Sort cross references.


21480 10-Jan-1997 mpp

Add a man page for linux(8) (loads the Linux emulator kernel module).


19643 11-Nov-1996 jkh

Make snake 3.0-CURRENT here.

There's gotta be a better way of syncronizing our release numbers. :-)


18959 16-Oct-1996 sos

Prepare kernel to take advantage of "branded" ELF binaries.


18778 06-Oct-1996 wosch

delete unused variable BINDIR, use new variable MODLOAD/MODUNLOAD


18471 22-Sep-1996 wosch

add forgotten $Id$


18432 21-Sep-1996 bde

Fiexed CFLAGS. Compiling things in the kernel without -O now causes
zillions of warnings about static inline functions because `inline'
is ignored without -O.


18086 06-Sep-1996 pst

Bannish ATAPI and ATAPI_STATIC #defines to opt_atapi.h.


18026 03-Sep-1996 bde

`struct linker_set execsw_set' was declared as const and pointers in it
were declared as non-const. This is backwards (_lkm_exec() changes the
pointers but all the target `struct execsw's are const). Fixed this
and poisoned related declarations to match and removed the bogus casts
that hid the bug.


16879 01-Jul-1996 bde

Added or restored #include of <machine/md_var.h>. Some declarations
moved from <machine/cpufunc.h> to better places.


16726 25-Jun-1996 bde

Fixed the `machine' link. It pointed to the wrong place, and was created
too late to be used in all cases. It should probably be created (early)
in bsd.kmod.mk for all LKMs.

Use cc instead of cpp | as for the same reasons as in the kernel makefile.
CFLAGS isn't split up as well as in the kernel makefile, but cc doesn't
pass compiler warning flags to cpp, so there is no need to split it.


16625 23-Jun-1996 bde

Don't add -I/sys to CFLAGS. bsd.kmod.mk adds the correct (relative)
path.


16624 23-Jun-1996 bde

Don't claim to be a VFS_LKM - generate vnode_if.h by putting it in SRCS.

Don't add -I/sys to CFLAGS. bsd.kmod.mk adds the correct (relative)
path.


16623 23-Jun-1996 bde

Don't (re)define ACTUALLY_LKM_NOT_KERNEL. It wasn't even used by the
joy driver proper.

Don't add -I/sys to CFLAGS. bsd.kmod.mk adds the correct (relative)
path.


16619 23-Jun-1996 bde

Use IPFIREWALL_MODULE instead of ACTUALLY_LKM_NOT_KERNEL to indicate
LKM'ness. ACTUALLY_LKM_NOT_KERNEL is supposed to be so ugly that it
only gets used until <machine/conf.h> goes away. bsd.kmod.mk should
define a better-named general macro for this. Some places use
PSEUDO_LKM. This is another bad name.

Makefile:
Added IPFIREWALL_VERBOSE_LIMIT option (commented out).


16615 23-Jun-1996 bde

Disabled unusable union lkm.


16483 18-Jun-1996 ache

Add new parts, kernel not booted in other case


16317 12-Jun-1996 asami

Add ccd.


16315 12-Jun-1996 asami

This commit was generated by cvs2svn to compensate for changes in r16314,
which included commits to RCS files with non-trunk default branches.


15679 07-May-1996 wosch

``mv'' -> ``mv -f''
``rm'' -> ``rm -f''
so mv/rm may not ask for confirmation if you are not root


14780 24-Mar-1996 pst

Add in qcam module (forgot)


14636 16-Mar-1996 jmz

Add joy to the SUBDIR list.


14635 16-Mar-1996 jmz

Build LKM for joystick driver.


14469 10-Mar-1996 peter

linux_interp now moved into sys/i386/linux/linux_sysvec.c, but still
connected at load and unload time from here.


14456 10-Mar-1996 sos

First attempt at FreeBSD & Linux ELF support.

Compile and link a new kernel, that will give native ELF support, and
provide the hooks for other ELF interpreters as well.

To make native ELF binaries use John Polstras elf-kit-1.0.1..
For the time being also use his ld-elf.so.1 and put it in
/usr/libexec.

The Linux emulator has been enhanced to also run ELF binaries, it
is however in its very first incarnation.
Just get some Linux ELF libs (Slackware-3.0) and put them in the
prober place (/compat/linux/...).
I've ben able to run all the Slackware-3.0 binaries I've tried
so far.
(No it won't run quake yet :)


14333 02-Mar-1996 peter

Update the linux lkm to use the new file list and build routine.
This is a bit of a kludge and needs more work.


14234 24-Feb-1996 phk

Make the ipfw LKM work again.
This concludes this round of updates to ipfw, have at it!


13922 05-Feb-1996 mpp

Correct some man page cross references and some file
locations.


13657 27-Jan-1996 rgrimes

Add missing ${DESTDIR} to afterinstall: target.


13613 24-Jan-1996 peter

Attempt to fix the procfs LKM after making some of the procfs
code shared with ptrace and "standard" in the config.


13340 08-Jan-1996 peter

No longer generate empty opt_sysvipc.h, and no longer issue -DSYSVSHM etc
for the CFLAGS. Now, it tracks whatever the booted kernel has rather than
being specifying what features your kernel has at lkm build time.


13339 08-Jan-1996 peter

No longer generate empty opt_sysvipc.h..


13291 06-Jan-1996 peter

Detach fpu and gnufpu from Makefile.. These lkm's build (or used to)
but are not quite useable. (fpu is used by init, and process switch
apparently..)


13289 06-Jan-1996 ache

Add opt_sysvipc.h rules similar as in ibcs2 Makefile
(make fails in old case)


13227 04-Jan-1996 wollman

Automatically create an empty opt_sysvipc.h to mimic old option
environment.


13110 29-Dec-1995 sos

Added SYSVSHM define


12896 16-Dec-1995 bde

Reformatted the list of broken modules and added ip_mroute_mod to it.


12818 14-Dec-1995 phk

Two x87 emulators as LKMs.
If somebody with the right HW would make the change to /etc/rc to use
this, we could rip MATH_EMULATE from GENERIC...


12536 29-Nov-1995 wollman

Delete obnoxious uprintf()s in load/unload procedures.


12509 28-Nov-1995 joerg

Add Lyndon's man page.

Closes PR # docs/842

Submitted by: lyndon@orthanc.com (Lyndon Nerenberg)


12276 14-Nov-1995 bde

Changed the first (name) arg of MOD_DEV(), MOD_EXEC() and MOD_MISC()
from a string to an identifier so that it can be used to generate
declarations and strings. It's much easier to stringize an identifier
than to identifize a string. A uniform naming scheme must be used
for the automatically generated things to apply. This is a feature.

Used the module identifer to generate prototypes for the module load,
unload and stat functions. Removed the few prototypes for these that
already existed.

Used the module identifier to generate a unique struct tag in MOD_DEV().
This should probably be done for all the MOD_*() macros.

Moved the trailing semicolon from the MOD_*() macro definitions to the
macro invocations that didn't already (bogusly) have it.

Staticized the module load and unload functions.

Added function return types for the module load, unload and stat functions.

lkm/ibcs2/ibcs2.c:
Included <sys/sysproto.h> to get everything prototyped.
Cleaned up #includes.

lkm/ibcs2/ipfw.c:
Cleaned up #includes.

lkm/linux/linux.c:
The module name had to change from "linux_emulator" to "linux_mod" to
be automatically generated.
Cleaned up #includes.

lkm/syscons/*/*_saver.c:
Completed delcarations of function pointers.

sys/i386/isa/atapi.c:
The module name had to change from "atapi" to "atapi_mod" to be
automatically generated.

sys/i386/isa/wcd.c:
Used the fixed MOD_DEV(). This module has two devices and expanded the
macro in the source instead of fixing it.
The module names had to change from "wcd" and "rwcd" to "wcd_mod" and
"rwcd_mod" to be automatically generated.

sys/pccard/pcic.c:
The module name had to change from "pcic" to "pcic_mod" to be
automatically generated.


12250 13-Nov-1995 bde

Replaced nosys() by lkm_nullcmd(). Always call lkm load/unload/stat
functions instead of skipping the call if the function is nosys().
nosys() returned the wrong value as well as having the wrong type.


11976 31-Oct-1995 peter

Update if_ppp lkm to pull in the new files...


11883 28-Oct-1995 peter

Add extra export symbols for the ATAPI generic interface.
And a couple of minor fiddles in the process..


11882 28-Oct-1995 peter

Reattach atapi and wcd to the lkm Makefile, these compile for me now.


11867 28-Oct-1995 peter

Sorry.. I didn't mean to re-enable wcd yet


11857 28-Oct-1995 peter

Do a pass over the broken LKM's and update them to use the "new"
convention of having their entry point named "<modname>_mod"".
Symorder is enforcing this when the current bsd.kmod.mk is installed.

I've not tested all these, but at least they all compile now.

Reattach them to the makefile.

Note that the change that I made to symorder needs to be compiled and
installed before any LKM's will work - the last version was corrupting
the relocation tables. A "make world" will to this, but if you
manually run a make on the lkm's you'll need to take care of it by
hand.


11850 28-Oct-1995 ache

Temp. disable following modules:
atapi coff ibcs2 ipfw linux syscons wcd
(until they will be fixed)
It allows to build/install other modules from top


11519 15-Oct-1995 phk

Revert to default entry point.


11504 15-Oct-1995 phk

Only export our 'init' symbol.


11475 14-Oct-1995 dg

atapi and wcd LKMs.

Submitted by: Serge Vakulenko, <vak@cronyx.ru>


11405 10-Oct-1995 swallace

Remove socksys modload command from ibcs2 startup shell script.


11403 10-Oct-1995 swallace

Remove socksys lkm from makefile list.


11402 10-Oct-1995 swallace

Add prototypes and declare function return type in ibcs2.c
Add new files to Makefile.


10555 04-Sep-1995 peter

Update the version in the snake saver...
Something similar needs to happen to RELENG_2_1_0 - or better yet, this
should become dynamic...


10257 25-Aug-1995 phk

Remove my xxxinit hack. It was too gross.


10218 24-Aug-1995 phk

pcic lkm for the pccard stuff.


9313 25-Jun-1995 sos

First incarnation of our Linux emulator or rather compatibility code.
This first shot only incorporaties so much functionality that DOOM
can run (the X version), signal handling is VERY weak, so is many
other things. But it meets my milestone number one (you guessed it
- running DOOM).

Uses /compat/linux as prefix for loading shared libs, so it won't
conflict with our own libs.

Kernel must be compiled with "options COMPAT_LINUX" for this to work.


9216 13-Jun-1995 wollman

I was wrong. I thought that the ip_mroute lkm would still compile, but it
seems to have stopped working on me. Disable it until I get a chance to
fix it.


8871 30-May-1995 rgrimes

Remove trailing whitespace.


8560 16-May-1995 sos

Changed relase number in snake_saver.c from 2.1 to 2.0.5


8513 14-May-1995 bde

Fix declaration of palette[] so that fade saver doesn't cause panics.


7849 15-Apr-1995 ats

Put vnode_if.h and vnode_if.c into CLEANFILES that are automatically
generated. Should this lkm set VFS_LKM ?


7500 30-Mar-1995 sos

Update to new screen update method.


7196 20-Mar-1995 wollman

Forgot pppcompress.c in PPP module.


7195 20-Mar-1995 wollman

Forgot slcompress.c in SLIP module.


7194 20-Mar-1995 wollman

The discard, tunnel, SLIP, and PPP network interface pseudo-devices
are now dynamically loadable. It doesn't make sense to do the same
for the loopback.


6859 03-Mar-1995 nate

Make in lkm/syscons fails due to missing include for apm stuff.

Submitted by: John Capo <jc@irbs.com> and John Hay <jhay@mikom.csir.co.za>


6858 03-Mar-1995 nate

Removed redundant delcaration of msdosfs_denode.c from the SRCS line.


6671 23-Feb-1995 phk

Once and for all: Never a ${DESTDIR} in ${BINDIR} !


6628 22-Feb-1995 sos

Next syscons update (given up on numbering :)

Removed screensavers from syscons, they are now LKM's. This makes it
possible to do some really "interesting" screensavers...
Fixed bug that sometimes caused garbage to appear when leaving
"scroll-lock" history.
Reformattet indentation, it got too deep for a normal 80 pos screen.
Split up in syscons.c & syscons.h for use with the saver-lkm's.
Temporarily removed -s option from vidcontrol, savers should now
be loaded with modload.


6036 30-Jan-1995 ugen

Add ipfw to /lkm Makefile..uups..


5544 12-Jan-1995 ugen

Checking new lkm structure..


5540 12-Jan-1995 ugen

Firewall can be used as lkm module.To use it
firewall should *NOT* be compiled into kernel.
Then it can be loaded.This is misc module but i'v
got no problemms with it,so shouldn't you i suppose..
BTW this is very stupid to have one module in CVS
for ALL lkm's...


5043 11-Dec-1994 wollman

install command was missing a ${DESTDIR}.


3947 27-Oct-1994 wollman

Again, this is not a filesystem so don't compile it as if it were.


3946 27-Oct-1994 wollman

ibcs2 is not a filesystem, don't compile it as if it were.


3650 16-Oct-1994 sos

Added socksys module


3649 16-Oct-1994 sos

Added load of socksys driver.


3596 14-Oct-1994 sos

Fix install of ibcs2 script.


3586 14-Oct-1994 sos

Added coff & ibcs2 modules.
Reviewed by:
Submitted by:
Obtained from:


3583 14-Oct-1994 sos

LKM module for the coff loader (used for iBCS2 emulation)


3582 14-Oct-1994 sos

LKM module for the iBCS2 emulator


3177 28-Sep-1994 wollman

Disable MFS as loadable until someone figures out how to make it work.


3089 25-Sep-1994 sos

LKM for ibcs2 support


2998 22-Sep-1994 wollman

Create NFS LKM.


2961 21-Sep-1994 wollman

Build LKMs for all ``easy'' filesystems. (lfs can be done, but it's more
work; ditto NFS and it's even more work.)


2834 16-Sep-1994 wollman

Per discussion on the mailing-lists, move LKMs from /sbin to /lkm, and
arrange for that directory to get created by mtree. Also, process secure
directory after all the others, because the programs there may overlay
ones installed from the main part of the tree.