summaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorgrehan <grehan@FreeBSD.org>2012-07-11 19:54:21 +0000
committergrehan <grehan@FreeBSD.org>2012-07-11 19:54:21 +0000
commitede42824618710ffa9ac08c805d8bf39bd5661ce (patch)
tree09d40ee855683606d0771d694b0686fedfe68e32 /share
parentfc13a01d538ded0843702a871a58cba4147b6037 (diff)
parentc72304b145d41338bd04103bd7e56b101261ca88 (diff)
downloadFreeBSD-src-ede42824618710ffa9ac08c805d8bf39bd5661ce.zip
FreeBSD-src-ede42824618710ffa9ac08c805d8bf39bd5661ce.tar.gz
IFC @ r238370
Diffstat (limited to 'share')
-rw-r--r--share/Makefile1
-rw-r--r--share/dtrace/Makefile21
-rw-r--r--share/dtrace/README11
-rwxr-xr-xshare/dtrace/nfsclienttime74
-rw-r--r--share/dtrace/toolkit/Makefile17
-rw-r--r--share/examples/csh/dot.cshrc6
-rw-r--r--share/examples/etc/README.examples1
-rw-r--r--share/examples/mdoc/example.42
-rw-r--r--share/examples/pf/faq-example12
-rw-r--r--share/examples/pf/pf.conf2
-rw-r--r--share/examples/scsi_target/scsi_target.c29
-rw-r--r--share/examples/ses/Makefile.inc1
-rw-r--r--share/examples/ses/srcs/eltsub.c109
-rw-r--r--share/examples/ses/srcs/getencstat.c81
-rw-r--r--share/examples/ses/srcs/getnobj.c5
-rw-r--r--share/examples/ses/srcs/getobjmap.c5
-rw-r--r--share/examples/ses/srcs/getobjstat.c5
-rw-r--r--share/examples/ses/srcs/inienc.c5
-rw-r--r--share/examples/ses/srcs/sesd.c17
-rw-r--r--share/examples/ses/srcs/setencstat.c13
-rw-r--r--share/examples/ses/srcs/setobjstat.c13
-rw-r--r--share/man/man3/ATOMIC_VAR_INIT.34
-rw-r--r--share/man/man3/pthread.32
-rw-r--r--share/man/man3/pthread_condattr.32
-rw-r--r--share/man/man4/Makefile30
-rw-r--r--share/man/man4/acpi.47
-rw-r--r--share/man/man4/acpi_asus.41
-rw-r--r--share/man/man4/acpi_asus_wmi.490
-rw-r--r--share/man/man4/acpi_hp.44
-rw-r--r--share/man/man4/acpi_ibm.426
-rw-r--r--share/man/man4/acpi_panasonic.46
-rw-r--r--share/man/man4/acpi_wmi.46
-rw-r--r--share/man/man4/ahci.414
-rw-r--r--share/man/man4/ata.412
-rw-r--r--share/man/man4/ath.44
-rw-r--r--share/man/man4/atp.44
-rw-r--r--share/man/man4/bce.474
-rw-r--r--share/man/man4/bpf.44
-rw-r--r--share/man/man4/bridge.43
-rw-r--r--share/man/man4/bxe.4138
-rw-r--r--share/man/man4/capsicum.42
-rw-r--r--share/man/man4/carp.474
-rw-r--r--share/man/man4/ch.45
-rw-r--r--share/man/man4/cpuctl.44
-rw-r--r--share/man/man4/cpufreq.41
-rw-r--r--share/man/man4/cxgbe.411
-rw-r--r--share/man/man4/dcons.42
-rw-r--r--share/man/man4/ddb.46
-rw-r--r--share/man/man4/divert.42
-rw-r--r--share/man/man4/epair.42
-rw-r--r--share/man/man4/est.498
-rw-r--r--share/man/man4/fdt.48
-rw-r--r--share/man/man4/fdtbus.45
-rw-r--r--share/man/man4/filemon.4178
-rw-r--r--share/man/man4/firewire.412
-rw-r--r--share/man/man4/gdb.44
-rw-r--r--share/man/man4/gre.46
-rw-r--r--share/man/man4/hptrr.410
-rw-r--r--share/man/man4/igb.410
-rw-r--r--share/man/man4/io.42
-rw-r--r--share/man/man4/ip.447
-rw-r--r--share/man/man4/ipfirewall.47
-rw-r--r--share/man/man4/ipmi.46
-rw-r--r--share/man/man4/ipw.44
-rw-r--r--share/man/man4/isci.43
-rw-r--r--share/man/man4/isp.42
-rw-r--r--share/man/man4/iwn.42
-rw-r--r--share/man/man4/mac_lomac.42
-rw-r--r--share/man/man4/mac_none.44
-rw-r--r--share/man/man4/mac_stub.46
-rw-r--r--share/man/man4/man4.i386/sbni.42
-rw-r--r--share/man/man4/mk48txx.42
-rw-r--r--share/man/man4/mps.49
-rw-r--r--share/man/man4/mpt.46
-rw-r--r--share/man/man4/mvs.43
-rw-r--r--share/man/man4/mwl.42
-rw-r--r--share/man/man4/nand.4140
-rw-r--r--share/man/man4/nandsim.492
-rw-r--r--share/man/man4/net80211.46
-rw-r--r--share/man/man4/netmap.42
-rw-r--r--share/man/man4/ng_etf.41
-rw-r--r--share/man/man4/ng_ksocket.42
-rw-r--r--share/man/man4/ng_nat.44
-rw-r--r--share/man/man4/ng_netflow.451
-rw-r--r--share/man/man4/ng_patch.42
-rw-r--r--share/man/man4/ng_socket.43
-rw-r--r--share/man/man4/pcm.44
-rw-r--r--share/man/man4/pcn.42
-rw-r--r--share/man/man4/psm.42
-rw-r--r--share/man/man4/ral.488
-rw-r--r--share/man/man4/rl.42
-rw-r--r--share/man/man4/run.49
-rw-r--r--share/man/man4/scsi.469
-rw-r--r--share/man/man4/send.45
-rw-r--r--share/man/man4/ses.42
-rw-r--r--share/man/man4/siftr.4135
-rw-r--r--share/man/man4/siis.44
-rw-r--r--share/man/man4/simplebus.45
-rw-r--r--share/man/man4/sis.42
-rw-r--r--share/man/man4/sk.42
-rw-r--r--share/man/man4/snd_hda.410
-rw-r--r--share/man/man4/snd_hdspe.42
-rw-r--r--share/man/man4/splash.43
-rw-r--r--share/man/man4/ste.44
-rw-r--r--share/man/man4/termios.43
-rw-r--r--share/man/man4/ti.414
-rw-r--r--share/man/man4/tl.46
-rw-r--r--share/man/man4/tws.44
-rw-r--r--share/man/man4/uhso.42
-rw-r--r--share/man/man4/ulpt.44
-rw-r--r--share/man/man4/umcs.42
-rw-r--r--share/man/man4/usb.44
-rw-r--r--share/man/man4/uslcom.42
-rw-r--r--share/man/man4/vge.42
-rw-r--r--share/man/man4/vlan.436
-rw-r--r--share/man/man4/vr.42
-rw-r--r--share/man/man4/watchdog.41
-rw-r--r--share/man/man4/wb.42
-rw-r--r--share/man/man4/witness.435
-rw-r--r--share/man/man4/wpi.44
-rw-r--r--share/man/man4/xl.42
-rw-r--r--share/man/man4/xnb.46
-rw-r--r--share/man/man5/Makefile4
-rw-r--r--share/man/man5/devfs.conf.52
-rw-r--r--share/man/man5/devfs.rules.52
-rw-r--r--share/man/man5/device.hints.52
-rw-r--r--share/man/man5/libmap.conf.523
-rw-r--r--share/man/man5/make.conf.56
-rw-r--r--share/man/man5/nandfs.5128
-rw-r--r--share/man/man5/nsmb.conf.51
-rw-r--r--share/man/man5/passwd.516
-rw-r--r--share/man/man5/periodic.conf.58
-rw-r--r--share/man/man5/portsnap.conf.512
-rw-r--r--share/man/man5/rc.conf.536
-rw-r--r--share/man/man5/src.conf.560
-rw-r--r--share/man/man7/build.712
-rw-r--r--share/man/man7/c99.72
-rw-r--r--share/man/man7/development.724
-rw-r--r--share/man/man7/release.74
-rw-r--r--share/man/man7/tuning.726
-rw-r--r--share/man/man8/picobsd.87
-rw-r--r--share/man/man8/rc.84
-rw-r--r--share/man/man9/BUF_ISLOCKED.92
-rw-r--r--share/man/man9/DB_COMMAND.94
-rw-r--r--share/man/man9/DECLARE_GEOM_CLASS.92
-rw-r--r--share/man/man9/EVENTHANDLER.94
-rw-r--r--share/man/man9/VOP_GETACL.92
-rw-r--r--share/man/man9/VOP_GETEXTATTR.96
-rw-r--r--share/man/man9/VOP_GETPAGES.92
-rw-r--r--share/man/man9/VOP_GETVOBJECT.92
-rw-r--r--share/man/man9/VOP_SETACL.92
-rw-r--r--share/man/man9/VOP_SETEXTATTR.94
-rw-r--r--share/man/man9/acl.92
-rw-r--r--share/man/man9/bpf.926
-rw-r--r--share/man/man9/bus_generic_print_child.92
-rw-r--r--share/man/man9/bus_release_resource.92
-rw-r--r--share/man/man9/bus_space.95
-rw-r--r--share/man/man9/byteorder.92
-rw-r--r--share/man/man9/cd.92
-rw-r--r--share/man/man9/devclass_get_maxunit.92
-rw-r--r--share/man/man9/device_find_child.92
-rw-r--r--share/man/man9/disk.928
-rw-r--r--share/man/man9/eventtimers.94
-rw-r--r--share/man/man9/fail.92
-rw-r--r--share/man/man9/firmware.98
-rw-r--r--share/man/man9/hashinit.92
-rw-r--r--share/man/man9/ieee80211_proto.92
-rw-r--r--share/man/man9/ifnet.92
-rw-r--r--share/man/man9/kqueue.93
-rw-r--r--share/man/man9/lock.92
-rw-r--r--share/man/man9/locking.965
-rw-r--r--share/man/man9/mbuf.96
-rw-r--r--share/man/man9/mod_cc.92
-rw-r--r--share/man/man9/namei.92
-rw-r--r--share/man/man9/netisr.92
-rw-r--r--share/man/man9/pci.910
-rw-r--r--share/man/man9/rmlock.9121
-rw-r--r--share/man/man9/rtalloc.911
-rw-r--r--share/man/man9/rwlock.98
-rw-r--r--share/man/man9/spl.96
-rw-r--r--share/man/man9/store.96
-rw-r--r--share/man/man9/sysctl.92
-rw-r--r--share/man/man9/taskqueue.94
-rw-r--r--share/man/man9/usbdi.912
-rw-r--r--share/man/man9/vm_page_aflag.92
-rw-r--r--share/misc/bsd-family-tree3
-rw-r--r--share/misc/committers-doc.dot13
-rw-r--r--share/misc/committers-ports.dot34
-rw-r--r--share/misc/committers-src.dot25
-rw-r--r--share/misc/organization.dot10
-rw-r--r--share/mk/bsd.README8
-rw-r--r--share/mk/bsd.crunchgen.mk2
-rw-r--r--share/mk/bsd.lib.mk29
-rw-r--r--share/mk/bsd.libnames.mk1
-rw-r--r--share/mk/bsd.own.mk25
-rw-r--r--share/mk/bsd.sys.mk9
-rw-r--r--share/skel/dot.cshrc22
-rw-r--r--share/syscons/keymaps/INDEX.keymaps2
-rw-r--r--share/syscons/keymaps/Makefile1
-rw-r--r--share/syscons/keymaps/spanish.dvorak.kbd139
-rw-r--r--share/termcap/termcap.54
201 files changed, 2495 insertions, 782 deletions
diff --git a/share/Makefile b/share/Makefile
index 5ccf165..e39da7f 100644
--- a/share/Makefile
+++ b/share/Makefile
@@ -8,6 +8,7 @@
SUBDIR= ${_colldef} \
${_dict} \
${_doc} \
+ dtrace \
${_examples} \
${_i18n} \
${_man} \
diff --git a/share/dtrace/Makefile b/share/dtrace/Makefile
new file mode 100644
index 0000000..71f1e4e
--- /dev/null
+++ b/share/dtrace/Makefile
@@ -0,0 +1,21 @@
+# $FreeBSD$
+#
+# Hand installing our scripts and optionally (based on MK_CDDL) installing
+# the DTraceToolkit.
+#
+
+.include <bsd.own.mk>
+
+SUBDIR= ${_toolkit}
+
+.if ${MK_CDDL} != "no"
+_toolkit= toolkit
+.endif
+
+SCRIPTS= nfsclienttime
+
+SCRIPTSDIR= ${SHAREDIR}/dtrace/
+
+NO_OBJ=
+
+.include <bsd.prog.mk>
diff --git a/share/dtrace/README b/share/dtrace/README
new file mode 100644
index 0000000..e446cee
--- /dev/null
+++ b/share/dtrace/README
@@ -0,0 +1,11 @@
+$FreeBSD$
+
+This directory contains scripts for use with the DTrace system. The
+toolkit/ directory contains the latest vendor import of Brendan
+Gregg's DTraceToolkit while all the other files and directories
+contain code generated by the FreeBSD Project for use with DTrace on
+FreeBSD.
+
+NOTE: Do not add new scripts to the DTraceToolkit contained in this
+directory. New DTraceToolkit scripts should be send to the maintainer
+of the toolkit and then brought back into FreeBSD via future vendor imports.
diff --git a/share/dtrace/nfsclienttime b/share/dtrace/nfsclienttime
new file mode 100755
index 0000000..335f067
--- /dev/null
+++ b/share/dtrace/nfsclienttime
@@ -0,0 +1,74 @@
+#!/bin/sh
+#
+# Copyright (c) 2012 Robert N. M. Watson
+# All rights reserved.
+#
+# This software was developed at the University of Cambridge Computer
+# Laboratory with support from a grant from Google, Inc.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+#
+# $FreeBSD$
+#
+# This script measures all time spent waiting on RPC replies for each
+# system call, and then generates a histogram of those times sorted by
+# system call name.
+#
+# Currently only supports NFSv3
+#
+# Usage: nfsclienttime
+#
+# Press Ctrl-C to exit and display statistics.
+#
+
+/usr/sbin/dtrace -n '
+#pragma D option quiet
+
+dtrace:::BEGIN
+{
+ printf("Collecting data...press Ctrl-C to exit.\n");
+}
+
+syscall:::entry
+{
+
+ self->count = 0;
+}
+
+nfsclient:nfs3::start
+{
+
+ self->timestamp = timestamp;
+}
+
+nfsclient:nfs3::done
+{
+
+ self->count += (timestamp - self->timestamp);
+}
+
+syscall:::return
+/self->count != 0/ {
+
+ @syscalls[probefunc] = quantize(self->count);
+}
+'
diff --git a/share/dtrace/toolkit/Makefile b/share/dtrace/toolkit/Makefile
new file mode 100644
index 0000000..0eb7ff2
--- /dev/null
+++ b/share/dtrace/toolkit/Makefile
@@ -0,0 +1,17 @@
+#$FreeBSD$
+#
+# Install scripts from the DTraceToolkit
+#
+DTRACETOOLKIT= ../../../cddl/contrib/dtracetoolkit
+
+SCRIPTS= ${DTRACETOOLKIT}/execsnoop \
+ ${DTRACETOOLKIT}/hotuser \
+ ${DTRACETOOLKIT}/hotkernel \
+ ${DTRACETOOLKIT}/opensnoop \
+ ${DTRACETOOLKIT}/procsystime \
+
+SCRIPTSDIR= ${SHAREDIR}/dtrace/toolkit
+
+NO_OBJ=
+
+.include <bsd.prog.mk>
diff --git a/share/examples/csh/dot.cshrc b/share/examples/csh/dot.cshrc
index 17951d4..5b30791 100644
--- a/share/examples/csh/dot.cshrc
+++ b/share/examples/csh/dot.cshrc
@@ -4,8 +4,12 @@
#
# Sets SSH_AUTH_SOCK to the user's ssh-agent socket path if running
+#
+# This has a couple caveats, the most notable being that if a user
+# has multiple ssh-agent(1) processes running, this will very likely
+# set SSH_AUTH_SOCK to point to the wrong file/domain socket.
if (${?SSH_AUTH_SOCK} != "1") then
- setenv SSH_AUTH_SOCK `sockstat | grep "${USER}" | cut -d ' ' -f 6`
+ setenv SSH_AUTH_SOCK `sockstat -u | awk '/^${USER}.+ ssh-agent/ { print $6 }'
endif
# Change only root's prompt
diff --git a/share/examples/etc/README.examples b/share/examples/etc/README.examples
index ba2cf00..f7bf4ce 100644
--- a/share/examples/etc/README.examples
+++ b/share/examples/etc/README.examples
@@ -9,7 +9,6 @@ This directory contains the following files:
amd.map - filesystem automounter lookup resolution map (see amd(8))
apmd.conf - configuration file for apmd(8)
-auth.conf - authentication capability database (see auth.conf(5))
bsd-style-copyright - copyright style for bsd system
crontab - system scheduled command table (see crontab(5))
csh.cshrc - sample .cshrc (see csh(1))
diff --git a/share/examples/mdoc/example.4 b/share/examples/mdoc/example.4
index a5fa1a6..c39e486 100644
--- a/share/examples/mdoc/example.4
+++ b/share/examples/mdoc/example.4
@@ -34,7 +34,6 @@
.Nd "example device driver manual page"
.Sh SYNOPSIS
To compile the
-.Ns Nm
driver into the kernel,
place the following lines in the
kernel configuration file:
@@ -44,7 +43,6 @@ kernel configuration file:
.Ed
.Pp
Alternatively, to load the
-.Ns Nm
driver as a
module at boot time, place the following line in
.Xr loader.conf 5 :
diff --git a/share/examples/pf/faq-example1 b/share/examples/pf/faq-example1
index 91942f6..e9b240f 100644
--- a/share/examples/pf/faq-example1
+++ b/share/examples/pf/faq-example1
@@ -26,7 +26,7 @@ set skip on lo
scrub in
# nat/rdr
-nat on $ext_if from !($ext_if) -> ($ext_if:0)
+nat on $ext_if inet from !($ext_if) -> ($ext_if:0)
nat-anchor "ftp-proxy/*"
rdr-anchor "ftp-proxy/*"
diff --git a/share/examples/pf/pf.conf b/share/examples/pf/pf.conf
index 299999d..d97b4ed 100644
--- a/share/examples/pf/pf.conf
+++ b/share/examples/pf/pf.conf
@@ -16,7 +16,7 @@
#nat-anchor "ftp-proxy/*"
#rdr-anchor "ftp-proxy/*"
-#nat on $ext_if from !($ext_if) -> ($ext_if:0)
+#nat on $ext_if inet from !($ext_if) -> ($ext_if:0)
#rdr pass on $int_if proto tcp to port ftp -> 127.0.0.1 port 8021
#no rdr on $ext_if proto tcp from <spamd-white> to any port smtp
#rdr pass on $ext_if proto tcp from any to any port smtp \
diff --git a/share/examples/scsi_target/scsi_target.c b/share/examples/scsi_target/scsi_target.c
index 6f665af..1a7a061 100644
--- a/share/examples/scsi_target/scsi_target.c
+++ b/share/examples/scsi_target/scsi_target.c
@@ -88,7 +88,7 @@ static void handle_read(void);
/* static int work_atio(struct ccb_accept_tio *); */
static void queue_io(struct ccb_scsiio *);
static int run_queue(struct ccb_accept_tio *);
-static int work_inot(struct ccb_immed_notify *);
+static int work_inot(struct ccb_immediate_notify *);
static struct ccb_scsiio *
get_ctio(void);
/* static void free_ccb(union ccb *); */
@@ -387,7 +387,7 @@ init_ccbs()
warn("malloc INOT");
return (-1);
}
- inot->ccb_h.func_code = XPT_IMMED_NOTIFY;
+ inot->ccb_h.func_code = XPT_IMMEDIATE_NOTIFY;
send_ccb((union ccb *)inot, /*priority*/1);
}
@@ -495,8 +495,8 @@ request_loop()
/* Start one more transfer. */
retval = work_atio(&ccb->atio);
break;
- case XPT_IMMED_NOTIFY:
- retval = work_inot(&ccb->cin);
+ case XPT_IMMEDIATE_NOTIFY:
+ retval = work_inot(&ccb->cin1);
break;
default:
warnx("Unhandled ccb type %#x on workq",
@@ -651,7 +651,7 @@ work_atio(struct ccb_accept_tio *atio)
warnx("ATIO with %u bytes sense received",
atio->sense_len);
}
- sense = &atio->sense_data;
+ sense = (struct scsi_sense_data_fixed *)&atio->sense_data;
tcmd_sense(ctio->init_id, ctio, sense->flags,
sense->add_sense_code, sense->add_sense_code_qual);
send_ccb((union ccb *)ctio, /*priority*/1);
@@ -772,16 +772,14 @@ run_queue(struct ccb_accept_tio *atio)
}
static int
-work_inot(struct ccb_immed_notify *inot)
+work_inot(struct ccb_immediate_notify *inot)
{
cam_status status;
- int sense;
if (debug)
warnx("Working on INOT %p", inot);
status = inot->ccb_h.status;
- sense = (status & CAM_AUTOSNS_VALID) != 0;
status &= CAM_STATUS_MASK;
switch (status) {
@@ -794,7 +792,7 @@ work_inot(struct ccb_immed_notify *inot)
abort_all_pending();
break;
case CAM_MESSAGE_RECV:
- switch (inot->message_args[0]) {
+ switch (inot->arg) {
case MSG_TASK_COMPLETE:
case MSG_INITIATOR_DET_ERR:
case MSG_ABORT_TASK_SET:
@@ -805,7 +803,7 @@ work_inot(struct ccb_immed_notify *inot)
case MSG_ABORT_TASK:
case MSG_CLEAR_TASK_SET:
default:
- warnx("INOT message %#x", inot->message_args[0]);
+ warnx("INOT message %#x", inot->arg);
break;
}
break;
@@ -817,17 +815,6 @@ work_inot(struct ccb_immed_notify *inot)
break;
}
- /* If there is sense data, use it */
- if (sense != 0) {
- struct scsi_sense_data_fixed *sense;
-
- sense = (struct scsi_sense_data_fixed *)&inot->sense_data;
- tcmd_sense(inot->initiator_id, NULL, sense->flags,
- sense->add_sense_code, sense->add_sense_code_qual);
- if (debug)
- warnx("INOT has sense: %#x", sense->flags);
- }
-
/* Requeue on SIM */
TAILQ_REMOVE(&work_queue, &inot->ccb_h, periph_links.tqe);
send_ccb((union ccb *)inot, /*priority*/1);
diff --git a/share/examples/ses/Makefile.inc b/share/examples/ses/Makefile.inc
index 5ff1cd4..2b1e858 100644
--- a/share/examples/ses/Makefile.inc
+++ b/share/examples/ses/Makefile.inc
@@ -32,7 +32,6 @@
# mjacob@feral.com
#
-CFLAGS+= -I/usr/include/cam/scsi -DSESINC="<scsi_ses.h>"
BINDIR?= /usr/sbin
CLEANFILES+= ${MAN}
diff --git a/share/examples/ses/srcs/eltsub.c b/share/examples/ses/srcs/eltsub.c
index 8500fff..9500423 100644
--- a/share/examples/ses/srcs/eltsub.c
+++ b/share/examples/ses/srcs/eltsub.c
@@ -33,10 +33,13 @@
*/
#include <unistd.h>
+#include <stddef.h>
+#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <sys/ioctl.h>
-#include SESINC
+#include <cam/scsi/scsi_all.h>
+#include <cam/scsi/scsi_enc.h>
#include "eltsub.h"
@@ -46,79 +49,82 @@ geteltnm(int type)
static char rbuf[132];
switch (type) {
- case SESTYP_UNSPECIFIED:
+ case ELMTYP_UNSPECIFIED:
sprintf(rbuf, "Unspecified");
break;
- case SESTYP_DEVICE:
- sprintf(rbuf, "Device");
+ case ELMTYP_DEVICE:
+ sprintf(rbuf, "Device Slot");
break;
- case SESTYP_POWER:
- sprintf(rbuf, "Power supply");
+ case ELMTYP_POWER:
+ sprintf(rbuf, "Power Supply");
break;
- case SESTYP_FAN:
- sprintf(rbuf, "Cooling element");
+ case ELMTYP_FAN:
+ sprintf(rbuf, "Cooling");
break;
- case SESTYP_THERM:
- sprintf(rbuf, "Temperature sensors");
+ case ELMTYP_THERM:
+ sprintf(rbuf, "Temperature Sensors");
break;
- case SESTYP_DOORLOCK:
+ case ELMTYP_DOORLOCK:
sprintf(rbuf, "Door Lock");
break;
- case SESTYP_ALARM:
+ case ELMTYP_ALARM:
sprintf(rbuf, "Audible alarm");
break;
- case SESTYP_ESCC:
- sprintf(rbuf, "Enclosure services controller electronics");
+ case ELMTYP_ESCC:
+ sprintf(rbuf, "Enclosure Eervices Controller Electronics");
break;
- case SESTYP_SCC:
- sprintf(rbuf, "SCC controller electronics");
+ case ELMTYP_SCC:
+ sprintf(rbuf, "SCC Controller Electronics");
break;
- case SESTYP_NVRAM:
- sprintf(rbuf, "Nonvolatile cache");
+ case ELMTYP_NVRAM:
+ sprintf(rbuf, "Nonvolatile Cache");
break;
- case SESTYP_UPS:
- sprintf(rbuf, "Uninterruptible power supply");
+ case ELMTYP_INV_OP_REASON:
+ sprintf(rbuf, "Invalid Operation Reason");
break;
- case SESTYP_DISPLAY:
+ case ELMTYP_UPS:
+ sprintf(rbuf, "Uninterruptible Power Supply");
+ break;
+ case ELMTYP_DISPLAY:
sprintf(rbuf, "Display");
break;
- case SESTYP_KEYPAD:
- sprintf(rbuf, "Key pad entry device");
+ case ELMTYP_KEYPAD:
+ sprintf(rbuf, "Key Pad Entry");
break;
- case SESTYP_ENCLOSURE:
+ case ELMTYP_ENCLOSURE:
sprintf(rbuf, "Enclosure");
break;
- case SESTYP_SCSIXVR:
- sprintf(rbuf, "SCSI port/transceiver");
+ case ELMTYP_SCSIXVR:
+ sprintf(rbuf, "SCSI Port/Transceiver");
break;
- case SESTYP_LANGUAGE:
+ case ELMTYP_LANGUAGE:
sprintf(rbuf, "Language");
break;
- case SESTYP_COMPORT:
+ case ELMTYP_COMPORT:
sprintf(rbuf, "Communication Port");
break;
- case SESTYP_VOM:
+ case ELMTYP_VOM:
sprintf(rbuf, "Voltage Sensor");
break;
- case SESTYP_AMMETER:
+ case ELMTYP_AMMETER:
sprintf(rbuf, "Current Sensor");
break;
- case SESTYP_SCSI_TGT:
- sprintf(rbuf, "SCSI target port");
+ case ELMTYP_SCSI_TGT:
+ sprintf(rbuf, "SCSI Target Port");
break;
- case SESTYP_SCSI_INI:
- sprintf(rbuf, "SCSI initiator port");
+ case ELMTYP_SCSI_INI:
+ sprintf(rbuf, "SCSI Initiator Port");
break;
- case SESTYP_SUBENC:
- sprintf(rbuf, "Simple sub-enclosure");
+ case ELMTYP_SUBENC:
+ sprintf(rbuf, "Simple Subenclosure");
break;
- case SESTYP_ARRAY:
- sprintf(rbuf, "Array device");
+ case ELMTYP_ARRAY_DEV:
+ sprintf(rbuf, "Array Device Slot");
break;
- case SESTYP_SASEXPANDER:
+ case ELMTYP_SAS_EXP:
sprintf(rbuf, "SAS Expander");
break;
- case SESTYP_SASCONNECTOR:
+ case ELMTYP_SAS_CONN:
sprintf(rbuf, "SAS Connector");
break;
default:
@@ -134,31 +140,34 @@ scode2ascii(u_char code)
static char rbuf[32];
switch (code & 0xf) {
case SES_OBJSTAT_UNSUPPORTED:
- sprintf(rbuf, "status not supported");
+ sprintf(rbuf, "Unsupported");
break;
case SES_OBJSTAT_OK:
- sprintf(rbuf, "ok");
+ sprintf(rbuf, "OK");
break;
case SES_OBJSTAT_CRIT:
- sprintf(rbuf, "critical");
+ sprintf(rbuf, "Critical");
break;
case SES_OBJSTAT_NONCRIT:
- sprintf(rbuf, "non-critical");
+ sprintf(rbuf, "Noncritical");
break;
case SES_OBJSTAT_UNRECOV:
- sprintf(rbuf, "unrecoverable");
+ sprintf(rbuf, "Unrecoverable");
break;
case SES_OBJSTAT_NOTINSTALLED:
- sprintf(rbuf, "not installed");
+ sprintf(rbuf, "Not Installed");
break;
case SES_OBJSTAT_UNKNOWN:
- sprintf(rbuf, "unknown status");
+ sprintf(rbuf, "Unknown");
break;
case SES_OBJSTAT_NOTAVAIL:
- sprintf(rbuf, "status not available");
+ sprintf(rbuf, "Not Available");
+ break;
+ case SES_OBJSTAT_NOACCESS:
+ sprintf(rbuf, "No Access Allowed");
break;
default:
- sprintf(rbuf, "unknown status code %x", code & 0xf);
+ sprintf(rbuf, "<Status 0x%x>", code & 0xf);
break;
}
return (rbuf);
@@ -171,7 +180,7 @@ stat2ascii(int eletype __unused, u_char *cstat)
static char ebuf[256], *scode;
scode = scode2ascii(cstat[0]);
- sprintf(ebuf, "Status=%s (bytes=0x%02x 0x%02x 0x%02x 0x%02x)",
+ sprintf(ebuf, "status: %s (0x%02x 0x%02x 0x%02x 0x%02x)",
scode, cstat[0], cstat[1], cstat[2], cstat[3]);
return (ebuf);
}
diff --git a/share/examples/ses/srcs/getencstat.c b/share/examples/ses/srcs/getencstat.c
index 3514fe4..9048f73 100644
--- a/share/examples/ses/srcs/getencstat.c
+++ b/share/examples/ses/srcs/getencstat.c
@@ -33,20 +33,25 @@
*/
#include <unistd.h>
+#include <stddef.h>
+#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <sys/ioctl.h>
#include <fcntl.h>
-#include SESINC
+#include <cam/scsi/scsi_all.h>
+#include <cam/scsi/scsi_enc.h>
#include "eltsub.h"
int
main(int a, char **v)
{
- ses_object *objp;
- ses_objstat ob;
+ encioc_element_t *objp;
+ encioc_elm_status_t ob;
+ encioc_elm_desc_t objd;
+ encioc_elm_devnames_t objdn;
int fd, nobj, f, i, verbose, quiet, errors;
u_char estat;
@@ -73,13 +78,13 @@ main(int a, char **v)
perror(*v);
continue;
}
- if (ioctl(fd, SESIOC_GETNOBJ, (caddr_t) &nobj) < 0) {
- perror("SESIOC_GETNOBJ");
+ if (ioctl(fd, ENCIOC_GETNELM, (caddr_t) &nobj) < 0) {
+ perror("ENCIOC_GETNELM");
(void) close(fd);
continue;
}
- if (ioctl(fd, SESIOC_GETENCSTAT, (caddr_t) &estat) < 0) {
- perror("SESIOC_GETENCSTAT");
+ if (ioctl(fd, ENCIOC_GETENCSTAT, (caddr_t) &estat) < 0) {
+ perror("ENCIOC_GETENCSTAT");
(void) close(fd);
continue;
}
@@ -113,38 +118,64 @@ main(int a, char **v)
}
}
fprintf(stdout, ">\n");
- objp = calloc(nobj, sizeof (ses_object));
+ objp = calloc(nobj, sizeof (encioc_element_t));
if (objp == NULL) {
perror("calloc");
(void) close(fd);
continue;
}
- if (ioctl(fd, SESIOC_GETOBJMAP, (caddr_t) objp) < 0) {
- perror("SESIOC_GETOBJMAP");
+ if (ioctl(fd, ENCIOC_GETELMMAP, (caddr_t) objp) < 0) {
+ perror("ENCIOC_GETELMMAP");
(void) close(fd);
continue;
}
for (i = 0; i < nobj; i++) {
- ob.obj_id = objp[i].obj_id;
- if (ioctl(fd, SESIOC_GETOBJSTAT, (caddr_t) &ob) < 0) {
- perror("SESIOC_GETOBJSTAT");
+ ob.elm_idx = objp[i].elm_idx;
+ if (ioctl(fd, ENCIOC_GETELMSTAT, (caddr_t) &ob) < 0) {
+ perror("ENCIOC_GETELMSTAT");
(void) close(fd);
break;
}
- if ((ob.cstat[0] & 0xf) == SES_OBJSTAT_OK) {
- if (verbose) {
- fprintf(stdout,
- "Element 0x%x: %s OK (%s)\n",
- ob.obj_id,
- geteltnm(objp[i].object_type),
- stat2ascii(objp[i].object_type,
- ob.cstat));
- }
+ bzero(&objd, sizeof(objd));
+ objd.elm_idx = objp[i].elm_idx;
+ objd.elm_desc_len = UINT16_MAX;
+ objd.elm_desc_str = calloc(UINT16_MAX, sizeof(char));
+ if (objd.elm_desc_str == NULL) {
+ perror("calloc");
+ (void) close(fd);
continue;
}
- fprintf(stdout, "Element 0x%x: %s, %s\n",
- ob.obj_id, geteltnm(objp[i].object_type),
- stat2ascii(objp[i].object_type, ob.cstat));
+ if (ioctl(fd, ENCIOC_GETELMDESC, (caddr_t)&objd) < 0) {
+ perror("ENCIOC_GETELMDESC");
+ (void) close(fd);
+ break;
+ }
+ bzero(&objdn, sizeof(objdn));
+ objdn.elm_idx = objp[i].elm_idx;
+ objdn.elm_names_size = 128;
+ objdn.elm_devnames = calloc(128, sizeof(char));
+ if (objdn.elm_devnames == NULL) {
+ perror("calloc");
+ (void) close(fd);
+ break;
+ }
+ /*
+ * This ioctl isn't critical and has a good chance
+ * of returning -1.
+ */
+ (void)ioctl(fd, ENCIOC_GETELMDEVNAMES, (caddr_t)&objdn);
+ fprintf(stdout, "Element 0x%x: %s", ob.elm_idx,
+ geteltnm(objp[i].elm_type));
+ fprintf(stdout, ", %s",
+ stat2ascii(objp[i].elm_type, ob.cstat));
+ if (objd.elm_desc_len > 0)
+ fprintf(stdout, ", descriptor: '%s'",
+ objd.elm_desc_str);
+ if (objdn.elm_names_len > 0)
+ fprintf(stdout, ", dev: '%s'",
+ objdn.elm_devnames);
+ fprintf(stdout, "\n");
+ free(objdn.elm_devnames);
}
free(objp);
(void) close(fd);
diff --git a/share/examples/ses/srcs/getnobj.c b/share/examples/ses/srcs/getnobj.c
index 17a26c6..92d3458 100644
--- a/share/examples/ses/srcs/getnobj.c
+++ b/share/examples/ses/srcs/getnobj.c
@@ -33,12 +33,15 @@
*/
#include <unistd.h>
+#include <stddef.h>
+#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/ioctl.h>
-#include SESINC
+#include <cam/scsi/scsi_all.h>
+#include <cam/scsi/scsi_ses.h>
int
main(int argc, char **argv)
diff --git a/share/examples/ses/srcs/getobjmap.c b/share/examples/ses/srcs/getobjmap.c
index 9798b4c..fbcc12e 100644
--- a/share/examples/ses/srcs/getobjmap.c
+++ b/share/examples/ses/srcs/getobjmap.c
@@ -33,11 +33,14 @@
*/
#include <unistd.h>
+#include <stddef.h>
+#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <fcntl.h>
#include <sys/ioctl.h>
-#include SESINC
+#include <cam/scsi/scsi_all.h>
+#include <cam/scsi/scsi_ses.h>
#include "eltsub.h"
diff --git a/share/examples/ses/srcs/getobjstat.c b/share/examples/ses/srcs/getobjstat.c
index 99fb185..d49f6f9 100644
--- a/share/examples/ses/srcs/getobjstat.c
+++ b/share/examples/ses/srcs/getobjstat.c
@@ -32,11 +32,14 @@
* mjacob@feral.com
*/
#include <unistd.h>
+#include <stddef.h>
+#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <fcntl.h>
#include <sys/ioctl.h>
-#include SESINC
+#include <cam/scsi/scsi_all.h>
+#include <cam/scsi/scsi_ses.h>
int
main(int a, char **v)
diff --git a/share/examples/ses/srcs/inienc.c b/share/examples/ses/srcs/inienc.c
index 7d6cc22..f418787 100644
--- a/share/examples/ses/srcs/inienc.c
+++ b/share/examples/ses/srcs/inienc.c
@@ -33,11 +33,14 @@
*/
#include <unistd.h>
+#include <stddef.h>
+#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <fcntl.h>
#include <sys/ioctl.h>
-#include SESINC
+#include <cam/scsi/scsi_all.h>
+#include <cam/scsi/scsi_ses.h>
int
main(int a, char **v)
diff --git a/share/examples/ses/srcs/sesd.c b/share/examples/ses/srcs/sesd.c
index 0793077..88627e9 100644
--- a/share/examples/ses/srcs/sesd.c
+++ b/share/examples/ses/srcs/sesd.c
@@ -32,6 +32,8 @@
* mjacob@feral.com
*/
#include <unistd.h>
+#include <stddef.h>
+#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <fcntl.h>
@@ -39,7 +41,8 @@
#include <string.h>
#include <syslog.h>
#include <sys/ioctl.h>
-#include SESINC
+#include <cam/scsi/scsi_all.h>
+#include <cam/scsi/scsi_enc.h>
#define ALLSTAT (SES_ENCSTAT_UNRECOV | SES_ENCSTAT_CRITICAL | \
SES_ENCSTAT_NONCRITICAL | SES_ENCSTAT_INFO)
@@ -54,7 +57,7 @@ main(int a, char **v)
static const char *usage =
"usage: %s [ -d ] [ -t pollinterval ] device [ device ]\n";
int fd, polltime, dev, devbase, nodaemon;
- ses_encstat stat, *carray;
+ encioc_enc_status_t stat, *carray;
if (a < 2) {
fprintf(stderr, usage, *v);
@@ -83,7 +86,7 @@ main(int a, char **v)
return (1);
}
for (dev = devbase; dev < a; dev++)
- carray[dev] = (ses_encstat) -1;
+ carray[dev] = (encioc_enc_status_t) -1;
/*
* Check to make sure we can open all devices
@@ -94,8 +97,8 @@ main(int a, char **v)
perror(v[dev]);
return (1);
}
- if (ioctl(fd, SESIOC_INIT, NULL) < 0) {
- fprintf(stderr, "%s: SESIOC_INIT fails- %s\n",
+ if (ioctl(fd, ENCIOC_INIT, NULL) < 0) {
+ fprintf(stderr, "%s: ENCIOC_INIT fails- %s\n",
v[dev], strerror(errno));
return (1);
}
@@ -122,9 +125,9 @@ main(int a, char **v)
/*
* Get the actual current enclosure status.
*/
- if (ioctl(fd, SESIOC_GETENCSTAT, (caddr_t) &stat) < 0) {
+ if (ioctl(fd, ENCIOC_GETENCSTAT, (caddr_t) &stat) < 0) {
syslog(LOG_ERR,
- "%s: SESIOC_GETENCSTAT- %m", v[dev]);
+ "%s: ENCIOC_GETENCSTAT- %m", v[dev]);
(void) close(fd);
continue;
}
diff --git a/share/examples/ses/srcs/setencstat.c b/share/examples/ses/srcs/setencstat.c
index 127f68f..87a7fa2 100644
--- a/share/examples/ses/srcs/setencstat.c
+++ b/share/examples/ses/srcs/setencstat.c
@@ -33,18 +33,21 @@
*/
#include <unistd.h>
+#include <stddef.h>
+#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <fcntl.h>
#include <sys/ioctl.h>
-#include SESINC
+#include <cam/scsi/scsi_all.h>
+#include <cam/scsi/scsi_enc.h>
int
main(int a, char **v)
{
int fd;
long val;
- ses_encstat stat;
+ encioc_enc_status_t stat;
if (a != 3) {
fprintf(stderr, "usage: %s device enclosure_status\n", *v);
@@ -57,9 +60,9 @@ main(int a, char **v)
}
val = strtol(v[2], NULL, 0);
- stat = (ses_encstat) val;
- if (ioctl(fd, SESIOC_SETENCSTAT, (caddr_t) &stat) < 0) {
- perror("SESIOC_SETENCSTAT");
+ stat = (encioc_enc_status_t)val;
+ if (ioctl(fd, ENCIOC_SETENCSTAT, (caddr_t) &stat) < 0) {
+ perror("ENCIOC_SETENCSTAT");
}
(void) close(fd);
return (0);
diff --git a/share/examples/ses/srcs/setobjstat.c b/share/examples/ses/srcs/setobjstat.c
index 08fdb7b..26a5dd1 100644
--- a/share/examples/ses/srcs/setobjstat.c
+++ b/share/examples/ses/srcs/setobjstat.c
@@ -33,18 +33,21 @@
*/
#include <unistd.h>
+#include <stddef.h>
+#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <fcntl.h>
#include <sys/ioctl.h>
-#include SESINC
+#include <cam/scsi/scsi_all.h>
+#include <cam/scsi/scsi_enc.h>
int
main(int a, char **v)
{
int fd;
int i;
- ses_objstat obj;
+ encioc_elm_status_t obj;
long cvt;
char *x;
@@ -64,7 +67,7 @@ usage:
if (x == v[2]) {
goto usage;
}
- obj.obj_id = cvt;
+ obj.elm_idx = cvt;
for (i = 0; i < 4; i++) {
x = v[3 + i];
cvt = strtol(v[3 + i], &x, 0);
@@ -73,8 +76,8 @@ usage:
}
obj.cstat[i] = cvt;
}
- if (ioctl(fd, SESIOC_SETOBJSTAT, (caddr_t) &obj) < 0) {
- perror("SESIOC_SETOBJSTAT");
+ if (ioctl(fd, ENCIOC_SETELMSTAT, (caddr_t) &obj) < 0) {
+ perror("ENCIOC_SETELMSTAT");
}
(void) close(fd);
return (0);
diff --git a/share/man/man3/ATOMIC_VAR_INIT.3 b/share/man/man3/ATOMIC_VAR_INIT.3
index 1f85d3b..e2fc5c0 100644
--- a/share/man/man3/ATOMIC_VAR_INIT.3
+++ b/share/man/man3/ATOMIC_VAR_INIT.3
@@ -139,7 +139,7 @@ It sets the atomic variable
.Fa object
to its desired
.Fa value
-and returs the original contents of the atomic variable.
+and returns the original contents of the atomic variable.
.Pp
The
.Fn atomic_compare_exchange_strong
@@ -203,7 +203,7 @@ The
.Fn atomic_fetch_sub
macro subtracts the value
.Fa operand
-to atomic variable
+from atomic variable
.Fa object
and returns the original contents of the atomic variable.
.Pp
diff --git a/share/man/man3/pthread.3 b/share/man/man3/pthread.3
index caa7f74..9c80f70 100644
--- a/share/man/man3/pthread.3
+++ b/share/man/man3/pthread.3
@@ -452,7 +452,7 @@ Set the thread-specific value for the specified key.
.Fa "void \*[lp]*child\*[rp]\*[lp]void\*[rp]"
.Fc
.Xc
-Register fork handlers
+Register fork handlers.
.It Xo
.Ft void
.Fn pthread_cleanup_pop "int execute"
diff --git a/share/man/man3/pthread_condattr.3 b/share/man/man3/pthread_condattr.3
index e232ef6..d7f8f6b 100644
--- a/share/man/man3/pthread_condattr.3
+++ b/share/man/man3/pthread_condattr.3
@@ -35,7 +35,7 @@
.Nm pthread_condattr_getclock ,
.Nm pthread_condattr_setclock ,
.Nm pthread_condattr_getpshared ,
-.Nm pthread_condattr_setpshared ,
+.Nm pthread_condattr_setpshared
.Nd condition attribute operations
.Sh LIBRARY
.Lb libpthread
diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile
index dffe304..972200d 100644
--- a/share/man/man4/Makefile
+++ b/share/man/man4/Makefile
@@ -4,6 +4,7 @@
MAN= aac.4 \
acpi.4 \
${_acpi_asus.4} \
+ ${_acpi_asus_wmi.4} \
${_acpi_dock.4} \
${_acpi_fujitsu.4} \
${_acpi_hp.4} \
@@ -36,6 +37,7 @@ MAN= aac.4 \
${_amdsbwd.4} \
${_amdsmb.4} \
${_amdtemp.4} \
+ ${_bxe.4} \
amr.4 \
an.4 \
${_apic.4} \
@@ -116,6 +118,7 @@ MAN= aac.4 \
enc.4 \
epair.4 \
esp.4 \
+ est.4 \
et.4 \
eventtimers.4 \
exca.4 \
@@ -126,6 +129,7 @@ MAN= aac.4 \
fdt.4 \
fdtbus.4 \
ffclock.4 \
+ filemon.4 \
firewire.4 \
fpa.4 \
fwe.4 \
@@ -250,6 +254,8 @@ MAN= aac.4 \
mwlfw.4 \
mxge.4 \
my.4 \
+ nand.4 \
+ nandsim.4 \
natm.4 \
natmip.4 \
ncr.4 \
@@ -520,6 +526,7 @@ MAN= aac.4 \
${_vxge.4} \
watchdog.4 \
wb.4 \
+ ${_wbwd.4} \
wi.4 \
witness.4 \
wlan.4 \
@@ -542,8 +549,11 @@ MAN= aac.4 \
MLINKS= ae.4 if_ae.4
MLINKS+=age.4 if_age.4
MLINKS+=agp.4 agpgart.4
+MLINKS+=alc.4 if_alc.4
MLINKS+=ale.4 if_ale.4
MLINKS+=altq.4 ALTQ.4
+MLINKS+=ath.4 if_ath.4
+MLINKS+=ath_pci.4 if_ath_pci.4
MLINKS+=an.4 if_an.4
MLINKS+=aue.4 if_aue.4
MLINKS+=axe.4 if_axe.4
@@ -553,9 +563,14 @@ MLINKS+=bge.4 if_bge.4
MLINKS+=bktr.4 brooktree.4
MLINKS+=bridge.4 if_bridge.4
MLINKS+=bwi.4 if_bwi.4
+MLINKS+=bwn.4 if_bwn.4
+MLINKS+=${_bxe.4} ${_if_bxe.4}
MLINKS+=cas.4 if_cas.4
+MLINKS+=cdce.4 if_cdce.4
MLINKS+=crypto.4 cryptodev.4
MLINKS+=cue.4 if_cue.4
+MLINKS+=cxgb.4 if_cxgb.4
+MLINKS+=cxgbe.4 if_cxgbe.4
MLINKS+=dc.4 if_dc.4
MLINKS+=de.4 if_de.4
MLINKS+=disc.4 if_disc.4
@@ -601,14 +616,19 @@ MLINKS+=ixgbe.4 if_ixgbe.4
MLINKS+=jme.4 if_jme.4
MLINKS+=kue.4 if_kue.4
MLINKS+=lagg.4 trunk.4
+MLINKS+=lagg.4 if_lagg.4
MLINKS+=le.4 if_le.4
MLINKS+=lge.4 if_lge.4
+MLINKS+=lmc.4 if_lmc.4
MLINKS+=lo.4 loop.4
MLINKS+=lp.4 plip.4
MLINKS+=malo.4 if_malo.4
MLINKS+=md.4 vn.4
MLINKS+=mem.4 kmem.4
MLINKS+=mn.4 if_mn.4
+MLINKS+=mos.4 if_mos.4
+MLINKS+=msk.4 if_msk.4
+MLINKS+=mwl.4 if_mwl.4
MLINKS+=mxge.4 if_mxge.4
MLINKS+=my.4 if_my.4
MLINKS+=${_ndis.4} ${_if_ndis.4}
@@ -628,11 +648,13 @@ MLINKS+=re.4 if_re.4
MLINKS+=rl.4 if_rl.4
MLINKS+=rue.4 if_rue.4
MLINKS+=rum.4 if_rum.4
+MLINKS+=run.4 if_run.4
MLINKS+=scsi.4 CAM.4 \
scsi.4 cam.4 \
scsi.4 scbus.4 \
scsi.4 SCSI.4
MLINKS+=sf.4 if_sf.4
+MLINKS+=sge.4 if_sge.4
MLINKS+=sis.4 if_sis.4
MLINKS+=sk.4 if_sk.4
MLINKS+=smp.4 SMP.4
@@ -664,6 +686,7 @@ MLINKS+=vge.4 if_vge.4
MLINKS+=vlan.4 if_vlan.4
MLINKS+=vpo.4 imm.4
MLINKS+=vr.4 if_vr.4
+MLINKS+=vte.4 if_vte.4
MLINKS+=${_vtnet.4} ${_if_vtnet.4}
MLINKS+=${_vxge.4} ${_if_vxge.4}
MLINKS+=watchdog.4 SW_WATCHDOG.4
@@ -676,6 +699,7 @@ MLINKS+=zyd.4 if_zyd.4
.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386"
_acpi_asus.4= acpi_asus.4
+_acpi_asus_wmi.4= acpi_asus_wmi.4
_acpi_dock.4= acpi_dock.4
_acpi_fujitsu.4=acpi_fujitsu.4
_acpi_hp.4= acpi_hp.4
@@ -694,6 +718,7 @@ _amdsmb.4= amdsmb.4
_amdtemp.4= amdtemp.4
_asmc.4= asmc.4
_atp.4= atp.4
+_bxe.4= bxe.4
_coretemp.4= coretemp.4
_cpuctl.4= cpuctl.4
_dpms.4= dpms.4
@@ -703,6 +728,7 @@ _hptmv.4= hptmv.4
_hptrr.4= hptrr.4
_i8254.4= i8254.4
_ichwd.4= ichwd.4
+_if_bxe.4= if_bxe.4
_if_ndis.4= if_ndis.4
_if_nfe.4= if_nfe.4
_if_nve.4= if_nve.4
@@ -733,6 +759,7 @@ _spkr.4= spkr.4
_tpm.4= tpm.4
_urtw.4= urtw.4
_viawd.4= viawd.4
+_wbwd.4= wbwd.4
_wpi.4= wpi.4
_xen.4= xen.4
_xnb.4= xnb.4
@@ -743,6 +770,9 @@ MLINKS+=lindev.4 full.4
.if ${MACHINE_CPUARCH} == "amd64"
_qlxgb.4= qlxgb.4
_sfxge.4= sfxge.4
+
+MLINKS+=qlxgb.4 if_qlxgb.4
+MLINKS+=sfxge.4 if_sfxge.4
.endif
.if ${MACHINE_CPUARCH} == "powerpc"
diff --git a/share/man/man4/acpi.4 b/share/man/man4/acpi.4
index faedb06..9d57128 100644
--- a/share/man/man4/acpi.4
+++ b/share/man/man4/acpi.4
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd March 22, 2012
+.Dd May 4, 2012
.Dt ACPI 4
.Os
.Sh NAME
@@ -198,6 +198,11 @@ entry for access after boot.
Enables loading of a custom ACPI DSDT.
.It Va acpi_dsdt_name
Name of the DSDT table to load, if loading is enabled.
+.It Va debug.acpi.cpu_unordered
+Do not use the MADT to match ACPI Processor objects to CPUs.
+This is needed on a few systems with a buggy BIOS that does not use
+consistent processor IDs.
+Default is 0 (disabled).
.It Va debug.acpi.disabled
Selectively disables portions of ACPI for debugging purposes.
.It Va debug.acpi.interpreter_slack
diff --git a/share/man/man4/acpi_asus.4 b/share/man/man4/acpi_asus.4
index f3b99da..1921adc 100644
--- a/share/man/man4/acpi_asus.4
+++ b/share/man/man4/acpi_asus.4
@@ -157,6 +157,7 @@ Defaults for these variables can be set in
which is parsed at boot-time.
.Sh SEE ALSO
.Xr acpi 4 ,
+.Xr acpi_asus_wmi 4 ,
.Xr acpi_video 4 ,
.Xr sysctl.conf 5 ,
.Xr sysctl 8
diff --git a/share/man/man4/acpi_asus_wmi.4 b/share/man/man4/acpi_asus_wmi.4
new file mode 100644
index 0000000..129894b
--- /dev/null
+++ b/share/man/man4/acpi_asus_wmi.4
@@ -0,0 +1,90 @@
+.\"
+.\" Copyright (c) 2012 Alexander Motin <mav@FreeBSD.org>
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd July 2, 2012
+.Dt ACPI_ASUS_WMI 4
+.Os
+.Sh NAME
+.Nm acpi_asus_wmi
+.Nd Asus Laptop WMI Extras
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following line in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device acpi_asus_wmi"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+acpi_asus_wmi_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for the extra WMI-controlled gadgets, such as hotkeys
+and leds, found on Asus laptops.
+It allows one to use the
+.Xr sysctl 8
+interface to manipulate the brightness of the LCD panel and keyboard backlight,
+power on/off different internal components, such as WiFi, Bluetooth, camera,
+cardreader, etc, read some sensors.
+Hotkey events are passed to
+.Xr devd 8
+for easy handling in userspace with the default configuration in
+.Pa /etc/devd/asus.conf .
+Some hotkey events, such as keyboard backlight and touchpad control, are
+handled inside the driver.
+.Sh SYSCTL VARIABLES
+The following sysctls are currently implemented:
+.Bl -tag -width indent
+.It Va dev.acpi_asus_wmi.0.handle_keys
+Specifies whether driver should handle some harwdare keys, such as keyboard
+backlight, internally.
+.El
+.Pp
+Number of other variables under the same sysctl branch are model-specific.
+.Pp
+Defaults for these variables can be set in
+.Xr sysctl.conf 5 ,
+which is parsed at boot-time.
+.Sh SEE ALSO
+.Xr acpi 4 ,
+.Xr acpi_asus 4 ,
+.Xr acpi_video 4 ,
+.Xr sysctl.conf 5 ,
+.Xr devd 8 ,
+.Xr sysctl 8
+.Sh HISTORY
+The
+.Nm
+driver first appeared in
+.Fx 10.0 .
+.Sh AUTHORS
+.An Alexander Motin Aq mav@FreeBSD.org .
diff --git a/share/man/man4/acpi_hp.4 b/share/man/man4/acpi_hp.4
index dbb0ca0..028d19a 100644
--- a/share/man/man4/acpi_hp.4
+++ b/share/man/man4/acpi_hp.4
@@ -261,7 +261,7 @@ device driver first appeared in
The
.Nm
driver was written by
-.An Michael Gmelin Aq freebsd@grem.de
+.An Michael Gmelin Aq freebsd@grem.de .
.Pp
It has been inspired by hp-wmi driver, which implements a subset of these
features (hotkeys) on Linux.
@@ -275,7 +275,7 @@ http://www.microsoft.com/whdc/system/pnppwr/wmi/wmi-acpi.mspx
.El
.Pp
This manual page was written by
-.An Michael Gmelin Aq freebsd@grem.de
+.An Michael Gmelin Aq freebsd@grem.de .
.Sh BUGS
This driver is experimental and has only been tested on i386 on an
HP Compaq 8510p which featured all supported wireless devices (WWAN/BT/WLAN).
diff --git a/share/man/man4/acpi_ibm.4 b/share/man/man4/acpi_ibm.4
index 376b64d..4aa6d9f 100644
--- a/share/man/man4/acpi_ibm.4
+++ b/share/man/man4/acpi_ibm.4
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd February 8, 2010
+.Dd June 24, 2012
.Dt ACPI_IBM 4
.Os
.Sh NAME
@@ -335,6 +335,17 @@ Built-in battery
.It
UltraBay battery
.El
+.It Va dev.acpi_ibm.0.handlerevents
+.Xr devd 8
+events handled by
+.Nm
+when
+.Va events
+is set to 1.
+Events are specified as a whitespace-separated list of event code in
+hexadecimal or decimal form.
+Note that the event maybe handled twice (eg. Brightness up/down) if ACPI BIOS
+already handled the event.
.El
.Pp
Defaults for these sysctls can be set in
@@ -436,6 +447,19 @@ then
fi
exit 0
.Ed
+.Pp
+The following example specify that event code 0x04 (Suspend to RAM),
+0x10 (Brightness up) and 0x11 (Brightness down) are handled by
+.Nm .
+.Bd -literal -offset indent
+sysctl dev.acpi_ibm.0.handlerevents='0x04 0x10 0x11'
+.Ed
+.Pp
+in
+.Xr sysctl.conf 5 :
+.Bd -literal -offset indent
+dev.acpi_ibm.0.handlerevents=0x04\\ 0x10\\ 0x11
+.Ed
.Sh SEE ALSO
.Xr acpi 4 ,
.Xr led 4 ,
diff --git a/share/man/man4/acpi_panasonic.4 b/share/man/man4/acpi_panasonic.4
index d02a16e..5458a31 100644
--- a/share/man/man4/acpi_panasonic.4
+++ b/share/man/man4/acpi_panasonic.4
@@ -68,7 +68,7 @@ sound mute state via
.Ss Hotkeys
There are 9 hotkeys available on the supported hardware:
.Pp
-.Bl -tag -compact -offset indent
+.Bl -tag -width 10n -compact -offset indent
.It Sy Fn+F1
Make LCD backlight darker.
.It Sy Fn+F2
@@ -105,7 +105,7 @@ When notified to
.Xr devd 8 ,
the hotkey event provides the following information:
.Pp
-.Bl -tag -compact -offset indent
+.Bl -tag -width 10n -compact -offset indent
.It system
.Qq Li ACPI
.It subsystem
@@ -119,7 +119,7 @@ Event code (see below).
.El
.Pp
Event codes to be generated are assigned as follows:
-.Bl -tag -offset indent
+.Bl -tag -width 10n -offset indent
.It 0x81-0x86, 0x89
.Sy Fn+F<n>
pressed.
diff --git a/share/man/man4/acpi_wmi.4 b/share/man/man4/acpi_wmi.4
index 12ecdfa..28bd0da 100644
--- a/share/man/man4/acpi_wmi.4
+++ b/share/man/man4/acpi_wmi.4
@@ -85,12 +85,12 @@ device driver first appeared in
The
.Nm
driver was written by
-.An Michael Gmelin Aq freebsd@grem.de
+.An Michael Gmelin Aq freebsd@grem.de .
.Pp
-Work has been inspired by the Linux acpi-wmi driver written by Carlos Corbacho
+Work has been inspired by the Linux acpi-wmi driver written by Carlos Corbacho.
.Pp
See http://www.microsoft.com/whdc/system/pnppwr/wmi/wmi-acpi.mspx for
the specification of ACPI-WMI.
.Pp
This manual page was written by
-.An Michael Gmelin Aq freebsd@grem.de
+.An Michael Gmelin Aq freebsd@grem.de .
diff --git a/share/man/man4/ahci.4 b/share/man/man4/ahci.4
index 622875c..0b1cd13 100644
--- a/share/man/man4/ahci.4
+++ b/share/man/man4/ahci.4
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd December 6, 2011
+.Dd June 18, 2012
.Dt AHCI 4
.Os
.Sh NAME
@@ -51,8 +51,9 @@ The following tunables are settable from the
.Xr loader 8 :
.Bl -ohang
.It Va hint.ahci. Ns Ar X Ns Va .msi
-controls Message Signaled Interrupts (MSI) usage by the specified controller
-.Bl -tag -compact
+controls Message Signaled Interrupts (MSI) usage by the specified controller.
+.Pp
+.Bl -tag -width 4n -offset indent -compact
.It 0
MSI disabled;
.It 1
@@ -72,7 +73,8 @@ controls SATA interface Power Management for the specified channel,
allowing some power to be saved at the cost of additional command
latency.
Possible values:
-.Bl -tag -compact
+.Pp
+.Bl -tag -width 4n -offset indent -compact
.It 0
interface Power Management is disabled (default);
.It 1
@@ -86,6 +88,7 @@ driver initiates PARTIAL PM state transition 1ms after port becomes idle;
.It 5
driver initiates SLUMBER PM state transition 125ms after port becomes idle.
.El
+.Pp
Some controllers, such as ICH8, do not implement modes 2 and 3 with NCQ used.
Because of artificial entering latency, performance degradation in modes
4 and 5 is much smaller then in modes 2 and 3.
@@ -98,7 +101,8 @@ setting to nonzero value limits maximum SATA revision (speed).
Values 1, 2 and 3 are respectively 1.5, 3 and 6Gbps.
.It Va hw.ahci.force
setting to nonzero value forces driver attach to some known AHCI-capable
-chips even if they are configured for legacy IDE emulation. Default is 1.
+chips even if they are configured for legacy IDE emulation.
+Default is 1.
.El
.Sh DESCRIPTION
This driver provides the
diff --git a/share/man/man4/ata.4 b/share/man/man4/ata.4
index d2ac57a..939c8b1 100644
--- a/share/man/man4/ata.4
+++ b/share/man/man4/ata.4
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd August 17, 2011
+.Dd June 18, 2012
.Dt ATA 4
.Os
.Sh NAME
@@ -89,8 +89,12 @@ subsystem module.
The following tunables are settable from the
.Xr loader 8 :
.Bl -ohang
+.It Va hw.ahci.force
+set to nonzero value for forcing drivers to attach to some known AHCI-capable
+chips even if they are configured for legacy IDE emulation (the default is 1,
+force the attach).
.It Va hw.ata.ata_dma_check_80pin
-set to 0 to disable the 80pin cable check (the default is 1, check the cable)
+set to 0 to disable the 80pin cable check (the default is 1, check the cable).
.It Va hint.atapci.X.msi
set to 1 to allow Message Signalled Interrupts (MSI) to be used by the
specified PCI ATA controller, if supported.
@@ -102,7 +106,8 @@ limits the initial ATA mode for every device on the specified channel.
controls SATA interface Power Management for the specified channel,
allowing some power savings at the cost of additional command latency.
Possible values:
-.Bl -tag -compact
+.Pp
+.Bl -tag -width 4n -offset indent -compact
.It 0
Interface Power Management is disabled.
This is the default value.
@@ -113,6 +118,7 @@ The host initiates a PARTIAL PM state transition every time a port becomes idle.
.It 3
host initiates SLUMBER PM state transition every time port becomes idle.
.El
+.Pp
Modes 2 and 3 are only supported for AHCI.
.El
.Sh DESCRIPTION
diff --git a/share/man/man4/ath.4 b/share/man/man4/ath.4
index e145853..8ae8cd7 100644
--- a/share/man/man4/ath.4
+++ b/share/man/man4/ath.4
@@ -186,7 +186,7 @@ ifconfig wlan0 meshid my_mesh mode 11a inet 192.168.0.10/24
.Ed
.Pp
Create two virtual 802.11a host-based access points, one with
-with WEP enabled and one with no security, and bridge them to
+WEP enabled and one with no security, and bridge them to
the fxp0 (wired) device:
.Bd -literal -offset indent
ifconfig wlan0 create wlandev ath0 wlanmode hostap \e
@@ -221,7 +221,7 @@ data frames failed.
This should not happen.
.It "ath%d: unable to setup a beacon xmit queue!"
The request to the HAL to set up the transmit queue for 802.11 beacon frames
-frames failed.
+failed.
This should not happen.
.It "ath%d: 802.11 address: %s"
The MAC address programmed in the EEPROM is displayed.
diff --git a/share/man/man4/atp.4 b/share/man/man4/atp.4
index ed7b4d3..10bb41f 100644
--- a/share/man/man4/atp.4
+++ b/share/man/man4/atp.4
@@ -171,10 +171,10 @@ consoles as well as in X change it to:
.Xr loader.conf 5 ,
.Xr xorg.conf 5 Pq Pa ports/x11/xorg ,
.Xr moused 8 ,
-.Xr sysctl 8 .
+.Xr sysctl 8
.Sh AUTHORS
.An -nosplit
The
.Nm
driver was written by
-.An Rohit Grover Aq rgrover1@gmail.com
+.An Rohit Grover Aq rgrover1@gmail.com .
diff --git a/share/man/man4/bce.4 b/share/man/man4/bce.4
index 090c477..28fdf6a 100644
--- a/share/man/man4/bce.4
+++ b/share/man/man4/bce.4
@@ -28,7 +28,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd October 7, 2009
+.Dd June 4, 2012
.Dt BCE 4
.Os
.Sh NAME
@@ -200,9 +200,73 @@ variables and
.Xr loader 8
tunables:
.Bl -tag -width indent
+.It Va hw.bce.verbose
+Enable/Disable verbose logging and output to the console.
+Useful for debugging (default 0).
.It Va hw.bce.msi_enable
-Whether or not MSI support is enabled in the driver.
-The default value is 1.
+Enable/Disable MSI support (default 1).
+.It Va hw.bce.tso_enable
+Enable/Disable TSO support (default 1).
+.It Va hw.bce.strict_rx_mtu
+Enable/Disable strict RX frame size checking (default 0).
+.It Va hw.bce.hdr_split
+Enable/Disable frame header/payload splitting (default 1).
+.It Va hw.bce.rx_pages
+Set the number of memory pages assigned to recieve packets by the driver.
+Due to alignment issues, this value can only be of the set
+1, 2, 4 or 8 (default 2).
+.It Va hw.bce.tx_pages
+Set the number of memory pages assigned to transmit packets
+by the driver.
+Due to alignment issues, this value can only be of the set
+1, 2, 4 or 8 (default 2).
+.It Va hw.bce.rx_ticks
+Time in microsecond ticks to wait before generating a status
+block updates due to RX processing activity.
+Values from 0-100 are valid.
+A value of 0 disables this status block update.
+Cannot be set to 0 if hw.bce.rx_quick_cons_trip is also 0
+(default 18).
+.It Va hw.bce.rx_ticks_int
+Time in microsecond ticks to wait during RX interrupt
+processing before generating a status block update.
+Values from 0-100 are valid.
+Valid values are in the range from 0-100.
+A value of 0 disables this status block update (default 18).
+.It Va hw.bce.rx_quick_cons_trip
+Number of RX Quick BD Chain entries that must be completed
+before a status block is generated.
+Values from 0-256 are valid.
+A value of 0 disables this status block update.
+Cannot be set to 0 if hw.bce.rx_ticks is also 0 (default 6).
+.It Va hw.bce.rx_quick_cons_trip_int
+Number of RX quick BD entries that must be completed before
+a status block is generated duing interrupt processing.
+Values from 0-256 are valid.
+A value of 0 disables this status block update (default 6).
+.It Va hw.bce.tx_ticks
+Time in microsecond ticks to wait before a status block
+update is generated due to TX activitiy.
+Values from 0-100 are valid.
+A value of 0 disables this status block update.
+Cannot be set to 0 if hw.bce.tx_quick_cons_trip is also 0
+(default 80).
+.It Va hw.bce.tx_ticks_int
+Time in microsecond ticks to wait in interrupt processing
+before a status block update is generated due to TX activity
+Values from 0-100 are valid.
+A value of 0 disables this status block update (default 80).
+.It Va hw.bce.tx_cons_trip
+How many TX Quick BD Chain entries that must be completed
+before a status block is generated.
+Values from 0-100 are valid.
+A value of 0 disables this status block update.
+Cannot be set to 0 if hw.bce.tx_ticks is also 0 (default 20).
+.It Va hw.bce.tx_cons_trip_int
+How many TX Quick BD Chain entries that must be completed
+before a status block is generated during an interrupt.
+Values from 0-100 are valid.
+A value of 0 disables this status block update (default 20).
.El
.Sh DIAGNOSTICS
.Bl -diag
@@ -346,6 +410,10 @@ with the cable connection, or a driver logic problem has occurred..
A controller hardware failure has occurred.
If the problem continues replace the controller.
.El
+.Sh SUPPORT
+For general information and support,
+go to the Broadcom NIC Open Source Developer Resource Site:
+.Pa http://www.broadcom.com/support/ethernet_nic/open_source.php .
.Sh SEE ALSO
.Xr altq 4 ,
.Xr arp 4 ,
diff --git a/share/man/man4/bpf.4 b/share/man/man4/bpf.4
index a317920..4095f5e 100644
--- a/share/man/man4/bpf.4
+++ b/share/man/man4/bpf.4
@@ -642,7 +642,7 @@ struct bpf_xhdr {
uint32_t bh_caplen; /* length of captured portion */
uint32_t bh_datalen; /* original length of packet */
u_short bh_hdrlen; /* length of bpf header (this struct
- plus alignment padding */
+ plus alignment padding) */
};
struct bpf_hdr {
@@ -650,7 +650,7 @@ struct bpf_hdr {
uint32_t bh_caplen; /* length of captured portion */
uint32_t bh_datalen; /* original length of packet */
u_short bh_hdrlen; /* length of bpf header (this struct
- plus alignment padding */
+ plus alignment padding) */
};
.Ed
.Pp
diff --git a/share/man/man4/bridge.4 b/share/man/man4/bridge.4
index 09e1dad..1fadc57 100644
--- a/share/man/man4/bridge.4
+++ b/share/man/man4/bridge.4
@@ -410,7 +410,8 @@ Note that
.Fx
6.1, 6.2, 6.3, 7.0, 7.1, and 7.2 have a bug in the EtherIP protocol.
For more details and workaround, see
-.Xr gif 4 manual page.
+.Xr gif 4
+manual page.
.Sh SEE ALSO
.Xr gif 4 ,
.Xr ipf 4 ,
diff --git a/share/man/man4/bxe.4 b/share/man/man4/bxe.4
new file mode 100644
index 0000000..588900f
--- /dev/null
+++ b/share/man/man4/bxe.4
@@ -0,0 +1,138 @@
+.\" Copyright (c) 2012 Edward Tomasz Napierala <trasz@FreeBSD.org>
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd June 25, 2012
+.Dt BXE 4
+.Os
+.Sh NAME
+.Nm bxe
+.Nd "Broadcom BCM57710/BCM57711/BCM57711E 10Gb Ethernet adapter driver"
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following lines in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device bxe"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+if_bxe_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for PCIe 10GbE Ethernet adapters based on
+BCM5771x chips.
+The driver supports Jumbo Frames, VLAN tagging, IP, UDP and TCP checksum
+offload, MSI-X, TCP Segmentation Offload (TSO), Large Receive Offload (LRO),
+and Receive Side Steering (RSS).
+.Pp
+For more information on configuring this device, see
+.Xr ifconfig 8 .
+.Sh HARDWARE
+The
+.Nm
+driver provides support for various NICs based on the Broadcom BCM5771x
+family of 10GbE Ethernet controller chips, including the
+following:
+.Pp
+.Bl -bullet -compact
+.It
+Broadcom NetXtreme II BCM57710 10GbE
+.It
+Broadcom NetXtreme II BCM57711 10GbE
+.It
+Broadcom NetXtreme II BCM57711E 10GbE
+.El
+.Sh SYSCTL VARIABLES
+The following variables are available as both
+.Xr sysctl 8
+variables and
+.Xr loader 8
+tunables:
+.Bl -tag -width indent
+.It Va hw.bxe.dcc_enable
+Enable HP Flex-10 support.
+Allowed values are 0 to disable and 1 to enable.
+The default value is 0.
+.It Va hw.bxe.tso_enable
+Enable TCP Segmentation Offload.
+The default value is 1.
+.It Va hw.bxe.int_mode
+Set interrupt mode.
+Allowed values are 0 for IRQ, 1 for MSI/IRQ and 2 for MSI-X/MSI/IRQ.
+The default value is 2.
+.It Va hw.bxe.queue_count
+Specify the number of queues that will be used when a multi-queue
+RSS mode is selected using bxe_multi_mode.
+Allowed values are 0 for Auto or 1 to 16 for fixed number of queues.
+The default value is 0.
+.It Va hw.bxe.multi_mode
+Enable Receive Side Steering.
+Allowed values are 0, which disables all multi-queue/packet sorting
+algorithms, and 1, which assigns incoming frames to receive queues
+according to RSS.
+The default value is 0.
+.It Va hw.bxe.rx_ticks
+Control interrupt coalescing for received frames.
+The first frame always causes an interrupt, but subsequent frames
+are coalesced until the RX/TX ticks timer value expires and another
+interrupt occurs.
+The default value is 25.
+.It Va hw.bxe.tx_ticks
+Control interrupt coalescing for trasmitted frames.
+The first frame always causes an interrupt, but subsequent frames
+are coalesced until the RX/TX ticks timer value expires and another
+interrupt occurs.
+The default value is 50.
+.It Va hw.bxe.mrrs
+Allows to set the PCIe maximum read request size.
+Allowed values are -1 for Auto, 0 for 128B, 1 for 256B, 2 for 512B,
+and 3 for 1kB.
+The default value is -1.
+.El
+.Sh SEE ALSO
+.Xr altq 4 ,
+.Xr arp 4 ,
+.Xr netintro 4 ,
+.Xr ng_ether 4 ,
+.Xr vlan 4 ,
+.Xr ifconfig 8
+.Sh HISTORY
+The
+.Nm
+device driver first appeared in
+.Fx 9.0 .
+.Sh AUTHORS
+The
+.Nm
+driver was written by
+.An Gary Zambrano Aq zambrano@broadcom.com
+and
+.An David Christensen Aq davidch@broadcom.com .
diff --git a/share/man/man4/capsicum.4 b/share/man/man4/capsicum.4
index 980ab79..39619f9 100644
--- a/share/man/man4/capsicum.4
+++ b/share/man/man4/capsicum.4
@@ -55,7 +55,7 @@ A process mode, entered by invoking
in which access to global OS namespaces (such as the file system and PID
namespaces) is restricted; only explicitly delegated rights, referenced by
memory mappings or file descriptors, may be used.
-Once set, the flag is inherited by future children proceses, and may not be
+Once set, the flag is inherited by future children processes, and may not be
cleared.
.It capabilities
File descriptors that wrap other file descriptors, masking operations that can
diff --git a/share/man/man4/carp.4 b/share/man/man4/carp.4
index a734824..6a45703 100644
--- a/share/man/man4/carp.4
+++ b/share/man/man4/carp.4
@@ -26,7 +26,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd April 22, 2012
+.Dd May 30, 2012
.Dt CARP 4
.Os
.Sh NAME
@@ -42,8 +42,8 @@ addresses are always available.
.Pp
To use
.Nm ,
-the administrator needs to configure at minimum a common virtual host ID
-(vhid) and attach at least one IP address to this vhid on each machine which
+the administrator needs to configure at a minimum a common virtual host ID
+(vhid), and attach at least one IP address to this vhid on each machine which
is to take part in the virtual group.
Additional parameters can also be set on a per-vhid basis:
.Cm advbase
@@ -72,13 +72,13 @@ Both
and
.Cm advskew
are put inside CARP advertisements.
-These configurations can be done using
+These values can be configured using
.Xr ifconfig 8 ,
or through the
.Dv SIOCSVH
.Xr ioctl 2 .
.Pp
-CARP virtual hosts can be configured on multicast capable interfaces: Ethernet,
+CARP virtual hosts can be configured on multicast-capable interfaces: Ethernet,
layer 2 VLAN, FDDI and Token Ring.
An arbitrary number of virtual host IDs can be configured on an interface.
An arbitrary number of IPv4 or IPv6 addresses can be attached to a particular
@@ -91,7 +91,7 @@ elections independently.
.Pp
Additionally, there are a number of global parameters which can be set using
.Xr sysctl 8 :
-.Bl -tag -width ".Va net.inet.carp.preempt"
+.Bl -tag -width ".Va net.inet.carp.ifdown_demotion_factor"
.It Va net.inet.carp.allow
Accept incoming
.Nm
@@ -103,14 +103,17 @@ When enabled, a vhid in a backup state would preempt a master that
is announcing itself with a lower advskew.
Disabled by default.
.It Va net.inet.carp.log
-Value of 0 disables any logging.
-Value of 1 enables logging state changes of
+Determines what events relating to
+.Nm
+vhids are logged.
+A value of 0 disables any logging.
+A value of 1 enables logging state changes of
.Nm
vhids.
Values above 1 enable logging of bad
.Nm
packets.
-Default value is 1.
+The default value is 1.
.It Va net.inet.carp.demotion
This value shows current level of CARP demotion.
The value is added to the actual advskew sent in announcements for
@@ -123,44 +126,48 @@ running a vhid goes down, or while the
.Xr pfsync 4
interface is not synchronized.
The demotion value is writable, so that user may alter it
-depending on some external conditions, for example on status of some
+depending on some external conditions, for example on the status of some
daemon utility.
-However, altering the value should be performed with care, do
+However, altering the value should be performed with care, so as to
not conflict with subsystems that adjust demotion factor
automatically:
.Nm
and
.Xr pfsync 4 .
.It Va net.inet.carp.ifdown_demotion_factor
-Value added to
+This value is added to
.Va net.inet.carp.demotion
-when interface running a vhid goes down.
-Default value is 240 (maximum advskew value).
+when an interface running a vhid goes down.
+The default value is 240 (the maximum advskew value).
.It Va net.inet.carp.senderr_demotion_factor
-Value added to
+This value is added to
.Va net.inet.carp.demotion
when
.Nm
experiences errors sending its announcements.
-Default value is 240 (maximum advskew value).
+The default value is 240 (the maximum advskew value).
.El
.\".Sh ARP level load balancing
-.\"The
+.\"A
.\".Nm
-.\"has limited abilities for load balancing the incoming connections
-.\"between hosts in Ethernet network.
-.\"For load balancing operation, one needs several CARP interfaces that
+.\"interface has limited abilities for load balancing incoming connections
+.\"between hosts in an Ethernet network.
+.\"For load-balancing operation, one needs several CARP interfaces that
.\"are configured to the same IP address, but to a different vhids.
.\"Once an ARP request is received, the CARP protocol will use a hashing
.\"function against the source IP address in the ARP request to determine
-.\"which vhid should this request belong to.
-.\"If the corresponding CARP interface is in master state, the ARP request
-.\"will be replied, otherwise it will be ignored.
+.\"which vhid the request will be assigned to.
+.\"If the corresponding CARP interface is the current
+.\"master interface, a reply will
+.\"be sent to the ARP request;
+.\"otherwise it will be ignored.
.\"See the
.\".Sx EXAMPLES
.\"section for a practical example of load balancing.
.\".Pp
-.\"The ARP load balancing has some limitations.
+.\"The ARP load balancing implemented in
+.\".Nm
+.\"has some limitations.
.\"First, ARP balancing only works on the local network segment.
.\"It cannot balance traffic that crosses a router, because the
.\"router itself will always be balanced to the same virtual host.
@@ -170,10 +177,11 @@ Default value is 240 (maximum advskew value).
.\"is dangerous, because this creates a race condition between
.\"balanced routers and a host they are serving.
.\"Imagine an incoming packet creating state on the first router, being
-.\"forwarded to its destination, and destination replying faster
+.\"forwarded to its destination, and the destination replying faster
.\"than the state information is packed and synced with the second router.
.\"If the reply would be load balanced to second router, it will be
-.\"dropped due to no state.
+.\"dropped since the second router has not yet received information about
+.\"the connection state.
.Sh STATE CHANGE NOTIFICATIONS
Sometimes it is useful to get notified about
.Nm
@@ -183,11 +191,12 @@ This can be accomplished by using
hooks.
Master/slave events are signalled under system
.Dv CARP .
-Subsystem specifies vhid and name of interface, where event occurred.
-Type of the message displays new state of vhid.
+The subsystem specifies the vhid and name of the interface where
+the master/slave event occurred.
+The type of the message displays the new state of the vhid.
Please see
.Xr devd.conf 5
-and
+and the
.Sx EXAMPLES
section for more information.
.Sh EXAMPLES
@@ -195,8 +204,8 @@ For firewalls and routers with multiple interfaces, it is desirable to
failover all of the addresses running
.Nm
together, when one of the physical interfaces goes down.
-This is achieved by the preempt option.
-Enable it on both host A and B:
+This is achieved by the use of the preempt option.
+Enable it on both hosts A and B:
.Pp
.Dl sysctl net.inet.carp.preempt=1
.Pp
@@ -295,7 +304,6 @@ The
device was imported into
.Fx 5.4 .
In
-.Fx 10.0
-the
+.Fx 10.0 ,
.Nm
was significantly rewritten, and is no longer a pseudo-interface.
diff --git a/share/man/man4/ch.4 b/share/man/man4/ch.4
index b45ecaa..d097d54 100644
--- a/share/man/man4/ch.4
+++ b/share/man/man4/ch.4
@@ -187,7 +187,7 @@ u_int cp_ndrives; /* number of drives */
This call can be used by applications to query the dimensions of
the jukebox before using the
.Dv CHIGSTATUS
-ioctl to query the jukebox' status.
+ioctl to query the jukebox status.
.It Dv CHIOIELEM
Perform the
.Sy INITIALIZE ELEMENT STATUS
@@ -230,7 +230,8 @@ base address and number of elements for which information is to be
returned in the array of
.Vt changer_element_status
structures pointed to by the
-.Va cesr_element_status field .
+.Va cesr_element_status
+field.
The application must allocate enough
memory for
.Va cesr_element_count
diff --git a/share/man/man4/cpuctl.4 b/share/man/man4/cpuctl.4
index 9e3a2aa..ed80f8a 100644
--- a/share/man/man4/cpuctl.4
+++ b/share/man/man4/cpuctl.4
@@ -124,8 +124,8 @@ For additional information refer to
.Sh RETURN VALUES
.Bl -tag -width Er
.It Bq Er ENXIO
-The operation requested is not supported by the device (e.g. unsupported
-architecture or the CPU is disabled)
+The operation requested is not supported by the device (e.g., unsupported
+architecture or the CPU is disabled).
.It Bq Er EINVAL
Incorrect request was supplied, or microcode image is not correct.
.It Bq Er ENOMEM
diff --git a/share/man/man4/cpufreq.4 b/share/man/man4/cpufreq.4
index d4a2a3f..850660e 100644
--- a/share/man/man4/cpufreq.4
+++ b/share/man/man4/cpufreq.4
@@ -286,6 +286,7 @@ then it should set all elements to
.Dv CPUFREQ_VAL_UNKNOWN .
.Sh SEE ALSO
.Xr acpi 4 ,
+.Xr est 4 ,
.Xr timecounters 4 ,
.Xr powerd 8 ,
.Xr sysctl 8
diff --git a/share/man/man4/cxgbe.4 b/share/man/man4/cxgbe.4
index 88d42e3..882bcf7 100644
--- a/share/man/man4/cxgbe.4
+++ b/share/man/man4/cxgbe.4
@@ -1,4 +1,4 @@
-.\" Copyright (c) 2011, Chelsio Inc
+.\" Copyright (c) 2011-2012, Chelsio Inc
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -145,10 +145,9 @@ dev.cxgbe.X.holdoff_tmr_idx sysctl.
The packet-count index value to use to delay interrupts.
The packet-count list has the values 1, 8, 16, and 32 by default
and the index selects a value from this list.
-The default value is 2 for both 10Gb and 1Gb ports, which means 16
-packets (or the holdoff timer going off) before an interrupt is
-generated.
--1 disables packet counting.
+The default value is -1 for both 10Gb and 1Gb ports, which means packet
+counting is disabled and interrupts are generated based solely on the
+holdoff timer value.
Different cxgbe interfaces can be assigned different values via the
dev.cxgbe.X.holdoff_pktc_idx sysctl.
This sysctl works only when the interface has never been marked up (as done by
@@ -221,7 +220,7 @@ email all the specific information related to the issue to
The
.Nm
device driver first appeared in
-.Fx 9.0
+.Fx 9.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/dcons.4 b/share/man/man4/dcons.4
index d3a49c2..91bb4b4 100644
--- a/share/man/man4/dcons.4
+++ b/share/man/man4/dcons.4
@@ -104,7 +104,7 @@ If you want to use
as a
.Xr gdb 1
port, add the following line into
-.Xr loader.conf 5
+.Xr loader.conf 5 :
.Bd -literal -offset indent
dcons_gdb="1"
.Ed
diff --git a/share/man/man4/ddb.4 b/share/man/man4/ddb.4
index c174b51..cefa7dd 100644
--- a/share/man/man4/ddb.4
+++ b/share/man/man4/ddb.4
@@ -1031,14 +1031,14 @@ Number of allocations requests to the given zone.
.Pp
The very same information might be gathered in the userspace
with the help of
-.Dq Nm vmstat Fl z
+.Dq Nm vmstat Fl z .
.\"
.Pp
.It Ic show Cm unpcb Ar addr
Shows UNIX domain socket private control block
.Vt struct unpcb
present at the address
-.Ar addr
+.Ar addr .
.\"
.Pp
.It Ic show Cm vmochk
@@ -1305,7 +1305,7 @@ command may be used to define a script by name.
Scripts consist of a series of
.Nm
commands separated with the
-.Ic ;
+.Ql \&;
character.
For example:
.Bd -literal -offset indent
diff --git a/share/man/man4/divert.4 b/share/man/man4/divert.4
index d0e6785..d22275e 100644
--- a/share/man/man4/divert.4
+++ b/share/man/man4/divert.4
@@ -21,7 +21,7 @@ kernel configuration file:
.Ed
.Pp
Alternatively, to load
-.Ns Nm
+the driver
as a module at boot time, add the following lines into the
.Xr loader.conf 5
file:
diff --git a/share/man/man4/epair.4 b/share/man/man4/epair.4
index 899bd5f..85e2ea01 100644
--- a/share/man/man4/epair.4
+++ b/share/man/man4/epair.4
@@ -33,7 +33,7 @@
.Os
.Sh NAME
.Nm epair
-.Nd A pair of virtual back-to-back connected Ethernet interfaces.
+.Nd A pair of virtual back-to-back connected Ethernet interfaces
.Sh SYNOPSIS
To compile this driver into the kernel,
place the following line in your
diff --git a/share/man/man4/est.4 b/share/man/man4/est.4
new file mode 100644
index 0000000..f1b5832
--- /dev/null
+++ b/share/man/man4/est.4
@@ -0,0 +1,98 @@
+.\"
+.\" Copyright (c) 2012 Sean Bruno <sbruno@freebsd.org>
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd June 12, 2012
+.Dt EST 4
+.Os
+.Sh NAME
+.Nm est
+.Nd Enhanced Speedstep Technology
+.Sh SYNOPSIS
+To compile this capability into your kernel
+place the following line in your kernel
+configuration file:
+.Bd -ragged -offset indent
+.Cd "device cpufreq"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+interface provides support for the Intel Enhanced Speedstep Technology.
+.Pp
+Note that
+.Nm
+capabilities are automatically loaded by the
+.Xr cpufreq 4
+driver.
+.Sh LOADER TUNABLES
+The
+.Nm
+interface is intended to allow
+.Xr cpufreq 4
+to access and implement Intel Enhanced SpeedStep Technology via
+.Xr acpi 4
+and the acpi_perf interface accessors.
+If the default settings are not optimal, the following sysctls can be
+used to modify or monitor
+.Nm
+behavior.
+.Bl -tag -width indent
+.It hw.est.msr_info
+Attempt to infer information from direct probing of the msr.
+Should only be used in diagnostic cases
+.Pq default 0
+.It hw.est.strict
+Validate frequency requested is accepted by the cpu when set.
+It appears that this will only work on single core cpus.
+.Pq default 0
+.El
+.Sh DIAGNOSTICS
+.Bl -diag
+.It "est%d: <Enhanced SpeedStep Frequency Control> on cpu%d"
+.Pp
+Indicates normal startup of this interface.
+.It "est: CPU supports Enhanced Speedstep, but is not recognized."
+.It "est: cpu_vendor GenuineIntel, msr 471c471c0600471c"
+.It "device_attach: est%d attach returned 6"
+.Pp
+Indicates all attempts to attach to this interface have failed.
+This usually indicates an improper BIOS setting restricting O/S
+control of the CPU speeds.
+Consult your BIOS documentation for more details.
+.El
+.Sh COMPATIBILITY
+.Nm
+is only found on supported Intel CPUs.
+.Sh SEE ALSO
+.Xr cpufreq 4
+.Rs
+.%T "Intel 64 and IA-32 Architectures Software Developer Manuals"
+.%U "http://www.intel.com/content/www/us/en/processors/architectures-software-developer-manuals.html"
+.Re
+.Sh AUTHORS
+This manual page was written by
+.An Sean Bruno Aq sbruno@FreeBSD.org .
diff --git a/share/man/man4/fdt.4 b/share/man/man4/fdt.4
index cd3312b..12542d0 100644
--- a/share/man/man4/fdt.4
+++ b/share/man/man4/fdt.4
@@ -143,8 +143,10 @@ The primary option for enabling
support in the kernel. It covers all low-level and infrastructure parts of
.Nm
kernel support, which primarily are the
-.Xr fdtbus 4 and
-.Xr simplebus 4 drivers, as well as helper routines and libraries.
+.Xr fdtbus 4
+and
+.Xr simplebus 4
+drivers, as well as helper routines and libraries.
.It Va makeoptions FDT_DTS_FILE=<board name>.dts
Specifies a preferred (default) device tree source (DTS) file for a given
kernel. The indicated DTS file will be converted (compiled) into a binary form
@@ -163,7 +165,7 @@ specified in order to embed it into the kernel image).
.Sh SEE ALSO
.Xr fdtbus 4 ,
.Xr openfirm 4 ,
-.Xr simplebus 4 ,
+.Xr simplebus 4
.Sh STANDARDS
IEEE Std 1275: IEEE Standard for Boot (Initialization Configuration) Firmware:
Core Requirements and Practices
diff --git a/share/man/man4/fdtbus.4 b/share/man/man4/fdtbus.4
index 0956c47..7141655 100644
--- a/share/man/man4/fdtbus.4
+++ b/share/man/man4/fdtbus.4
@@ -51,7 +51,8 @@ represents peripherals typically found on a highly integrated chip
The
.Nm
driver provides generic, common infrastructure for all
-.Xr fdt 4 oriented device drivers, and its main responsibilities are the
+.Xr fdt 4
+oriented device drivers, and its main responsibilities are the
following:
.Bl -bullet
.It
@@ -66,7 +67,7 @@ Managing SYS_RES_MEMORY, SYS_RES_IOPORT resources.
.Sh SEE ALSO
.Xr fdt 4 ,
.Xr openfirm 4 ,
-.Xr simplebus 4 ,
+.Xr simplebus 4
.Sh STANDARDS
IEEE Std 1275: IEEE Standard for Boot (Initialization Configuration) Firmware:
Core Requirements and Practices
diff --git a/share/man/man4/filemon.4 b/share/man/man4/filemon.4
new file mode 100644
index 0000000..0726e5a
--- /dev/null
+++ b/share/man/man4/filemon.4
@@ -0,0 +1,178 @@
+.\" Copyright (c) 2012
+.\" David E. O'Brien <obrien@FreeBSD.org>. All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\" must display the following acknowledgment:
+.\" This product includes software developed by David E. O'Brien and
+.\" contributors.
+.\" 4. Neither the name of the author nor the names of its contributors
+.\" may be used to endorse or promote products derived from this software
+.\" without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANT ABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd May 30, 2012
+.Dt FILEMON 4
+.Os
+.Sh NAME
+.Nm filemon
+.Nd the filemon device
+.Sh SYNOPSIS
+.In dev/filemon/filemon.h
+.Sh DESCRIPTION
+The
+.Nm
+device allows a process to collect file operations data of its children.
+The device
+.Pa /dev/filemon
+responds to two
+.Xr ioctl 2
+calls.
+.Pp
+System calls are denoted using the following single letters:
+.Pp
+.Bl -tag -width indent -compact
+.It Ql C
+.Xr chdir 2
+.It Ql D
+.Xr unlink 2
+.It Ql E
+.Xr exec 2
+.It Ql F
+.Xr fork 2 ,
+.Xr vfork 2
+.It Ql L
+.Xr link 2 ,
+.Xr linkat 2 ,
+.Xr symlink 2 ,
+.Xr symlinkat 2
+.It Ql M
+.Xr rename 2
+.It Ql R
+.Xr open 2
+for read
+.It Ql S
+.Xr stat 2
+.It Ql W
+.Xr open 2
+for write
+.It Ql X
+.Xr _exit 2
+.El
+.Pp
+Note that
+.Ql R
+following
+.Ql W
+records can represent a single
+.Xr open 2
+for R/W,
+or two separate
+.Xr open 2
+calls, one for
+.Ql R
+and one for
+.Ql W .
+Note that only successful system calls are captured.
+.Sh IOCTLS
+User mode programs communicate with the
+.Nm
+driver through a number of ioctls which are described below.
+Each takes a single argument.
+.Bl -tag -width ".Dv FILEMON_SET_PID"
+.It Dv FILEMON_SET_FD
+Write the internal tracing buffer to the supplied open file descriptor.
+.It Dv FILEMON_SET_PID
+Child process ID to trace.
+.El
+.Sh RETURN VALUES
+.\" .Rv -std ioctl
+The
+.Fn ioctl
+function returns the value 0 if successful;
+otherwise the value \-1 is returned and the global variable
+.Va errno
+is set to indicate the error.
+.Sh FILES
+.Bl -tag -width ".Pa /dev/filemon"
+.It Pa /dev/filemon
+.El
+.Sh EXAMPLES
+.Bd -literal
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <sys/wait.h>
+#include <sys/ioctl.h>
+#include <dev/filemon/filemon.h>
+#include <fcntl.h>
+#include <err.h>
+
+static void
+open_filemon(void)
+{
+ pid_t child;
+ int fm_fd, fm_log;
+
+ if ((fm_fd = open("/dev/filemon", O_RDWR)) == -1)
+ err(1, "open(\e"/dev/filemon\e", O_RDWR)");
+ if ((fm_log = open("filemon.out",
+ O_CREAT | O_WRONLY | O_TRUNC, DEFFILEMODE)) == -1)
+ err(1, "open(filemon.out)");
+
+ if (ioctl(fm_fd, FILEMON_SET_FD, &fm_log) == -1)
+ err(1, "Cannot set filemon log file descriptor");
+ /* Set up these two fd's to close on exec. */
+ (void)fcntl(fm_fd, F_SETFD, FD_CLOEXEC);
+ (void)fcntl(fm_log, F_SETFD, FD_CLOEXEC);
+
+ if ((child = fork()) == 0) {
+ child = getpid();
+ if (ioctl(fm_fd, FILEMON_SET_PID, &child) == -1)
+ err(1, "Cannot set filemon PID");
+ /* Do something here. */
+ return 0;
+ } else {
+ wait(&child);
+ close(fm_fd);
+ }
+ return 0;
+}
+.Ed
+.Pp
+Creates a file named
+.Pa filemon.out
+and configures the
+.Nm
+device to write the
+.Nm
+buffer contents to it.
+.Sh SEE ALSO
+.Xr dtrace 1 ,
+.Xr ktrace 1 ,
+.Xr truss 1 ,
+.Xr ioctl 2
+.Sh HISTORY
+A
+.Nm
+device appeared in
+.Fx 9.1 .
diff --git a/share/man/man4/firewire.4 b/share/man/man4/firewire.4
index 9f909f2..9ec5dfa 100644
--- a/share/man/man4/firewire.4
+++ b/share/man/man4/firewire.4
@@ -31,7 +31,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd April 1, 2006
+.Dd May 11, 2012
.Dt FIREWIRE 4
.Os
.Sh NAME
@@ -82,12 +82,20 @@ manager, are dynamically assigned, after bus reset is initiated.
On the
.Nm
bus, every device is identified by an EUI 64 address.
+.Pp
+Debugging over the firewire interace is possible with the
+.Xr dcons 4
+driver.
+Please see
+.Pa http://wiki.freebsd.org/DebugWithDcons
+for details on how to setup debugging with firewire.
.Sh FILES
-.Bl -tag -compact
+.Bl -tag -width "Pa /dev/fwmem0.0" -compact
.It Pa /dev/fw0.0
.It Pa /dev/fwmem0.0
.El
.Sh SEE ALSO
+.Xr dcons 4 ,
.Xr fwe 4 ,
.Xr fwip 4 ,
.Xr fwohci 4 ,
diff --git a/share/man/man4/gdb.4 b/share/man/man4/gdb.4
index b92958b..3a502c8 100644
--- a/share/man/man4/gdb.4
+++ b/share/man/man4/gdb.4
@@ -508,7 +508,7 @@ pointed to by the local variable
.It Ic checkmem
Check unallocated memory for modifications.
This assumes that the kernel has been compiled with
-.Cd "options DIAGNOSTIC"
+.Cd "options DIAGNOSTIC" .
This causes the contents of free memory to be set to
.Li 0xdeadc0de .
.It Ic dmesg
@@ -595,7 +595,7 @@ run the link at more than 9600 bps.
Firewire connections do not have this problem.
.Pp
The debugging macros
-.Dq "just growed" .
+.Dq "just grown" .
In general, the person who wrote them did so while looking for a specific
problem, so they may not be general enough, and they may behave badly when used
in ways for which they were not intended, even if those ways make sense.
diff --git a/share/man/man4/gre.4 b/share/man/man4/gre.4
index 827c93e..da33fd3 100644
--- a/share/man/man4/gre.4
+++ b/share/man/man4/gre.4
@@ -37,16 +37,14 @@
.Nd encapsulating network device
.Sh SYNOPSIS
To compile the
-.Ns Nm
-device into the kernel, place the following line in the kernel
+driver into the kernel, place the following line in the kernel
configuration file:
.Bd -ragged -offset indent
.Cd "device gre"
.Ed
.Pp
Alternatively, to load the
-.Ns Nm
-device as a module at boot time, place the following line in
+driver as a module at boot time, place the following line in
.Xr loader.conf 5 :
.Bd -literal -offset indent
if_gre_load="YES"
diff --git a/share/man/man4/hptrr.4 b/share/man/man4/hptrr.4
index 847d86d..0cbd2fd 100644
--- a/share/man/man4/hptrr.4
+++ b/share/man/man4/hptrr.4
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd November 8, 2009
+.Dd June 6, 2012
.Dt HPTRR 4
.Os
.Sh NAME
@@ -50,8 +50,11 @@ hptrr_load="YES"
The following tunables are settable from the loader:
.Bl -ohang
.It Va hw.hptrr.attach_generic
-set to 0 to deny driver attach to chips with generic Marvell (non-HighPoint)
-PCI identification. These chips are also supported by ata(4).
+set to 1 to permit driver attach to chips with generic Marvell (non-HighPoint)
+PCI identification. These chips are also supported by
+.Xr ata 4
+and
+.Xr mvs 4 .
Some vendors are using same chips, but without providing RAID BIOS.
.El
.Sh DESCRIPTION
@@ -112,6 +115,7 @@ This driver supersedes the older rr232x driver.
.Xr ata 4 ,
.Xr cam 4 ,
.Xr hptmv 4 ,
+.Xr mvs 4 ,
.Xr loader 8
.Sh HISTORY
The
diff --git a/share/man/man4/igb.4 b/share/man/man4/igb.4
index 169d057..f487048 100644
--- a/share/man/man4/igb.4
+++ b/share/man/man4/igb.4
@@ -31,7 +31,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd October 11, 2011
+.Dd May 12, 2012
.Dt IGB 4
.Os
.Sh NAME
@@ -160,6 +160,14 @@ The minimum is 80, and the maximum is 4096.
.It Va hw.igb.enable_aim
If set to 1, enable Adaptive Interrupt Moderation.
The default is to enable Adaptive Interrupt Moderation.
+.It Va kern.ipc.nmbclusters
+The maximum number of mbuf clusters allowed.
+If the system has more than one igb card or jumbo frames are
+enabled, this value will need to be increased.
+.It Va kern.ipc.nmbjumbo9k
+The maximum number of mbuf 9k jumbo clusters allowed.
+Increasing this to allow for at least 8192 extra clusters
+per interface can allow for an mtu of 8192.
.El
.Sh FILES
.Bl -tag -width /dev/led/igb*
diff --git a/share/man/man4/io.4 b/share/man/man4/io.4
index a3561db..fa1c3f1 100644
--- a/share/man/man4/io.4
+++ b/share/man/man4/io.4
@@ -27,7 +27,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd June 01, 2010
+.Dd June 1, 2010
.Dt IO 4
.Os
.Sh NAME
diff --git a/share/man/man4/ip.4 b/share/man/man4/ip.4
index cf16d65..d921c15f 100644
--- a/share/man/man4/ip.4
+++ b/share/man/man4/ip.4
@@ -32,7 +32,7 @@
.\" @(#)ip.4 8.2 (Berkeley) 11/30/93
.\" $FreeBSD$
.\"
-.Dd November 14, 2011
+.Dd June 15, 2012
.Dt IP 4
.Os
.Sh NAME
@@ -165,7 +165,7 @@ The
.Vt cmsghdr
fields have the following values:
.Bd -literal
-cmsg_len = sizeof(struct in_addr)
+cmsg_len = CMSG_LEN(sizeof(struct in_addr))
cmsg_level = IPPROTO_IP
cmsg_type = IP_RECVDSTADDR
.Ed
@@ -184,7 +184,7 @@ structure followed by the
address.
The cmsghdr fields should have the following values:
.Bd -literal
-cmsg_len = sizeof(struct in_addr)
+cmsg_len = CMSG_LEN(sizeof(struct in_addr))
cmsg_level = IPPROTO_IP
cmsg_type = IP_SENDSRCADDR
.Ed
@@ -215,7 +215,8 @@ before transmission.
This is in contrast to the default behavior of the
system, which is to transmit undirected broadcasts
via the first network interface with the
-.Dv IFF_BROADCAST flag set.
+.Dv IFF_BROADCAST
+flag set.
.Pp
This option allows applications to choose which
interface is used to transmit an undirected broadcast
@@ -226,7 +227,7 @@ configured with the broadcast address 192.168.2.255:
.Bd -literal
char msg[512];
struct sockaddr_in sin;
-u_char onesbcast = 1; /* 0 = disable (default), 1 = enable */
+int onesbcast = 1; /* 0 = disable (default), 1 = enable */
setsockopt(s, IPPROTO_IP, IP_ONESBCAST, &onesbcast, sizeof(onesbcast));
sin.sin_addr.s_addr = inet_addr("192.168.2.255");
@@ -235,12 +236,14 @@ sendto(s, msg, sizeof(msg), 0, &sin, sizeof(sin));
.Ed
.Pp
It is the application's responsibility to set the
-.Dv IP_TTL option
+.Dv IP_TTL
+option
to an appropriate value in order to prevent broadcast storms.
The application must have sufficient credentials to set the
.Dv SO_BROADCAST
socket level option, otherwise the
-.Dv IP_ONESBCAST option has no effect.
+.Dv IP_ONESBCAST
+option has no effect.
.Pp
If the
.Dv IP_BINDANY
@@ -276,13 +279,36 @@ that contains a cmsghdr structure followed by the
.Tn TTL .
The cmsghdr fields have the following values:
.Bd -literal
-cmsg_len = sizeof(u_char)
+cmsg_len = CMSG_LEN(sizeof(u_char))
cmsg_level = IPPROTO_IP
cmsg_type = IP_RECVTTL
.Ed
.\"
.Pp
If the
+.Dv IP_RECVTOS
+option is enabled on a
+.Dv SOCK_DGRAM
+socket, the
+.Xr recvmsg 2
+call will return the
+.Tn IP
+.Tn TOS
+(type of service) field for a
+.Tn UDP
+datagram.
+The msg_control field in the msghdr structure points to a buffer
+that contains a cmsghdr structure followed by the
+.Tn TOS .
+The cmsghdr fields have the following values:
+.Bd -literal
+cmsg_len = CMSG_LEN(sizeof(u_char))
+cmsg_level = IPPROTO_IP
+cmsg_type = IP_RECVTOS
+.Ed
+.\"
+.Pp
+If the
.Dv IP_RECVIF
option is enabled on a
.Dv SOCK_DGRAM
@@ -304,7 +330,7 @@ The
.Vt cmsghdr
fields have the following values:
.Bd -literal
-cmsg_len = sizeof(struct sockaddr_dl)
+cmsg_len = CMSG_LEN(sizeof(struct sockaddr_dl))
cmsg_level = IPPROTO_IP
cmsg_type = IP_RECVIF
.Ed
@@ -851,4 +877,5 @@ Before
packets received on raw IP sockets had the
.Va ip_hl
subtracted from the
-.Va ip_len field.
+.Va ip_len
+field.
diff --git a/share/man/man4/ipfirewall.4 b/share/man/man4/ipfirewall.4
index e1c9a8a..f19d024 100644
--- a/share/man/man4/ipfirewall.4
+++ b/share/man/man4/ipfirewall.4
@@ -9,15 +9,14 @@
.Nd IP packet filter and traffic accounting
.Sh SYNOPSIS
To compile
-.Ns Nm
+the driver
into the kernel, place the following option in the kernel configuration
file:
.Bd -ragged -offset indent
.Cd "options IPFIREWALL"
.Ed
.Pp
-Other kernel options related to
-.Ns Nm
+Other related kernel options
which may also be useful are:
.Bd -ragged -offset indent
.Cd "options IPFIREWALL_DEFAULT_TO_ACCEPT"
@@ -27,7 +26,7 @@ which may also be useful are:
.Ed
.Pp
To load
-.Ns Nm
+the driver
as a module at boot time, add the following line into the
.Xr loader.conf 5
file:
diff --git a/share/man/man4/ipmi.4 b/share/man/man4/ipmi.4
index 08dd0b0..25dc341 100644
--- a/share/man/man4/ipmi.4
+++ b/share/man/man4/ipmi.4
@@ -130,7 +130,7 @@ Send a message to the interface.
Possible error values:
.Bl -tag -width Er
.It Bq Er EFAULT
-An address supplied was invalid
+An address supplied was invalid.
.It Bq Er ENOMEM
Buffers could not be allowed for the command, out of memory.
.El
@@ -146,7 +146,7 @@ Get the slave LUN for source messages.
.Ss Unimplemented Ioctls
.Bl -tag -width indent
.It Dv IPMICTL_REGISTER_FOR_CMD Pq Vt "struct ipmi_cmdspec"
-Register to receive a specific command
+Register to receive a specific command.
Possible error values:
.Bl -tag -width Er
.It Bq Er EFAULT
@@ -157,7 +157,7 @@ The network function/command is already in use.
Could not allocate memory.
.El
.It Dv IPMICTL_UNREGISTER_FOR_CMD Pq Vt "struct ipmi_cmdspec"
-Unregister to receive a specific command
+Unregister to receive a specific command.
Possible error values:
.Bl -tag -width Er
.It Bq Er EFAULT
diff --git a/share/man/man4/ipw.4 b/share/man/man4/ipw.4
index 21ec44c..9becdfa 100644
--- a/share/man/man4/ipw.4
+++ b/share/man/man4/ipw.4
@@ -147,9 +147,9 @@ This should not happen.
.Xr wlan_tkip 4 ,
.Xr wlan_wep 4 ,
.Xr ifconfig 8 ,
-.Xr wpa_supplicant 8 .
+.Xr wpa_supplicant 8
.Sh AUTHORS
The original
.Nm
driver was written by
-.An Damien Bergamini Aq damien.bergamini@free.fr
+.An Damien Bergamini Aq damien.bergamini@free.fr .
diff --git a/share/man/man4/isci.4 b/share/man/man4/isci.4
index 0179a76..1d9353d 100644
--- a/share/man/man4/isci.4
+++ b/share/man/man4/isci.4
@@ -98,7 +98,8 @@ to the kernel configuration file.
The
.Nm
driver first appeared in
-.Fx 8.3 and 9.1 .
+.Fx 8.3
+and 9.1.
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/isp.4 b/share/man/man4/isp.4
index 914fec4..23fd4b1 100644
--- a/share/man/man4/isp.4
+++ b/share/man/man4/isp.4
@@ -64,7 +64,7 @@ Ultra2 LVD (for the ISP1080 and ISP1280), and Ultra3 LVD (for the
ISP12160).
.Pp
Fibre Channel support uses FCP SCSI profile for
-.Tn FibreChannel .
+.Tn FibreChannel ,
and utilizes Class 3 and Class 2 connections (Qlogic 2100 is Class
3 only, minor patches to the Qlogic 2200 to force Class 2 mode).
Support is available for Public and Private loops, and for
diff --git a/share/man/man4/iwn.4 b/share/man/man4/iwn.4
index 2c47f6f..5fe055e 100644
--- a/share/man/man4/iwn.4
+++ b/share/man/man4/iwn.4
@@ -179,4 +179,4 @@ This should not happen.
The original
.Nm
driver was written by
-.An Damien Bergamini Aq damien.bergamini@free.fr
+.An Damien Bergamini Aq damien.bergamini@free.fr .
diff --git a/share/man/man4/mac_lomac.4 b/share/man/man4/mac_lomac.4
index 0cf99c9..273a585 100644
--- a/share/man/man4/mac_lomac.4
+++ b/share/man/man4/mac_lomac.4
@@ -63,7 +63,7 @@ which protects the integrity of system objects and subjects by means of
an information flow policy coupled with the subject demotion
via floating labels.
In LOMAC, all system subjects and objects are assigned integrity labels, made
-up of one or more hierarchical grades, depending on the their types.
+up of one or more hierarchical grades, depending on their types.
Together, these label elements permit all labels to be placed in a partial
order, with information flow protections and demotion decisions
based on a dominance operator
diff --git a/share/man/man4/mac_none.4 b/share/man/man4/mac_none.4
index 8f46029..ed13ca6 100644
--- a/share/man/man4/mac_none.4
+++ b/share/man/man4/mac_none.4
@@ -45,7 +45,7 @@ configuration file:
.Cd "options MAC_NONE"
.Ed
.Pp
-Alternately, to load the sample module at boot time, place the following line
+Alternately, to load the none module at boot time, place the following line
in your kernel configuration file:
.Bd -ragged -offset indent
.Cd "options MAC"
@@ -59,7 +59,7 @@ mac_none_load="YES"
.Sh DESCRIPTION
The
.Nm
-policy module implements a sample MAC policy that has no effect on
+policy module implements a none MAC policy that has no effect on
access control in the system.
Unlike
.Xr mac_stub 4 ,
diff --git a/share/man/man4/mac_stub.4 b/share/man/man4/mac_stub.4
index 79326df..89491f1 100644
--- a/share/man/man4/mac_stub.4
+++ b/share/man/man4/mac_stub.4
@@ -37,7 +37,7 @@
.Nm mac_stub
.Nd "MAC policy stub module"
.Sh SYNOPSIS
-To compile the sample policy
+To compile the stub policy
into your kernel, place the following lines in your kernel
configuration file:
.Bd -ragged -offset indent
@@ -45,7 +45,7 @@ configuration file:
.Cd "options MAC_STUB"
.Ed
.Pp
-Alternately, to load the sample module at boot time, place the following line
+Alternately, to load the stub module at boot time, place the following line
in your kernel configuration file:
.Bd -ragged -offset indent
.Cd "options MAC"
@@ -59,7 +59,7 @@ mac_stub_load="YES"
.Sh DESCRIPTION
The
.Nm
-policy module implements a sample MAC policy that has no effect on
+policy module implements a stub MAC policy that has no effect on
access control in the system.
Unlike
.Xr mac_none 4 ,
diff --git a/share/man/man4/man4.i386/sbni.4 b/share/man/man4/man4.i386/sbni.4
index 31cf610..779deba 100644
--- a/share/man/man4/man4.i386/sbni.4
+++ b/share/man/man4/man4.i386/sbni.4
@@ -97,7 +97,7 @@ bits 4-5 value, otherwise baud rate is set to 2Mb
.Sh FILES
The sources for the driver reside in:
.Pp
-.Bl -tag -compact
+.Bl -tag -width ".Pa /sys/dev/sbni/if_sbni.c" -compact
.It Pa /sys/dev/sbni/if_sbni.c
.It Pa /sys/dev/sbni/if_sbnireg.h
.It Pa /sys/dev/sbni/if_sbnivar.h
diff --git a/share/man/man4/mk48txx.4 b/share/man/man4/mk48txx.4
index 66f9519..303ccc9 100644
--- a/share/man/man4/mk48txx.4
+++ b/share/man/man4/mk48txx.4
@@ -123,7 +123,7 @@ function.
The offset into the control registers of the
.Tn Mostek
chip,
-which is set by the the
+which is set by the
.Fn mk48txx_attach
function.
.It Fa sc_year0
diff --git a/share/man/man4/mps.4 b/share/man/man4/mps.4
index dbf35cd..2fbb669 100644
--- a/share/man/man4/mps.4
+++ b/share/man/man4/mps.4
@@ -34,7 +34,7 @@
.\" $Id: //depot/SpectraBSD/head/share/man/man4/mps.4#6 $
.\" $FreeBSD$
.\"
-.Dd February 7, 2012
+.Dd June 30, 2012
.Dt MPS 4
.Os
.Sh NAME
@@ -166,7 +166,7 @@ variable, where X is the adapter number, either in
or via
.Xr sysctl 8 .
The following bits have the described effects:
-.Bl -tag -offset indent
+.Bl -tag -width 6n -offset indent
.It 0x01
Enable informational prints.
.It 0x02
@@ -205,11 +205,8 @@ This man page was written by
This driver has a couple of known shortcomings:
.Bl -bullet -compact
.It
-Not endian safe.
-It only works on little endian machines (e.g. amd64 and i386).
-.It
No userland utility available (e.g.
-.Xr mptutil 8)
+.Xr mptutil 8 ) .
.It
The driver probes devices sequentially.
If your system has a large number of devices, the probe will take a while.
diff --git a/share/man/man4/mpt.4 b/share/man/man4/mpt.4
index 4983759..9d62d17 100644
--- a/share/man/man4/mpt.4
+++ b/share/man/man4/mpt.4
@@ -124,15 +124,15 @@ Dell PowerEdge 1750 thru 2850
IBM eServer xSeries 335
.El
.Pp
-These systems also contain Integrated Raid Mirroring and Integrated
-Raid Mirroring Enhanced which this driver also supports.
+These systems also contain Integrated RAID Mirroring and Integrated
+RAID Mirroring Enhanced which this driver also supports.
.Pp
The
.Tn SAS
controller chips are also present on many new AMD/Opteron based systems,
like the Sun 4100.
Note that this controller can drive both SAS and SATA
-drives or a mix of them at the same time. The Integrated Raid Mirroring
+drives or a mix of them at the same time. The Integrated RAID Mirroring
available for these controllers is poorly supported at best.
.Pp
The
diff --git a/share/man/man4/mvs.4 b/share/man/man4/mvs.4
index a7bbe80..5c8d8cc 100644
--- a/share/man/man4/mvs.4
+++ b/share/man/man4/mvs.4
@@ -67,7 +67,8 @@ controls SATA interface Power Management for the specified channel,
allowing some power to be saved at the cost of additional command
latency.
Possible values:
-.Bl -tag -compact
+.Pp
+.Bl -tag -width 4n -offset indent -compact
.It 0
interface Power Management is disabled (default);
.It 1
diff --git a/share/man/man4/mwl.4 b/share/man/man4/mwl.4
index 62dc29e..910ae08 100644
--- a/share/man/man4/mwl.4
+++ b/share/man/man4/mwl.4
@@ -144,7 +144,7 @@ ifconfig wlan0 create wlandev mwl0 wlanmode mesh
ifconfig wlan0 meshid my_mesh mode 11a inet 192.168.0.10/24
.Ed
.Pp
-Create two virtual 802.11a host-based access points, one with
+Create two virtual 802.11a host-based access points, one
with WEP enabled and one with no security, and bridge them to
the fxp0 (wired) device:
.Bd -literal -offset indent
diff --git a/share/man/man4/nand.4 b/share/man/man4/nand.4
new file mode 100644
index 0000000..d23e292
--- /dev/null
+++ b/share/man/man4/nand.4
@@ -0,0 +1,140 @@
+.\"
+.\" Copyright (c) 2012 The FreeBSD Foundation
+.\" All rights reserved.
+.\"
+.\" This documentation was written by Semihalf under sponsorship from
+.\" the FreeBSD Foundation.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd March 8, 2012
+.Dt NAND 4
+.Os
+.Sh NAME
+.Nm nand
+.Nd NAND Flash framework
+.Sh SYNOPSIS
+.Cd "device nand"
+.Sh DESCRIPTION
+The
+.Fx
+.Nm
+framework consists of a set of interfaces that aim to provide an extensible,
+object oriented environement for NAND controllers and NAND Flash memory chips
+from various hardware vendors, and to allow for uniform and flexible
+management of the NAND devices. It comprises of the following major
+components:
+.Bl -bullet
+.It
+NAND Flash controller (NFC) interface.
+.Pp
+Defines methods which allow to send commands as well as send/receive data
+between the controller and a NAND chip. Back-end drivers for specific NAND
+controllers plug into this interface and implement low-level routines for a
+given NAND controller.
+.Pp
+This layer implements basic functionality of a NAND Flash controller. It
+allows to send command and address to chip, drive CS (chip select line), as
+well as read/write to the selected NAND chip. This layer is independent of
+NAND chip devices actually connected to the controller.
+.It
+NAND chip interface.
+.Pp
+Provides basic operations like read page, program page, erase block. Currently
+three generic classes of drivers are available, which provide support for the
+following chips:
+.Bl -bullet
+.It
+large page
+.It
+small page
+.It
+ONFI-compliant
+.El
+.Pp
+This layer implements basic operations to be performed on a NAND chip, like
+read, program, erase, get status etc. Since these operations use specific
+commands (depending on the vendor), each chip has potentially its own
+implementation of the commands set.
+.Pp
+The framework is extensible so it is also possible to create a custom command
+set for a non standard chip support.
+.It
+NANDbus.
+.Pp
+This layer is responsible for enumerating NAND chips in the system and
+establishing the hierarchy between chips and their supervising controllers.
+.Pp
+Its main purpose is detecting type of NAND chips connected to a given chip
+select (CS line). It also allows manages locking access to the NAND
+controller. NANDbus passes requests from an active chip to the chip
+controller.
+.It
+NAND character / GEOM device.
+.Pp
+For each NAND chip found in a system a character and GEOM devices are created
+which allows to read / write directly to a device, as well as perform other
+specific operations (like via ioctl).
+.Pp
+There are two GEOM devices created for each NAND chip:
+.Bl -bullet
+.It
+raw device
+.It
+normal device
+.El
+.Pp
+Raw device allows to bypass ECC checking when reading/writing to it, while
+normal device always uses ECC algorithm to validate the read data.
+.Pp
+NAND character devices will be created for each NAND chip detected while
+probing the NAND controller.
+.El
+.Sh SEE ALSO
+.Xr libnandfs 3 ,
+.Xr gnand 4 ,
+.Xr nandsim 4 ,
+.Xr nandfs 5 ,
+.Xr makefs 8 ,
+.Xr mount_nandfs 8 ,
+.Xr nandfs 8 ,
+.Xr nandsim 8 ,
+.Xr nandtool 8 ,
+.Xr newfs_nandfs 8 ,
+.Xr umount_nandfs 8
+.Sh STANDARDS
+Open NAND Flash Interface Working Group
+.Pq Vt ONFI .
+.Sh HISTORY
+The
+.Nm
+framework support first appeared in
+.Fx 10.0 .
+.Sh AUTHOR
+The
+.Nm
+framework was designed and developed by
+.An Grzegorz Bernacki .
+This manual page was written by
+.An Rafal Jaworowski .
diff --git a/share/man/man4/nandsim.4 b/share/man/man4/nandsim.4
new file mode 100644
index 0000000..ebb5452
--- /dev/null
+++ b/share/man/man4/nandsim.4
@@ -0,0 +1,92 @@
+.\"
+.\" Copyright (c) 2012 The FreeBSD Foundation
+.\" All rights reserved.
+.\"
+.\" This documentation was written by Semihalf under sponsorship from
+.\" the FreeBSD Foundation.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd March 8, 2012
+.Dt NANDSIM 4
+.Os
+.Sh NAME
+.Nm nandsim
+.Nd NAND Flash simulator driver
+.Sh SYNOPSIS
+.Cd "device nand"
+.Cd "device nandsim"
+.Cd "options ALQ"
+.Sh DESCRIPTION
+The
+.Nm
+is part of the
+.Fx
+NAND framework
+.Xr nand 4
+and can be characterized with the following highlights:
+.Bl -bullet
+.It
+plugs into the
+.Xr nand 4
+framework APIs as if it were a hardware controller (hanging on the nexus bus)
+with real NAND chips connected to it
+.It
+physically part of the kernel code (either statically linked into the kernel
+image or built as a module)
+.It
+controlled with a user space program
+.Xr nandsim 8
+.El
+.Pp
+From the user perspective, the
+.Nm
+allows for imitating ONFI-compliant NAND Flash devices as if they were
+attached to the system via a virtual controller.
+.Pp
+Some
+.Nm
+features rely on the ability to log contents to a file, which is achieved
+through the
+.Xr alq 9
+facility.
+.Sh SEE ALSO
+.Xr nand 4 ,
+.Xr nandsim.conf 5 ,
+.Xr nandsim 8
+.Sh STANDARDS
+Open NAND Flash Interface Working Group
+.Pq Vt ONFI .
+.Sh HISTORY
+The
+.Nm
+support first appeared in
+.Fx 10.0 .
+.Sh AUTHOR
+The
+.Nm
+kernel driver was developed by
+.An Grzegorz Bernacki .
+This manual page was written by
+.An Rafal Jaworowski .
diff --git a/share/man/man4/net80211.4 b/share/man/man4/net80211.4
index 20d71fe..3773b98 100644
--- a/share/man/man4/net80211.4
+++ b/share/man/man4/net80211.4
@@ -366,7 +366,7 @@ Valid values are:
0 (do not promote, use legacy),
1 (promote to HT20),
and
-2 (promote to HT40),
+2 (promote to HT40).
.It Dv IEEE80211_IOC_HTPROTMODE
Return, in
.Va i_val ,
@@ -447,7 +447,7 @@ Return the number of SSIDs supported in
.Va i_val .
.It Dv IEEE80211_IOC_NUMWEPKEYS
Return the number of WEP keys supported in
-.Va i_val
+.Va i_val .
.It Dv IEEE80211_IOC_POWERSAVE
Return the current powersaving mode in
.Va i_val .
@@ -923,8 +923,8 @@ using the value in
.Va i_val .
.It Dv IEEE80211_IOC_DTIM_PERIOD
Set the period (in beacon intervals) between DTIM events to the value in
-This request causes a running interface to be restarted.
.Va i_val .
+This request causes a running interface to be restarted.
.It Dv IEEE80211_IOC_DWDS
Set whether or not Dynamic WDS support is enabled using the value in
.Va i_val .
diff --git a/share/man/man4/netmap.4 b/share/man/man4/netmap.4
index 8edcb02..9ac9fd0 100644
--- a/share/man/man4/netmap.4
+++ b/share/man/man4/netmap.4
@@ -46,7 +46,7 @@ uses memory mapped buffers and metadata
which is in charge of validating information through
.Pa ioctl()
and
-.Pa select()/poll().
+.Pa select()/poll() .
.Nm
can exploit the parallelism in multiqueue devices and
multicore systems.
diff --git a/share/man/man4/ng_etf.4 b/share/man/man4/ng_etf.4
index bc42726..adc3fba 100644
--- a/share/man/man4/ng_etf.4
+++ b/share/man/man4/ng_etf.4
@@ -135,7 +135,6 @@ nghook -a etf: newproto &
# Filter two random ethertypes to that hook.
ngctl 'msg etf: setfilter { matchhook="newproto" ethertype=${MATCH1} }
ngctl 'msg etf: setfilter { matchhook="newproto" ethertype=${MATCH2} }
-DONE
.Ed
.Sh SHUTDOWN
This node shuts down upon receipt of a
diff --git a/share/man/man4/ng_ksocket.4 b/share/man/man4/ng_ksocket.4
index e74f61a..3a9fcd0 100644
--- a/share/man/man4/ng_ksocket.4
+++ b/share/man/man4/ng_ksocket.4
@@ -34,7 +34,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd January 09, 2012
+.Dd January 9, 2012
.Dt NG_KSOCKET 4
.Os
.Sh NAME
diff --git a/share/man/man4/ng_nat.4 b/share/man/man4/ng_nat.4
index 9a3e9bc..b2cff1f 100644
--- a/share/man/man4/ng_nat.4
+++ b/share/man/man4/ng_nat.4
@@ -61,7 +61,7 @@ After both hooks have been connected and aliasing address was configured,
a node is ready for aliasing operation.
.It Dv NGM_NAT_SET_MODE Pq Li setmode
Set node's operation mode using supplied
-.Vt "struct ng_nat_mode".
+.Vt "struct ng_nat_mode" .
.Bd -literal
struct ng_nat_mode {
uint32_t flags;
@@ -193,7 +193,7 @@ are also ignored after
was used (they are effectively replaced by server pool).
.It Dv NGM_NAT_LIST_REDIRECTS Pq Li listredirects
Return list of configured static redirects as
-.Vt "struct ng_nat_list_redirects".
+.Vt "struct ng_nat_list_redirects" .
.Bd -literal
struct ng_nat_listrdrs_entry {
uint32_t id; /* Anything except zero */
diff --git a/share/man/man4/ng_netflow.4 b/share/man/man4/ng_netflow.4
index ca00201..5985c44 100644
--- a/share/man/man4/ng_netflow.4
+++ b/share/man/man4/ng_netflow.4
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd March 2, 2011
+.Dd June 16, 2012
.Dt NG_NETFLOW 4
.Os
.Sh NAME
@@ -112,7 +112,18 @@ The hook number is passed as an argument.
Sets data link type on the
.Va iface Ns Ar N
hook.
-Currently, supported types are raw IP datagrams and Ethernet.
+Currently, supported types are
+.Cm DLT_RAW
+(raw IP datagrams) and
+.Cm DLT_EN10MB
+(Ethernet).
+DLT_ definitions can be found in
+.In net/bpf.h
+header.
+Currently used values are 1 for
+.Cm DLT_EN10MB
+and 12 for
+.Cm DLT_RAW .
This message type uses
.Vt "struct ng_netflow_setdlt"
as an argument:
@@ -180,18 +191,36 @@ struct ng_netflow_setconfig {
#define NG_NETFLOW_CONF_EGRESS 2
#define NG_NETFLOW_CONF_ONCE 4
#define NG_NETFLOW_CONF_THISONCE 8
+#define NG_NETFLOW_CONF_NOSRCLOOKUP 16
+#define NG_NETFLOW_CONF_NODSTLOOKUP 32
};
.Ed
.Pp
Configuration is a bitmask of several options. Option NG_NETFLOW_CONF_INGRESS
enabled by default enables ingress NetFlow generation (for data coming from
-ifaceX hook). Option NG_NETFLOW_CONF_EGRESS enables egress NetFlow (for data
-coming from outX hook). Option NG_NETFLOW_CONF_ONCE defines that packet should
-be accounted only once if it several times passes via netflow node. Option
-NG_NETFLOW_CONF_THISONCE defines that packet should be accounted only once
-if it several times passes via exactly this netflow node. Last two options are
-important to avoid duplicate accounting when both ingress and egress NetFlow
-are enabled.
+ifaceX hook).
+Option
+.Va NG_NETFLOW_CONF_EGRESS
+enables egress NetFlow (for data coming from outX hook).
+Option
+.Va NG_NETFLOW_CONF_ONCE
+defines that packet should be accounted only once if it several times passes
+via netflow node.
+Option
+.Va NG_NETFLOW_CONF_THISONCE
+defines that packet should be accounted only once if it several times passes
+via exactly this netflow node.
+These two options are important to avoid duplicate accounting when both ingress
+and egress NetFlow are enabled.
+Option
+.Va NG_NETFLOW_CONF_NOSRCLOOKUP
+skips radix lookup on flow source address used to fill in network mask.
+Option
+.Va NG_NETFLOW_CONF_NODSTLOOKUP
+skips radix lookup on destination (which fills egress interface id, destination
+mask and gateway).
+If one doesn't need data provided by lookups, he/she can disable them, to reduce
+load on routers.
.It Dv NGM_NETFLOW_SETTEMPLATE
Sets various timeouts to announce data flow templates
(NetFlow v9-specific). This message requires
@@ -218,7 +247,7 @@ struct ng_netflow_settemtu {
};
.Ed
.Pp
-Default is 1500 bytes
+Default is 1500 bytes.
.It Dv NGM_NETFLOW_SHOW
This control message asks a node to dump the entire contents of the flow cache.
It is called from
@@ -284,7 +313,7 @@ node in this example is connected to
The latter sends us a copy of IP packets, which we analyze and free.
On
.Va fxp0:
-we do not use tee, but send packets back to ether node.
+we do not use tee, but send packets back to either node.
.Bd -literal -offset indent
/usr/sbin/ngctl -f- <<-SEQ
# connect ng0's tee to iface0 hook
diff --git a/share/man/man4/ng_patch.4 b/share/man/man4/ng_patch.4
index e223c39..b1ddf4a 100644
--- a/share/man/man4/ng_patch.4
+++ b/share/man/man4/ng_patch.4
@@ -140,7 +140,7 @@ node allows to modify TTL and TOS/DSCP fields in IP packets.
Suppose you have two adjacent simplex links to remote network
(e.g.\& satellite), so that the packets expiring in between
will generate unwanted ICMP-replies which have to go forth, not back.
-Thus you need to raise TTL of every packet entering link link by 2
+Thus you need to raise TTL of every packet entering link by 2
to ensure the TTL will not reach zero there.
So you setup
.Xr ipfw 8
diff --git a/share/man/man4/ng_socket.4 b/share/man/man4/ng_socket.4
index 22c6638..84ddd15 100644
--- a/share/man/man4/ng_socket.4
+++ b/share/man/man4/ng_socket.4
@@ -93,7 +93,8 @@ socket must also be created using
and associated with a
.Nm
node.
-.Dv NG_DATA sockets do not automatically
+.Dv NG_DATA
+sockets do not automatically
have nodes associated with them; they are bound to a specific node via the
.Xr connect 2
system call.
diff --git a/share/man/man4/pcm.4 b/share/man/man4/pcm.4
index 1ac5844..c92b1e6 100644
--- a/share/man/man4/pcm.4
+++ b/share/man/man4/pcm.4
@@ -390,7 +390,7 @@ Quality values are 100dB stopband, 8 taps and 85% bandwidth.
Continuation of the bandlimited SINC interpolator, with 100dB stopband, 36
taps and 90% bandwidth as quality values.
.It 4
-Continuation of the bandlimited SINC inteprolator, with 100dB stopband, 164
+Continuation of the bandlimited SINC interprolator, with 100dB stopband, 164
taps and 97% bandwidth as quality values.
.El
.It Va hw.snd.feeder_rate_round
@@ -519,7 +519,7 @@ By default only 2 channels are enabled.
Available options include:
.Bl -tag -width 2n
.It s16le:1.0
-Mono
+Mono.
.It s16le:2.0
Stereo, 2 channels (left, right).
.It s16le:2.1
diff --git a/share/man/man4/pcn.4 b/share/man/man4/pcn.4
index 82720c9..b86e4fb 100644
--- a/share/man/man4/pcn.4
+++ b/share/man/man4/pcn.4
@@ -104,7 +104,7 @@ The
driver supports the following media options:
.Bl -tag -width full-duplex
.It full-duplex
-Force full duplex operation
+Force full duplex operation.
.It half-duplex
Force half duplex operation.
.El
diff --git a/share/man/man4/psm.4 b/share/man/man4/psm.4
index caf0135..ffcd1d5 100644
--- a/share/man/man4/psm.4
+++ b/share/man/man4/psm.4
@@ -725,7 +725,7 @@ psm0: syncmask:xx, syncbits:yy
.Pp
The first line shows the command byte value of the keyboard
controller just before the auxiliary port is probed.
-It usually is 4D, 45, 47 or 65, depending on how the motherboard BIOS
+It usually is 40, 45, 47 or 65, depending on how the motherboard BIOS
initialized the keyboard controller upon power-up.
.Pp
The second line shows the result of the keyboard controller's
diff --git a/share/man/man4/ral.4 b/share/man/man4/ral.4
index f2e0e5f..f2a2bd1 100644
--- a/share/man/man4/ral.4
+++ b/share/man/man4/ral.4
@@ -1,5 +1,4 @@
-.\" Copyright (c) 2005, 2006
-.\" Damien Bergamini <damien.bergamini@free.fr>
+.\" Copyright (c) 2005-2010 Damien Bergamini <damien.bergamini@free.fr>
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
@@ -15,12 +14,12 @@
.\"
.\" $FreeBSD$
.\"
-.Dd July 8, 2009
+.Dd May 10, 2012
.Dt RAL 4
.Os
.Sh NAME
.Nm ral
-.Nd "Ralink Technology IEEE 802.11 wireless network driver"
+.Nd "Ralink Technology IEEE 802.11a/g/n wireless network device"
.Sh SYNOPSIS
To compile this driver into the kernel,
place the following lines in your
@@ -42,31 +41,43 @@ if_ral_load="YES"
.Sh DESCRIPTION
The
.Nm
-driver supports PCI/CardBus wireless adapters based on the Ralink Technology
-RT2500, RT2501, and RT2600 chipsets.
+driver supports PCI/PCIe/CardBus wireless adapters based on the Ralink RT2500,
+RT2501, RT2600, RT2700, RT2800 and RT3090 chipsets.
.Pp
The RT2500 chipset is the first generation of 802.11b/g adapters from Ralink.
-It consists of two integrated chips, a RT2560 MAC/BBP and a RT2525 radio
+It consists of two integrated chips, an RT2560 MAC/BBP and an RT2525 radio
transceiver.
.Pp
-The RT2501 chipset is the second generation of 802.11b/g adapters from Ralink.
-It consists of two integrated chips, a RT2561 MAC/BBP and a RT2527 radio
+The RT2501 chipset is the second generation of 802.11a/b/g adapters from
+Ralink.
+It consists of two integrated chips, an RT2561 MAC/BBP and an RT2527 radio
transceiver.
This chipset provides support for the IEEE 802.11e standard with multiple
hardware transmission queues and allows scatter/gather for efficient DMA
operations.
.Pp
-The RT2600 chipset consists of two integrated chips, a RT2661 MAC/BBP and a
+The RT2600 chipset consists of two integrated chips, an RT2661 MAC/BBP and an
RT2529 radio transceiver.
This chipset uses the MIMO (multiple-input multiple-output) technology with
-multiple antennas to extend the operating range of the adapter and to achieve
-higher throughput.
-MIMO is the basis of the forthcoming IEEE 802.11n standard.
+multiple radio transceivers to extend the operating range of the adapter and
+to achieve higher throughput.
+However, the RT2600 chipset does not support any of the 802.11n features.
.Pp
-The transmit speed is user-selectable or can be adapted automatically by the
-driver depending on the received signal strength and on the number of hardware
-transmission retries.
+The RT2700 chipset is a low-cost version of the RT2800 chipset.
+It supports a single transmit path and two receiver paths (1T2R).
+It consists of two integrated chips, an RT2760 or RT2790 (PCIe) MAC/BBP and
+an RT2720 (2.4GHz) or RT2750 (2.4GHz/5GHz) radio transceiver.
+.Pp
+The RT2800 chipset is the first generation of 802.11n adapters from Ralink.
+It consists of two integrated chips, an RT2860 or RT2890 (PCIe) MAC/BBP and
+an RT2820 (2.4GHz) or RT2850 (2.4GHz/5GHz) radio transceiver.
+The RT2800 chipset supports two transmit paths and up to three receiver
+paths (2T2R/2T3R).
+It can achieve speeds up to 144Mbps (20MHz bandwidth) and 300Mbps (40MHz
+bandwidth.)
.Pp
+The RT3090 chipset is the first generation of single-chip 802.11n adapters
+from Ralink.
.Nm
supports
.Cm station ,
@@ -92,13 +103,16 @@ Multiple
interfaces may be operated together with a
.Cm hostap
interface to construct a wireless repeater device.
+.Pp
+The transmit speed is user-selectable or can be adapted automatically by the
+driver depending on the number of hardware transmission retries.
For more information on configuring this device, see
.Xr ifconfig 8 .
.Sh HARDWARE
The
.Nm
-driver supports PCI/CardBus wireless adapters based on the Ralink Technology
-RT2500, RT2501, and RT2600 chipsets, including:
+driver supports PCI/PCIe/CardBus wireless adapters based on Ralink Technology
+chipsets, including:
.Pp
.Bl -column -compact ".Li Atlantis Land A02-PCM-W54" "RT2561S" "CardBus"
.It Em Card Ta Em MAC/BBP Ta Em Bus
@@ -188,9 +202,6 @@ RT2500, RT2501, and RT2600 chipsets, including:
.It "Zonet ZEW1500" Ta RT2560 Ta CardBus
.It "Zonet ZEW1600" Ta RT2560 Ta PCI
.El
-.Pp
-An up to date list can be found at
-.Pa http://damien.bergamini.free.fr/ral/list.html .
.Sh EXAMPLES
Join an existing BSS network (i.e., connect to an access point):
.Pp
@@ -238,7 +249,7 @@ This should not happen.
.Xr wlan_xauth 4 ,
.Xr hostapd 8 ,
.Xr ifconfig 8 ,
-.Xr wpa_supplicant 8 .
+.Xr wpa_supplicant 8
.Rs
.%T "Ralink Technology"
.%U http://www.ralinktech.com/
@@ -248,12 +259,37 @@ The
.Nm
driver first appeared in
.Ox 3.7 .
+Support for the RT2501 and RT2600 chipsets was added in
+.Ox 3.9 .
+Support for the RT2800 chipset was added in
+.Ox 4.3 .
+Support for the RT2700 chipset was added in
+.Ox 4.4 .
+Support for the RT3090 chipset was added in
+.Ox 4.9 .
.Sh AUTHORS
The original
.Nm
driver was written by
-.An Damien Bergamini Aq damien@FreeBSD.org .
-.Sh BUGS
-Host AP mode doesn't support client power save.
-Clients using power save mode will experience
+.An Damien Bergamini Aq damien@openbsd.org .
+.Sh CAVEATS
+The
+.Nm
+driver does not make use of the hardware cryptographic engine.
+.Pp
+The
+.Nm
+driver does not support any of the 802.11n capabilities offered by
+the RT2700 and RT2800 chipsets.
+Additional work is required in before those features can be supported.
+.Pp
+Host AP mode doesn't support power saving.
+Clients attempting to use power saving mode may experience significant
packet loss (disabling power saving on the client will fix this).
+.Pp
+Some PCI
+.Nm
+adapters seem to strictly require a system supporting PCI 2.2 or greater and
+will likely not work in systems based on older revisions of the PCI
+specification.
+Check the board's PCI version before purchasing the card.
diff --git a/share/man/man4/rl.4 b/share/man/man4/rl.4
index 33db966..4cbf6e9 100644
--- a/share/man/man4/rl.4
+++ b/share/man/man4/rl.4
@@ -119,7 +119,7 @@ The
driver supports the following media options:
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
.It full-duplex
-Force full duplex operation
+Force full duplex operation.
.It half-duplex
Force half duplex operation.
.El
diff --git a/share/man/man4/run.4 b/share/man/man4/run.4
index 5f895e1..3aeb3db 100644
--- a/share/man/man4/run.4
+++ b/share/man/man4/run.4
@@ -16,7 +16,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd January 12, 2011
+.Dd July 9, 2012
.Dt RUN 4
.Os
.Sh NAME
@@ -112,7 +112,7 @@ driver supports the following wireless adapters:
.Bl -tag -width Ds -offset indent -compact
.It Airlink101 AWLL6090
.It ASUS USB-N11
-.It ASUS USB-N13
+.It ASUS USB-N13 ver. A1
.It ASUS WL-160N
.It Belkin F5D8051 ver 3000
.It Belkin F5D8053
@@ -122,6 +122,8 @@ driver supports the following wireless adapters:
.It Buffalo WLI-UC-G300N
.It Buffalo WLI-UC-G301N
.It Buffalo WLI-UC-GN
+.It Buffalo WLI-UC-GNM
+.It Buffalo WLI-UC-GNM2
.It Corega CG-WLUSB2GNL
.It Corega CG-WLUSB2GNR
.It Corega CG-WLUSB300AGN
@@ -142,6 +144,7 @@ driver supports the following wireless adapters:
.It Hercules HWNU-300
.It Linksys WUSB54GC v3
.It Linksys WUSB600N
+.It Logitec LAN-W150N/U2
.It Mvix Nubbin MS-811N
.It Planex GW-USMicroN
.It Planex GW-US300MiniS
@@ -208,7 +211,7 @@ This should not happen.
.Xr wlan_xauth 4 ,
.Xr ifconfig 8 ,
.Xr hostapd 8 ,
-.Xr wpa_supplicant 8 .
+.Xr wpa_supplicant 8
.Pp
Ralink Technology:
.Pa http://www.ralinktech.com/
diff --git a/share/man/man4/scsi.4 b/share/man/man4/scsi.4
index ad52663..fa5e05d 100644
--- a/share/man/man4/scsi.4
+++ b/share/man/man4/scsi.4
@@ -24,7 +24,7 @@
.\" SUCH DAMAGE.
.\"
.\" $FreeBSD$
-.Dd March 4, 2010
+.Dd June 7, 2012
.Dt CAM 4
.Os
.Sh NAME
@@ -43,6 +43,7 @@
.Cd "options CAM_DEBUG_BUS=-1"
.Cd "options CAM_DEBUG_TARGET=-1"
.Cd "options CAM_DEBUG_LUN=-1"
+.Cd "options CAM_DEBUG_COMPILE=CAM_DEBUG_INFO|CAM_DEBUG_CDB|CAM_DEBUG_PROBE"
.Cd "options CAM_DEBUG_FLAGS=CAM_DEBUG_INFO|CAM_DEBUG_CDB"
.Cd "options CAM_MAX_HIGHPOWER=4"
.Cd "options SCSI_NO_SENSE_STRINGS"
@@ -72,12 +73,11 @@ There are a number of generic kernel configuration options for the
subsystem:
.Bl -tag -width SCSI_NO_SENSE_STRINGS
.It Dv CAMDEBUG
-This option enables the
+This option compiles in all the
.Nm
debugging printf code.
This will not actually
cause any debugging information to be printed out when included by itself.
-Enabling printouts requires additional configuration.
See below for details.
.It Dv "CAM_MAX_HIGHPOWER=4"
This sets the maximum allowable number of concurrent "high power" commands.
@@ -248,54 +248,53 @@ see other
.Nm
device entries.
.Sh DIAGNOSTICS
-When the kernel is compiled with options CAMDEBUG, an XPT_DEBUG CCB can be
-used to enable various amounts of tracing information on any
-specific device.
-Devices not being traced will not produce trace information.
-There are currently four debugging flags that may be turned on:
+An XPT_DEBUG CCB can be used to enable various amounts of tracing information
+on any specific bus/device from the list of options compiled into the kernel.
+There are currently seven debugging flags that may be compiled in and used:
.Bl -tag -width CAM_DEBUG_SUBTRACE
.It Dv CAM_DEBUG_INFO
-This debugging flag enables general informational printfs for the device
+This flag enables general informational printfs for the device
or devices in question.
.It Dv CAM_DEBUG_TRACE
-This debugging flag enables function-level command flow tracing.
+This flag enables function-level command flow tracing.
i.e.\&
kernel printfs will happen at the entrance and exit of various functions.
.It Dv CAM_DEBUG_SUBTRACE
-This debugging flag enables debugging output internal to various functions.
+This flag enables debugging output internal to various functions.
.It Dv CAM_DEBUG_CDB
-This debugging flag will cause the kernel to print out all
+This flag will cause the kernel to print out all
+.Tn ATA
+and
.Tn SCSI
commands sent to a particular device or devices.
+.It Dv CAM_DEBUG_XPT
+This flag will enable command scheduler tracing.
+.It Dv CAM_DEBUG_PERIPH
+This flag will enable peripheral drivers messages.
+.It Dv CAM_DEBUG_PROBE
+This flag will enable devices probe process tracing.
.El
.Pp
Some of these flags, most notably
.Dv CAM_DEBUG_TRACE
and
-.Dv CAM_DEBUG_SUBTRACE
-will produce kernel printfs in EXTREME numbers,
-and because of that, they are not especially useful.
-There are not many things logged at the
-.Dv CAM_DEBUG_INFO
-level, so it is not especially useful.
-The most useful debugging flag is the
-.Dv CAM_DEBUG_CDB
-flag.
+.Dv CAM_DEBUG_SUBTRACE ,
+will produce kernel printfs in EXTREME numbers.
+.Pp
Users can enable debugging from their kernel config file, by using
the following kernel config options:
-.Bl -tag -width CAM_DEBUG_TARGET
+.Bl -tag -width CAM_DEBUG_COMPILE
.It Dv CAMDEBUG
-This enables
+This builds into the kernel all possible
.Nm
debugging.
-Without this option, users will not even be able
-to turn on debugging from userland via
-.Xr camcontrol 8 .
-.It Dv CAM_DEBUG_FLAGS
-This allows the user to set the various debugging flags described above
-in a kernel config file.
+.It Dv CAM_DEBUG_COMPILE
+This allows to specify support for which debugging flags described above
+should be built into the kernel.
Flags may be ORed together if the user wishes to
see printfs for multiple debugging levels.
+.It Dv CAM_DEBUG_FLAGS
+This allows to set the various debugging flags from a kernel config file.
.It Dv CAM_DEBUG_BUS
Specify a bus to debug.
To debug all busses, set this to -1.
@@ -307,17 +306,9 @@ Specify a lun to debug.
To debug all luns, set this to -1.
.El
.Pp
-When specifying a bus, target or lun to debug, you
-.Em MUST
-specify all three bus/target/lun options above.
-Using wildcards, you
-should be able to enable debugging on most anything.
-.Pp
-Users may also enable debugging printfs on the fly, if the
-.Dv CAMDEBUG
-option is their config file, by using the
+Users may also enable debugging on the fly by using the
.Xr camcontrol 8
-utility.
+utility, if wanted options built into the kernel.
See
.Xr camcontrol 8
for details.
diff --git a/share/man/man4/send.4 b/share/man/man4/send.4
index 9cfcd53..3f90eaf 100644
--- a/share/man/man4/send.4
+++ b/share/man/man4/send.4
@@ -38,10 +38,7 @@
.Ft int
.Fn socket PF_INET6 SOCK_RAW IPPROTO_SEND
.Pp
-To enable
-.Ns Nm
-support, load the kernel side SeND as a module.
-To load it at boot time, add the following line to
+To load the driver as a module at boot time, place the following line in
.Xr loader.conf 5 :
.Bd -literal -offset indent
send_load="YES"
diff --git a/share/man/man4/ses.4 b/share/man/man4/ses.4
index 3d95285..42ec529 100644
--- a/share/man/man4/ses.4
+++ b/share/man/man4/ses.4
@@ -101,7 +101,7 @@ Set the status of a particular object.
Get the associated help text for an object (not yet implemented).
.Nm
devices often have descriptive text for an object which can tell
-you things like location (e.g, "left power supply").
+you things like location (e.g., "left power supply").
.It Dv SESIOC_INIT
Initialize the enclosure.
.El
diff --git a/share/man/man4/siftr.4 b/share/man/man4/siftr.4
index 08d20e3..ab92f77 100644
--- a/share/man/man4/siftr.4
+++ b/share/man/man4/siftr.4
@@ -38,14 +38,14 @@
.Nd Statistical Information For TCP Research
.Sh SYNOPSIS
To load
-.Ns Nm
+the driver
as a module at run-time, run the following command as root:
.Bd -literal -offset indent
kldload siftr
.Ed
.Pp
Alternatively, to load
-.Ns Nm
+the driver
as a module at boot time, add the following line into the
.Xr loader.conf 5
file:
@@ -53,13 +53,16 @@ file:
siftr_load="YES"
.Ed
.Sh DESCRIPTION
+The
.Nm
-.Ns ( Em S Ns tatistical
+.Po
+.Em S Ns tatistical
.Em I Ns nformation
.Em F Ns or
.Em T Ns CP
-.Em R Ns esearch )
-is a kernel module that logs a range of statistics on active TCP connections to
+.Em R Ns esearch
+.Pc
+kernel module logs a range of statistics on active TCP connections to
a log file.
It provides the ability to make highly granular measurements of TCP connection
state, aimed at system administrators, developers and researchers.
@@ -91,7 +94,7 @@ utilises the
.Xr sysctl 8
interface to export its configuration variables to user-space.
The following variables are available:
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va net.inet.siftr.enabled
controls whether the module performs its
measurements or not.
@@ -104,7 +107,7 @@ packet filtering hooks are only inserted when
.Va net.inet.siftr.enabled
is set to 1.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va net.inet.siftr.ppl
controls how many inbound/outbound packets for a given TCP connection will cause
a log message to be generated for the connection.
@@ -113,13 +116,13 @@ every packet of every TCP connection.
The value can be set to any integer in the range [1,2^32], and can be changed at
any time, even while the module is enabled.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va net.inet.siftr.logfile
controls the path to the file that the module writes its log messages to.
By default, the file /var/log/siftr.log is used.
The path can be changed at any time, even while the module is enabled.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va net.inet.siftr.genhashes
controls whether a hash is generated for each TCP packet seen by
.Nm .
@@ -137,7 +140,7 @@ All messages are written in plain ASCII text.
Note: The
.Qq \e
present in the example log messages in this section indicates a
-line continuation and is not part of the actual log message
+line continuation and is not part of the actual log message.
.Pp
The first type of log message is written to the file when the module is
enabled and starts collecting data from the running kernel. The text below
@@ -150,36 +153,36 @@ sysname=FreeBSD sysver=604000 ipmode=4
.Ed
.Pp
Field descriptions are as follows:
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va enable_time_secs
time at which the module was enabled, in seconds since the UNIX epoch.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va enable_time_usecs
time at which the module was enabled, in microseconds since enable_time_secs.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va siftrver
version of
.Nm .
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va hz
tick rate of the kernel in ticks per second.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va tcp_rtt_scale
-smoothed RTT estimate scaling factor
+smoothed RTT estimate scaling factor.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va sysname
-operating system name
+operating system name.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va sysver
-operating system version
+operating system version.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va ipmode
IP mode as defined at compile time.
An ipmode of "4" means IPv6 is not supported and IP addresses are logged in
@@ -202,7 +205,7 @@ o,0xbec491a5,1238556193.463551,172.16.7.28,22,172.16.2.5,55931, \\
.Ed
.Pp
Field descriptions are as follows:
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 1
Direction of packet that triggered the log message.
Either
@@ -211,77 +214,77 @@ for in, or
.Qq o
for out.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 2
Hash of the packet that triggered the log message.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 3
Time at which the packet that triggered the log message was processed by
the
.Xr pfil 9
hook function, in seconds and microseconds since the UNIX epoch.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 4
The IPv4 or IPv6 address of the local host, in dotted quad (IPv4 packet)
or colon-separated hex (IPv6 packet) notation.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 5
The TCP port that the local host is communicating via.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 6
The IPv4 or IPv6 address of the foreign host, in dotted quad (IPv4 packet)
or colon-separated hex (IPv6 packet) notation.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 7
The TCP port that the foreign host is communicating via.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 8
The slow start threshold for the flow, in bytes.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 9
The current congestion window for the flow, in bytes.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 10
The current bandwidth-controlled window for the flow, in bytes.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 11
The current sending window for the flow, in bytes.
The post scaled value is reported, except during the initial handshake (first
few packets), during which time the unscaled value is reported.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 12
The current receive window for the flow, in bytes.
The post scaled value is always reported.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 13
The current window scaling factor for the sending window.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 14
The current window scaling factor for the receiving window.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 15
The current state of the TCP finite state machine, as defined
in
.Aq Pa netinet/tcp_fsm.h .
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 16
The maximum segment size for the flow, in bytes.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 17
The current smoothed RTT estimate for the flow, in units of TCP_RTT_SCALE * HZ,
where TCP_RTT_SCALE is a define found in tcp_var.h, and HZ is the kernel's tick
@@ -289,46 +292,46 @@ timer.
Divide by TCP_RTT_SCALE * HZ to get the RTT in secs. TCP_RTT_SCALE and HZ are
reported in the enable log message.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 18
SACK enabled indicator. 1 if SACK enabled, 0 otherwise.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 19
The current state of the TCP flags for the flow.
See
.Aq Pa netinet/tcp_var.h
for information about the various flags.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 20
The current retransmission timeout length for the flow, in units of HZ, where HZ
is the kernel's tick timer.
Divide by HZ to get the timeout length in seconds. HZ is reported in the
enable log message.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 21
The current size of the socket send buffer in bytes.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 22
The current number of bytes in the socket send buffer.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 23
The current size of the socket receive buffer in bytes.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 24
The current number of bytes in the socket receive buffer.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 25
The current number of unacknowledged bytes in-flight.
Bytes acknowledged via SACK are not excluded from this count.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va 26
The current number of segments in the reassembly queue.
.El
@@ -350,82 +353,82 @@ flow_list=172.16.7.28;22-172.16.2.5;55931,
.Ed
.Pp
Field descriptions are as follows:
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va disable_time_secs
Time at which the module was disabled, in seconds since the UNIX epoch.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va disable_time_usecs
Time at which the module was disabled, in microseconds since disable_time_secs.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va num_inbound_tcp_pkts
Number of TCP packets that traversed up the network stack.
This only includes inbound TCP packets during the periods when
.Nm
was enabled.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va num_outbound_tcp_pkts
Number of TCP packets that traversed down the network stack.
This only includes outbound TCP packets during the periods when
.Nm
was enabled.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va total_tcp_pkts
The summation of num_inbound_tcp_pkts and num_outbound_tcp_pkts.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va num_inbound_skipped_pkts_malloc
Number of inbound packets that were not processed because of failed malloc() calls.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va num_outbound_skipped_pkts_malloc
Number of outbound packets that were not processed because of failed malloc() calls.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va num_inbound_skipped_pkts_mtx
Number of inbound packets that were not processed because of failure to add the
packet to the packet processing queue.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va num_outbound_skipped_pkts_mtx
Number of outbound packets that were not processed because of failure to add the
packet to the packet processing queue.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va num_inbound_skipped_pkts_tcb
Number of inbound packets that were not processed because of failure to find the
TCP control block associated with the packet.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va num_outbound_skipped_pkts_tcb
Number of outbound packets that were not processed because of failure to find
the TCP control block associated with the packet.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va num_inbound_skipped_pkts_icb
Number of inbound packets that were not processed because of failure to find the
IP control block associated with the packet.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va num_outbound_skipped_pkts_icb
Number of outbound packets that were not processed because of failure to find
the IP control block associated with the packet.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va total_skipped_tcp_pkts
The summation of all skipped packet counters.
.El
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Va
.It Va flow_list
A CSV list of TCP flows that triggered data log messages to be generated since
the module was loaded.
Each flow entry in the CSV list is
formatted as
.Qq local_ip;local_port-foreign_ip;foreign_port .
-If there are no entries in the list (i.e. no data log messages were generated),
+If there are no entries in the list (i.e., no data log messages were generated),
the value will be blank.
If there is at least one entry in the list, a trailing comma will always be
present.
@@ -498,10 +501,10 @@ the system to trigger a dump of the state of the TCP control block for that
flow.
With the PPL set to 1, we are in effect sampling each TCP flow's control block
state as frequently as flow packets enter/leave the system.
-For example, setting PPL to 2 halves the sampling rate i.e. every second flow
+For example, setting PPL to 2 halves the sampling rate i.e., every second flow
packet (inbound OR outbound) causes a dump of the control block state.
.Pp
-The distinction between interrogating individual packets vs interrogating the
+The distinction between interrogating individual packets versus interrogating the
control block is important, because
.Nm
does not remove the need for packet capturing tools like
@@ -543,7 +546,7 @@ If one thread holds the lock, the other must wait before it can obtain it.
This does introduce some additional bounded delay into the kernel's packet
processing code path.
.Pp
-In some cases (e.g. low memory, connection termination), TCP packets that enter
+In some cases (e.g., low memory, connection termination), TCP packets that enter
the
.Nm
.Xr pfil 9
diff --git a/share/man/man4/siis.4 b/share/man/man4/siis.4
index 8bf03dd..366c3cc 100644
--- a/share/man/man4/siis.4
+++ b/share/man/man4/siis.4
@@ -57,12 +57,13 @@ controls SATA interface Power Management for the specified channel,
allowing some power to be saved at the cost of additional command
latency.
Possible values:
-.Bl -tag -compact
+.Bl -tag -width 2n -offset indent
.It 0
interface Power Management is disabled (default);
.It 1
device is allowed to initiate PM state change, host is passive.
.El
+.Pp
Note that interface Power Management is not compatible with
device presence detection.
A manual bus reset is needed on device hot-plug.
@@ -107,6 +108,7 @@ given precedence as the more functional of the two.
The
.Nm
driver supports the following controller chips:
+.Pp
.Bl -bullet -compact
.It
SiI3124 (PCI-X 133MHz/64bit, 4 ports)
diff --git a/share/man/man4/simplebus.4 b/share/man/man4/simplebus.4
index 72bc0e8..6834b38 100644
--- a/share/man/man4/simplebus.4
+++ b/share/man/man4/simplebus.4
@@ -60,11 +60,12 @@ configuration data retrieved from the nodes properties in
Note the
.Nm
does not manage device resources and passes through any requests to the
-.Xr fdtbus 4 layer.
+.Xr fdtbus 4
+layer.
.Sh SEE ALSO
.Xr fdt 4 ,
.Xr fdtbus 4 ,
-.Xr openfirm 4 ,
+.Xr openfirm 4
.Sh STANDARDS
Power.org Standard for Embedded Power Architecture Platform Requirements
.Pq Vt ePAPR .
diff --git a/share/man/man4/sis.4 b/share/man/man4/sis.4
index 365b0a2..414f0d8 100644
--- a/share/man/man4/sis.4
+++ b/share/man/man4/sis.4
@@ -113,7 +113,7 @@ The
driver supports the following media options:
.Bl -tag -width full-duplex
.It full-duplex
-Force full duplex operation
+Force full duplex operation.
.It half-duplex
Force half duplex operation.
.El
diff --git a/share/man/man4/sk.4 b/share/man/man4/sk.4
index 71e30c9..4710f58 100644
--- a/share/man/man4/sk.4
+++ b/share/man/man4/sk.4
@@ -127,7 +127,7 @@ The
driver supports the following media options:
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
.It full-duplex
-Force full duplex operation
+Force full duplex operation.
.It half-duplex
Force half duplex operation.
.El
diff --git a/share/man/man4/snd_hda.4 b/share/man/man4/snd_hda.4
index 6f7e8bd..91e599d 100644
--- a/share/man/man4/snd_hda.4
+++ b/share/man/man4/snd_hda.4
@@ -184,7 +184,7 @@ or as a set of space-separated
pairs.
.It Va hint.pcm.%d.rec.autosrc
Controls automatic recording source feature:
-.Bl -tag -compact
+.Bl -tag -width 2n -compact
.It 0
disabled,
.It 1
@@ -235,10 +235,10 @@ first pin in that association.
.Pp
The sequence numbers 14 and 15 has a special meaning for input associations.
Their presence in association defines it as multiplexed or mixed respectively.
-If none of them present and there are more then one pin in association,
+If none of them are present and there are more than one pin in association,
the association will provide multichannel input.
.Pp
-For multichannel input/output assotiations sequence numbers encode
+For multichannel input/output associations sequence numbers encode
channel pairs positions:
0 - Front, 1 - Center/LFE, 2 - Back, 3 - Front Wide Center, 4 - Side.
Standard combinations are: (0) - Stereo; (0, 2), (0, 4) - Quadro;
@@ -368,7 +368,7 @@ Original pin configuration written by BIOS.
.It Va dev.hdaa.%d.reconfig
Setting this to a non-zero value makes driver to destroy existing pcm devices
and process new pins configuration set via
-.Va dev.hdaa.%d.nid%d_config.
+.Va dev.hdaa.%d.nid%d_config .
.It Va dev.pcm.%d.play.32bit , dev.pcm.%d.rec.32bit
HDA controller uses 32bit representation for all samples of more then 16 bits.
These variables allow to specify how many bits of these 32 should be
@@ -586,7 +586,7 @@ subclass 3 (HDA), compatible with Intel HDA specification.
.Pp
The
.Nm
-driver supports more then two hundred different controllers and CODECs.
+driver supports more than two hundred different controllers and CODECs.
There is no sense to list all of them here, as in most cases specific CODEC
configuration and wiring are more important then type of the CODEC itself.
.Sh SEE ALSO
diff --git a/share/man/man4/snd_hdspe.4 b/share/man/man4/snd_hdspe.4
index a403a17..676b945 100644
--- a/share/man/man4/snd_hdspe.4
+++ b/share/man/man4/snd_hdspe.4
@@ -29,7 +29,7 @@
.Os
.Sh NAME
.Nm snd_hdspe
-.Nd "RME HDSPe brigde device driver"
+.Nd "RME HDSPe bridge device driver"
.Sh SYNOPSIS
To compile this driver into the kernel, place the following lines in your
kernel configuration file:
diff --git a/share/man/man4/splash.4 b/share/man/man4/splash.4
index 4b5f224..2a9a297 100644
--- a/share/man/man4/splash.4
+++ b/share/man/man4/splash.4
@@ -234,8 +234,7 @@ first example above.
.Pp
To load a binary ASCII drawing and display this while booting, include the
following into your
-.Pa /boot/loader.conf
-:
+.Pa /boot/loader.conf :
.Bd -literal -offset indent
splash_txt_load="YES"
bitmap_load="YES"
diff --git a/share/man/man4/ste.4 b/share/man/man4/ste.4
index 02644ae..22982b1 100644
--- a/share/man/man4/ste.4
+++ b/share/man/man4/ste.4
@@ -103,7 +103,7 @@ The
driver supports the following media options:
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
.It full-duplex
-Force full duplex operation
+Force full duplex operation.
.It half-duplex
Force half duplex operation.
.El
@@ -136,7 +136,7 @@ Maximum number of time to delay RX interrupts.
The valid range is 0 to 209712 in units of 1us, the default is
150 (150us).
The value 0 effectively disables the RX interrupt moderation.
-The resolution of of timer is about 3.2us so finer tuning than
+The resolution of timer is about 3.2us so finer tuning than
3.2us wouldn't be available.
The interface does not need to be brought down and up again before
a change takes effect.
diff --git a/share/man/man4/termios.4 b/share/man/man4/termios.4
index 2a69d7b..b914884 100644
--- a/share/man/man4/termios.4
+++ b/share/man/man4/termios.4
@@ -197,7 +197,8 @@ signal, or if the process group of the reading
process is orphaned, the
.Xr read 2
returns -1 with
-.Va errno set to
+.Va errno
+set to
.Er EIO
and no
signal is sent.
diff --git a/share/man/man4/ti.4 b/share/man/man4/ti.4
index 2ef606c..f415459 100644
--- a/share/man/man4/ti.4
+++ b/share/man/man4/ti.4
@@ -144,7 +144,7 @@ or
modes.
.It 1000baseSX
Set 1000Mbps (Gigabit Ethernet) operation.
-Only full
+Only
.Ar full-duplex
mode is supported at this speed.
.El
@@ -154,7 +154,7 @@ The
driver supports the following media options:
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
.It full-duplex
-Force full duplex operation
+Force full-duplex operation.
.It half-duplex
Force half duplex operation.
.El
@@ -240,14 +240,14 @@ when either of the thresholds is exceeded.
A value of 0 means that this parameter is ignored and receive BDs
will only be returned when the receive max coalesced BDs value is
reached.
-The default valus is 170.
+The default value is 170.
.It Va dev.ti.%d.rx_max_coal_bds
This value, receive max coalesced BDs, controls the number of
receive buffer descriptors that will be coalesced before the NIC
updates the receive return ring producer index.
If this value is set to 0 it will disable receive buffer descriptor
coalescing.
-The default valus is 64.
+The default value is 64.
.It Va dev.ti.%d.ti_tx_coal_ticks
This value, send coalesced ticks, controls the number of clock
ticks (of 1 microseconds each) that must elapse before the NIC DMAs
@@ -263,9 +263,9 @@ The default value is 2000.
This value, send max coalesced BDs, controls the number of send
buffer descriptors that will be coalesced before the NIC updates
the send consumer index.
-If this valus is set to 0 it will disable send buffer descriptor
+If this value is set to 0 it will disable send buffer descriptor
coalescing.
-The default valus is 32.
+The default value is 32.
.It Va dev.ti.%d.tx_buf_ratio
This value controls the ratio of the remaining memory in the NIC
that should be devoted to transmit buffer vs. receive buffer.
@@ -348,7 +348,7 @@ Write to the requested memory region on the Tigon board.
The argument is
.Vt "struct tg_mem" .
.It Dv ALT_READ_TG_REG
-Read the requested register on the Tigon board.
+Read the requested register from the Tigon board.
The argument is
.Vt "struct tg_reg" .
.It Dv ALT_WRITE_TG_REG
diff --git a/share/man/man4/tl.4 b/share/man/man4/tl.4
index eb8351d..0716ce0 100644
--- a/share/man/man4/tl.4
+++ b/share/man/man4/tl.4
@@ -82,9 +82,9 @@ option is only available on those PHYs that support autonegotiation.
Also, the PHY will not advertise those modes that have been explicitly
disabled using the following media options.
.It 10baseT/UTP
-Set 10Mbps operation
+Set 10Mbps operation.
.It 100baseTX
-Set 100Mbps (Fast Ethernet) operation
+Set 100Mbps (Fast Ethernet) operation.
.It 10base5/AUI
Enable AUI/BNC interface (useful only with the built-in PHY).
.El
@@ -94,7 +94,7 @@ The
driver supports the following media options:
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
.It full-duplex
-Force full duplex operation
+Force full duplex operation.
.It half-duplex
Force half duplex operation.
.It hw-loopback
diff --git a/share/man/man4/tws.4 b/share/man/man4/tws.4
index 9ce154e..3f2ab66 100644
--- a/share/man/man4/tws.4
+++ b/share/man/man4/tws.4
@@ -74,13 +74,13 @@ prompt before booting the kernel or stored in
.Xr loader.conf 5 .
.Bl -tag -width "hw.tws.use_32bit_sgls"
.It Va hw.tws.cam_depth
-The maximium queued CAM SIM requests for one controller.
+The maximum queued CAM SIM requests for one controller.
The default value is 256.
.It Va hw.tws.enable_msi
This tunable enables MSI support on the controller if set to a non-zero value.
The default value is 0.
.It Va hw.tws.queue_depth
-The maximium queued requests for one controller.
+The maximum queued requests for one controller.
.It Va hw.tws.use_32bit_sgls
Limit the driver to use only 32-bit SG elements regardless whether the operating
system is running in 64-bit mode.
diff --git a/share/man/man4/uhso.4 b/share/man/man4/uhso.4
index 26d169b..cc2e9ae 100644
--- a/share/man/man4/uhso.4
+++ b/share/man/man4/uhso.4
@@ -100,7 +100,7 @@ mode to modem mode.
This behavior can be disabled by setting
.Va hw.usb.uhso.auto_switch
to 0 using
-.Xr sysctl 8
+.Xr sysctl 8 .
.Sh FILES
.Bl -tag -width "XXXXXX"
.It Pa /dev/cuaU?.?
diff --git a/share/man/man4/ulpt.4 b/share/man/man4/ulpt.4
index cd92bfd..cd3b300 100644
--- a/share/man/man4/ulpt.4
+++ b/share/man/man4/ulpt.4
@@ -56,8 +56,8 @@ driver provides support for USB printers that follow the printer
bi- or uni-directional protocol.
The bits in the minor number select various features of the driver.
.Bl -column "Minor Bit" "Functionxxxxxxxxxxxxxxxxxxxxxxxxxxxx" -offset indent
-.Em "Minor Bit Function"
-64 "Do not initialize (reset) the device on the port."
+.It Em "Minor Bit" Ta Em "Function"
+.It "64" Ta "Do not initialize (reset) the device on the port."
.El
.Pp
Some printers cannot handle the reset on open; in case of problems try the
diff --git a/share/man/man4/umcs.4 b/share/man/man4/umcs.4
index 8ccd2ca..fc96ad2 100644
--- a/share/man/man4/umcs.4
+++ b/share/man/man4/umcs.4
@@ -68,7 +68,7 @@ driver which makes it behave like a
Different ports on device are presented as sub-units, like
.Pa /dev/ttyU0.1
and
-.Pa /dev/ttyU0.2
+.Pa /dev/ttyU0.2 .
.Sh HARDWARE
The
.Nm
diff --git a/share/man/man4/usb.4 b/share/man/man4/usb.4
index f3f8104..d3a236f 100644
--- a/share/man/man4/usb.4
+++ b/share/man/man4/usb.4
@@ -58,7 +58,7 @@ devices in host and device side mode.
The
.Nm
driver has three layers:
-.Bl -tag
+.Bl -tag -width 6n -offset indent
.It USB Controller (Bus)
.It USB Device
.It USB Driver
@@ -85,7 +85,7 @@ The
.Tn USB
is a system where external devices can be connected to a PC.
The most common USB speeds are:
-.Bl -tag
+.Bl -tag -width 6n -offset indent
.It Low Speed (1.5MBit/sec)
.It Full Speed (12MBit/sec)
.It High Speed (480MBit/sec)
diff --git a/share/man/man4/uslcom.4 b/share/man/man4/uslcom.4
index a2a2dcc..14c78ff 100644
--- a/share/man/man4/uslcom.4
+++ b/share/man/man4/uslcom.4
@@ -41,7 +41,7 @@ uslcom_load="YES"
.Sh DESCRIPTION
The
.Nm
-driver supports Silicon Laboratories CP2101/CP2102 based serial adapters.
+driver supports Silicon Laboratories CP2101/CP2102 based USB serial adapters.
.Sh HARDWARE
The following devices should work with the
.Nm
diff --git a/share/man/man4/vge.4 b/share/man/man4/vge.4
index 5d48850..f8fd8f7 100644
--- a/share/man/man4/vge.4
+++ b/share/man/man4/vge.4
@@ -177,7 +177,7 @@ tunables:
Maximum number of time to delay interrupts.
The valid range is 0 to 5100 in units of 1us, the default is
150 (150us).
-The resolution of of timer is about 20us so finer tuning than
+The resolution of timer is about 20us so finer tuning than
20us wouldn't be available.
The interface should be brought down and up again before a change
takes effect.
diff --git a/share/man/man4/vlan.4 b/share/man/man4/vlan.4
index 4ef65cb..4717d2a 100644
--- a/share/man/man4/vlan.4
+++ b/share/man/man4/vlan.4
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd October 25, 2011
+.Dd June 4, 2012
.Dt VLAN 4
.Os
.Sh NAME
@@ -33,7 +33,7 @@
.Nd "IEEE 802.1Q VLAN network interface"
.Sh SYNOPSIS
To compile this driver into the kernel,
-place the following lines in your
+place the following line in your
kernel configuration file:
.Bd -ragged -offset indent
.Cd "device vlan"
@@ -79,16 +79,16 @@ to a properly configured switch port.
The VLAN tag should match one of those set up in the switched
network.
.Pp
-Initially
.Nm
-assumes the same minimum length for tagged and untagged frames.
-This mode is selected by the
+initially assumes the same minimum length for tagged and untagged frames.
+This mode is selected by setting the
.Xr sysctl 8
variable
.Va net.link.vlan.soft_pad
-set to 0 (default).
-However, there are network devices that fail to adjust frame length,
-should it fall below the allowed minimum due to untagging.
+to 0
+.Pq default .
+However, there are network devices that fail to adjust frame length
+when it falls below the allowed minimum due to untagging.
Such devices should be able to interoperate with
.Nm
after changing the value of
@@ -97,7 +97,7 @@ to 1.
In the latter mode,
.Nm
will pad short frames before tagging them
-so that their length stays not less than the minimum value
+so that their length is not less than the minimum value
after untagging by the non-compliant devices.
.Sh HARDWARE
The
@@ -111,7 +111,7 @@ receive and transmit long frames (up to 1522 bytes including an Ethernet
header and FCS).
The capabilities may be user-controlled by the respective parameters to
.Xr ifconfig 8 ,
-.Cm vlanhwtag
+.Cm vlanhwtag ,
and
.Cm vlanmtu .
However, a physical interface is not obliged to react to them:
@@ -119,8 +119,8 @@ It may have either capability enabled permanently without
a way to turn it off.
The whole issue is very specific to a particular device and its driver.
.Pp
-By now, the list of physical interfaces able of full VLAN processing
-in the hardware is limited to the following devices:
+At present, these devices are capable of full VLAN processing
+in hardware:
.Xr ae 4 ,
.Xr age 4 ,
.Xr alc 4 ,
@@ -146,11 +146,10 @@ in the hardware is limited to the following devices:
and
.Xr vge 4 .
.Pp
-The rest of the Ethernet interfaces can run
-VLANs using software emulation in the
+Other Ethernet interfaces can run VLANs using software emulation in the
.Nm
driver.
-However, some of them lack the capability
+However, some lack the capability
of transmitting and receiving long frames.
Assigning such an interface as the parent to
.Nm
@@ -163,9 +162,8 @@ connectivity problems due to massive, inadequate
.Xr icmp 4
filtering that breaks the Path MTU Discovery mechanism.
.Pp
-The following interfaces support long frames for
-.Nm
-natively:
+These interfaces natively support long frames for
+.Nm :
.Xr axe 4 ,
.Xr bfe 4 ,
.Xr cas 4 ,
@@ -198,7 +196,7 @@ for
use and calculates the appropriate frame MTU based on the
capabilities of the parent interface.
Some other interfaces not listed above may handle long frames,
-but they do not advertise this ability of theirs.
+but they do not advertise this ability.
The MTU setting on
.Nm
can be corrected manually if used in conjunction with such a parent interface.
diff --git a/share/man/man4/vr.4 b/share/man/man4/vr.4
index cd49f4b..1390cc9 100644
--- a/share/man/man4/vr.4
+++ b/share/man/man4/vr.4
@@ -109,7 +109,7 @@ The
driver supports the following media options:
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
.It full-duplex
-Force full duplex operation
+Force full duplex operation.
.It half-duplex
Force half duplex operation.
.El
diff --git a/share/man/man4/watchdog.4 b/share/man/man4/watchdog.4
index b0a52b1..4d953d6 100644
--- a/share/man/man4/watchdog.4
+++ b/share/man/man4/watchdog.4
@@ -38,6 +38,7 @@ The
.Nm
facility is used for controlling hardware and software watchdogs.
.Pp
+The device
.Pa /dev/fido
responds to a single
.Xr ioctl 2
diff --git a/share/man/man4/wb.4 b/share/man/man4/wb.4
index 038af89..22a6706 100644
--- a/share/man/man4/wb.4
+++ b/share/man/man4/wb.4
@@ -108,7 +108,7 @@ The
driver supports the following media options:
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
.It full-duplex
-Force full duplex operation
+Force full duplex operation.
.It half-duplex
Force half duplex operation.
.El
diff --git a/share/man/man4/witness.4 b/share/man/man4/witness.4
index c0014fa..ffd9f8f 100644
--- a/share/man/man4/witness.4
+++ b/share/man/man4/witness.4
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd February 18, 2001
+.Dd May 30, 2012
.Dt WITNESS 4
.Os
.Sh NAME
@@ -52,11 +52,8 @@ violation occurs.
The
.Nm
code also checks various other conditions such as verifying that one
-does not recurse on a non-recursive lock.
-For sleep locks,
-.Nm
-verifies that a new process would not be switched to when a lock is released
-or a lock is blocked on during an acquire while any spin locks are held.
+does not recurse on a non-recursive lock,
+or attempt an upgrade on a shared lock held by another thread.
If any of these checks fail, then the kernel will panic.
.Pp
The flag that controls whether or not the kernel debugger is entered when a
@@ -97,7 +94,7 @@ specifies the level of witness involvement in the system.
A value of 1 specifies that witness is enabled.
A value of 0 specifies that witness is disabled, but that can be enabled
again. This will maintain a small amount of overhead in the system.
-A value of -1 specifies that witness is disabled permanently and that
+A value of -1 specifies that witness is disabled permanently and
cannot be enabled again.
The sysctl
.Va debug.witness.watch
@@ -114,10 +111,22 @@ and
.Xr ddb 4
are compiled into the kernel:
.Bl -ohang
-.It Ic show locks
-Outputs the list of locks held by the current thread to the kernel console
+.It Ic show locks Op thread
+Outputs the list of locks held by a thread to the kernel console
along with the filename and line number at which each lock was last acquired
-by this thread.
+by the thread.
+The optional
+.Ar thread
+argument may be either a TID,
+PID,
+or pointer to a thread structure.
+If
+.Ar thread
+is not specified,
+then the locks held by the current thread are displayed.
+.It Ic show all locks
+Outputs the list of locks held by all threads in the system to the
+kernel console.
.It Ic show witness
Dump the current order list to the kernel console.
The code first displays the lock order tree for all of the sleep locks.
@@ -136,9 +145,3 @@ code first appeared in
.Bsx 5.0
and was imported from there into
.Fx 5.0 .
-.Sh BUGS
-The
-.Nm
-code currently does not handle recursion of shared
-.Xr sx 9
-locks properly.
diff --git a/share/man/man4/wpi.4 b/share/man/man4/wpi.4
index efcfdba..f1bc15e 100644
--- a/share/man/man4/wpi.4
+++ b/share/man/man4/wpi.4
@@ -56,7 +56,7 @@ The
.Nm
driver provides support for the
.Tn Intel
-3945ABG Wireless network adapter
+3945ABG Wireless network adapter.
.Nm
supports
.Cm station ,
@@ -124,7 +124,7 @@ Data transmission is not possible in this state.
.Xr wlan_tkip 4 ,
.Xr wlan_wep 4 ,
.Xr ifconfig 8 ,
-.Xr wpa_supplicant 8 .
+.Xr wpa_supplicant 8
.Sh AUTHORS
.An -nosplit
The original
diff --git a/share/man/man4/xl.4 b/share/man/man4/xl.4
index 9c8e8b0..d10d270 100644
--- a/share/man/man4/xl.4
+++ b/share/man/man4/xl.4
@@ -115,7 +115,7 @@ The
driver supports the following media options:
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
.It full-duplex
-Force full duplex operation
+Force full duplex operation.
.It half-duplex
Force half duplex operation.
.El
diff --git a/share/man/man4/xnb.4 b/share/man/man4/xnb.4
index d4ebae8..9c65636 100644
--- a/share/man/man4/xnb.4
+++ b/share/man/man4/xnb.4
@@ -83,7 +83,7 @@ get traffic statistics.
Runs a builtin suite of unit tests and displays the results.
Does not affect the operation of the driver in any way.
Note that the test suite simulates error conditions; this will result in
-error messages being printed to the system system log.
+error messages being printed to the system log.
.El
.Sh SEE ALSO
.Xr arp 4 ,
@@ -104,7 +104,7 @@ driver was written by
.Aq alans@spectralogic.com
and
.An John Suykerbuyk
-.Aq johns@spectralogic.com
+.Aq johns@spectralogic.com .
.Sh CAVEATS
Packets sent through Xennet pass over shared memory, so the protocol includes
no form of link-layer checksum or CRC.
@@ -127,7 +127,7 @@ to the OS.
.Pp
For this reason, it is recommended that if
.Nm
-is bridged to a physcal interface, then transmit checksum offloading should be
+is bridged to a physical interface, then transmit checksum offloading should be
disabled on the netfront.
The Xennet protocol does not have any mechanism for the netback to request
the netfront to do this; the operator must do it manually.
diff --git a/share/man/man5/Makefile b/share/man/man5/Makefile
index b05c1eb..c7a3c59 100644
--- a/share/man/man5/Makefile
+++ b/share/man/man5/Makefile
@@ -85,6 +85,10 @@ MLINKS+=resolver.5 resolv.conf.5
MAN+= hesiod.conf.5
.endif
+.if ${MK_NAND} != "no"
+MAN+= nandfs.5
+.endif
+
.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386"
_boot.config.5= boot.config.5
.endif
diff --git a/share/man/man5/devfs.conf.5 b/share/man/man5/devfs.conf.5
index 9d83726..f459696 100644
--- a/share/man/man5/devfs.conf.5
+++ b/share/man/man5/devfs.conf.5
@@ -91,7 +91,7 @@ as explained in
.Xr chmod 1 .
.El
.Sh FILES
-.Bl -tag -compact
+.Bl -tag -compact -width Pa
.It Pa /etc/devfs.conf
.It Pa /usr/share/examples/etc/devfs.conf
.El
diff --git a/share/man/man5/devfs.rules.5 b/share/man/man5/devfs.rules.5
index 8a7b3d6..603189e 100644
--- a/share/man/man5/devfs.rules.5
+++ b/share/man/man5/devfs.rules.5
@@ -82,7 +82,7 @@ file:
devfs_system_ruleset="localrules"
.Ed
.Sh FILES
-.Bl -tag -compact
+.Bl -tag -compact -width Pa
.It Pa /etc/defaults/devfs.rules
Default
.Nm
diff --git a/share/man/man5/device.hints.5 b/share/man/man5/device.hints.5
index 9dcaccd..16d4627 100644
--- a/share/man/man5/device.hints.5
+++ b/share/man/man5/device.hints.5
@@ -162,7 +162,7 @@ hint.acpi.0.disabled="1"
.Xr kenv 1 ,
.Xr loader.conf 5 ,
.Xr loader 8 ,
-.Xr resource_int_value 9 .
+.Xr resource_int_value 9
.Sh HISTORY
The
.Nm
diff --git a/share/man/man5/libmap.conf.5 b/share/man/man5/libmap.conf.5
index 6959ce2..784d5d0 100644
--- a/share/man/man5/libmap.conf.5
+++ b/share/man/man5/libmap.conf.5
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd January 31, 2004
+.Dd April 28, 2012
.Dt LIBMAP.CONF 5
.Os
.Sh NAME
@@ -43,6 +43,27 @@ left hand side containing the mapping candidate and the right hand
side containing the mapping.
Dependencies are matched against candidates and replaced with the mappings.
.Pp
+Two special directives are available:
+.Bl -tag -width indent
+.It Cm include Ar file
+Parse the contents of
+.Ar file
+before continuing with the current file.
+.It Cm includedir Ar dir
+Parse the contents of every file in
+.Ar dir
+that ends in
+.Pa .conf
+before continuing with the current file.
+.El
+.Pp
+Any file or directory encountered while processing
+.Cm include
+or
+.Cm includedir
+directives will be parsed exactly once, even if it is encountered
+multiple times.
+.Pp
Constrained mappings may be specified by enclosing the name of the
executable or library in brackets.
All mappings following a constraint will only be evaluated for that constraint.
diff --git a/share/man/man5/make.conf.5 b/share/man/man5/make.conf.5
index d9967ea..1f5e390 100644
--- a/share/man/man5/make.conf.5
+++ b/share/man/man5/make.conf.5
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd December 11, 2011
+.Dd May 2, 2012
.Dt MAKE.CONF 5
.Os
.Sh NAME
@@ -318,7 +318,7 @@ The hostname of the sup server to use when doing
.It Va SUP_UPDATE
.Pq Vt bool
Set this to use
-.Xr cvsup 1
+.Xr csup 1
to update your
.Pa src , ports , doc
and
@@ -575,7 +575,7 @@ files at build time.
The value should include the full path to the
.Pa .mc
file(s), e.g.,
-.Pa /etc/mail/foo.mc
+.Pa /etc/mail/foo.mc ,
.Pa /etc/mail/bar.mc .
.It Va SENDMAIL_ALIASES
.Pq Vt str
diff --git a/share/man/man5/nandfs.5 b/share/man/man5/nandfs.5
new file mode 100644
index 0000000..2ef3259
--- /dev/null
+++ b/share/man/man5/nandfs.5
@@ -0,0 +1,128 @@
+.\"
+.\" Copyright (c) 2010 Semihalf
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd Nov 11, 2010
+.Dt NANDFS 5
+.Os
+.Sh NAME
+.Nm nandfs
+.Nd NAND Flash file system
+.Sh SYNOPSIS
+To compile support for the
+.Nm ,
+place the following in your kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "options NANDFS"
+.Ed
+.Pp
+Even though the NAND FS can be used with any storage media, it has been
+optimized and designed towards NAND Flash devices, so typically the following
+driver is used:
+.Bd -ragged -offset indent
+.Cd "device nand"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver enables
+.Fx
+with support for NAND-oriented file system.
+.Pp
+It is a log-structured style file system with the following major features and
+characteristics:
+.Bl -bullet
+.It
+Hard links, symbolic links support
+.It
+Block journaling
+.It
+Copy-On-Write
+.It
+Snapshots (continuous, taken automatically, simultaneously mountable)
+.It
+Quick crash recovery at mount time
+.It
+64-bit data structures; supports many files, large files and volumes
+.It
+POSIX file permissions
+.It
+Checksum / ECC
+.El
+.Sh EXAMPLES
+The most common usage is mounting the file system:
+.Pp
+.Dl "mount -t nandfs /dev/<gnandN> /mnt"
+.Pp
+or:
+.Dl "mount_nandfs /dev/<gnandN> /mnt"
+.Pp
+where
+.Ar gnandN
+is the GEOM device representing a Flash partition (slice) containing the
+.Nm
+structure, and
+.Pa /mnt
+is a mount point.
+.Pp
+It is possible to define an entry in
+.Pa /etc/fstab
+for the
+.Nm :
+.Bd -literal
+/dev/gnand0 /flash nandfs rw 0 0
+.Ed
+.Pp
+This will mount a
+.Nm
+partition at the specified mount point during system boot.
+.Sh SEE ALSO
+.Xr gnand 4 ,
+.Xr nand 4 ,
+.Xr mount_nandfs 8 ,
+.Xr nandfs 8 ,
+.Xr nandsim 8 ,
+.Xr nandtool 8 ,
+.Xr umount_nandfs 8
+.Sh HISTORY
+The NAND FS concepts are based on NILFS principles and initial implementation
+was derived from early NILFS NetBSD code (read only). Since then the NAND FS
+code diverged significantly and is by no means compatible with NILFS.
+.Pp
+The NAND Flash file system first appeared in
+.Fx 10.0 .
+.Sh AUTHOR
+The NAND FS was written by
+.An Grzegorz Bernacki with the help of
+.An Mateusz Guzik ,
+based on the NetBSD code created by
+.An Reinoud Zandijk .
+Additional help and support by
+.An Lukasz Plachno ,
+.An Jan Sieka and
+.An Lukasz Wojcik .
+This manual page was written by
+.An Rafal Jaworowski .
diff --git a/share/man/man5/nsmb.conf.5 b/share/man/man5/nsmb.conf.5
index 2548a05..30fbecd 100644
--- a/share/man/man5/nsmb.conf.5
+++ b/share/man/man5/nsmb.conf.5
@@ -96,7 +96,6 @@ Possible keywords may include:
.Bl -tag -width ".Pa /etc/nsmb.conf"
.It Pa /etc/nsmb.conf
The default remote mount-point configuration file.
-.Pa "~/nsmb.conf"
.It Pa ~/nsmb.conf
The user specific remote mount-point configuration file.
.El
diff --git a/share/man/man5/passwd.5 b/share/man/man5/passwd.5
index 228c4e3..c49b0f7 100644
--- a/share/man/man5/passwd.5
+++ b/share/man/man5/passwd.5
@@ -35,7 +35,7 @@
.\" From: @(#)passwd.5 8.1 (Berkeley) 6/5/93
.\" $FreeBSD$
.\"
-.Dd May 8, 2007
+.Dd June 23, 2012
.Dt PASSWD 5
.Os
.Sh NAME
@@ -203,7 +203,8 @@ field is the number of seconds from the epoch,
.Dv UTC ,
until the
password for the account must be changed.
-This field may be left empty to turn off the password aging feature.
+This field may be left empty to turn off the password aging feature;
+a value of zero is equivalent to leaving the field empty.
.Pp
The
.Ar expire
@@ -211,7 +212,8 @@ field is the number of seconds from the epoch,
.Dv UTC ,
until the
account expires.
-This field may be left empty to turn off the account aging feature.
+This field may be left empty to turn off the account aging feature;
+a value of zero is equivalent to leaving the field empty.
.Pp
The
.Ar gecos
@@ -271,7 +273,8 @@ as it is done for system accounts,
is to set its
.Ar shell
to
-.Xr nologin 8 .
+.Pa /sbin/nologin
+.Pq see Xr nologin 8 .
.Sh HESIOD SUPPORT
If
.Sq Li dns
@@ -363,7 +366,7 @@ fields, the specified numbers will override the information retrieved
from the Hesiod domain or the
.Tn NIS
maps.
-As well, if the
+Likewise, if the
.Ar gecos ,
.Ar dir
or
@@ -399,7 +402,8 @@ The additional fields
.Ar change
and
.Ar expire
-are added, but are turned off by default.
+are added, but are turned off by default
+.Pq setting these fields to zero is equivalent to leaving them blank .
Class is currently not implemented, but change and expire are; to set them,
use the current day in seconds from the epoch + whatever number of seconds
of offset you want.
diff --git a/share/man/man5/periodic.conf.5 b/share/man/man5/periodic.conf.5
index 4ab009c..1f9eec8 100644
--- a/share/man/man5/periodic.conf.5
+++ b/share/man/man5/periodic.conf.5
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd February 7, 2012
+.Dd May 30, 2012
.Dt PERIODIC.CONF 5
.Os
.Sh NAME
@@ -504,6 +504,12 @@ Set to
.Dq Li YES
to compare the modes and modification times of setuid executables with
the previous day's values.
+.It Va daily_status_security_chkportsum_enable
+.Pq Vt bool
+Set to
+.Dq Li YES
+to verify checksums of all installed packages against the known checksums in
+.Pa /var/db/pkg .
.It Va daily_status_security_neggrpperm_enable
.Pq Vt bool
Set to
diff --git a/share/man/man5/portsnap.conf.5 b/share/man/man5/portsnap.conf.5
index b936d98..90225b2 100644
--- a/share/man/man5/portsnap.conf.5
+++ b/share/man/man5/portsnap.conf.5
@@ -47,7 +47,8 @@ specifies the source from which snapshots should be fetched.
This is equivalent to the
.Fl s Ar server
option to
-.Xr portsnap 8 , and will be ignored if the command-line
+.Xr portsnap 8 ,
+and will be ignored if the command-line
option is used.
.Pp
A line of the form
@@ -58,7 +59,8 @@ belonging to an RSA keypair which is trusted to sign updates.
This is equivalent to the
.Fl k Ar KEY
option to
-.Xr portsnap 8 , and will be ignored if the command-line
+.Xr portsnap 8 ,
+and will be ignored if the command-line
option is used.
.Pp
A line of the form
@@ -68,7 +70,8 @@ snapshot of the ports tree.
This is equivalent to the
.Fl d Ar workdir
option to
-.Xr portsnap 8 , and will be ignored if the command-line option
+.Xr portsnap 8 ,
+and will be ignored if the command-line option
is used.
.Pp
A line of the form
@@ -82,7 +85,8 @@ commands.
This is equivalent to the
.Fl p Ar portsdir
option to
-.Xr portsnap 8 , and will be ignored if the command-line option
+.Xr portsnap 8 ,
+and will be ignored if the command-line option
is used.
.Pp
If more than one line of any of the above forms is included in
diff --git a/share/man/man5/rc.conf.5 b/share/man/man5/rc.conf.5
index a45ee01..02e1cb6 100644
--- a/share/man/man5/rc.conf.5
+++ b/share/man/man5/rc.conf.5
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd February 27, 2012
+.Dd July 9, 2012
.Dt RC.CONF 5
.Os
.Sh NAME
@@ -386,7 +386,7 @@ is used to set the hostname via DHCP,
this variable should be set to an empty string.
If this value remains unset when the system is done booting
your console login will display the default hostname of
-.Dq Amnesiac.
+.Dq Amnesiac .
.It Va nisdomainname
.Pq Vt str
The NIS domain name of this host, or
@@ -501,6 +501,16 @@ to enable firewall event logging.
This is equivalent to the
.Dv IPFIREWALL_VERBOSE
kernel option.
+.It Va firewall_logif
+.Pq Vt bool
+Set to
+.Dq Li YES
+to create pseudo interface
+.Li ipfw0
+for logging.
+For more details, see
+.Xr ipfw 8
+manual page.
.It Va firewall_flags
.Pq Vt str
Flags passed to
@@ -1299,6 +1309,7 @@ ifconfig_ed0_name="net0"
ifconfig_net0="inet 192.0.2.1 netmask 0xffffff00"
.Ed
.It Va ipv6_enable
+.Pq Vt bool
This variable is deprecated.
Use
.Va ifconfig_ Ns Ao Ar interface Ac Ns _ipv6
@@ -1306,7 +1317,6 @@ and
.Va ipv6_activate_all_interfaces
if necessary.
.Pp
-.Pq Vt bool
If the variable is
.Dq Li YES ,
.Dq Li inet6 accept_rtadv
@@ -1317,12 +1327,12 @@ and the
is defined as
.Dq Li YES .
.It Va ipv6_prefer
+.Pq Vt bool
This variable is deprecated.
Use
.Va ip6addrctl_policy
instead.
.Pp
-.Pq Vt bool
If the variable is
.Dq Li YES ,
the default address selection policy table set by
@@ -2086,6 +2096,19 @@ If
is set to
.Dq Li YES
this is the path to Kerberos 5 Password-Changing Daemon.
+.It Va kfd_enable
+.Pq Vt bool
+Set to
+.Dq Li YES
+to start
+.Xr kfd 8 ,
+the Kerberos 5 ticket forwarding daemon, at the boot time.
+.It Va kfd_program
+.Pq Vt str
+Path to
+.Xr kfd 8
+(default
+.Pa /usr/libexec/kfd ) .
.It Va rwhod_enable
.Pq Vt bool
If set to
@@ -3273,9 +3296,10 @@ is enabled, and a
daemon is started for a non-default port, the
.Va "moused_" Ns Ar XXX Ns Va "_flags"
set of options has precedence over and replaces the default
-.Va moused_flags (where
+.Va moused_flags
+(where
.Ar XXX
-is the name of the non-default port, i.e.\&
+is the name of the non-default port, i.e.,\&
.Ar ums0 ) .
By setting
.Va "moused_" Ns Ar XXX Ns Va "_flags"
diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5
index e209a26..789f6cf 100644
--- a/share/man/man5/src.conf.5
+++ b/share/man/man5/src.conf.5
@@ -1,7 +1,7 @@
.\" DO NOT EDIT-- this file is automatically generated.
-.\" from FreeBSD: head/tools/build/options/makeman 221733 2011-05-10 13:01:11Z ru
+.\" from FreeBSD: head/tools/build/options/makeman 236279 2012-05-30 02:37:20Z gjb
.\" $FreeBSD$
-.Dd March 25, 2012
+.Dd July 2, 2012
.Dt SRC.CONF 5
.Os
.Sh NAME
@@ -207,9 +207,9 @@ and
Set to enable the http statistics interface for named.
This requires ports/textproc/libxml2 to be installed in /usr/local.
.It Va WITHOUT_BINUTILS
-.\" from FreeBSD: head/tools/build/options/WITHOUT_BINUTILS 222090 2011-05-19 05:13:25Z imp
+.\" from FreeBSD: head/tools/build/options/WITHOUT_BINUTILS 235342 2012-05-12 16:12:36Z gjb
Set to not install binutils (as, c++-filt, gconv, gnu-ar, gnu-randlib,
-ld, nm, objcopy, objdump, readelf, size and strip)
+ld, nm, objcopy, objdump, readelf, size and strip).
.Bf -symbolic
The option does not generally work for build targets, unless some alternative
toolchain is enabled.
@@ -289,14 +289,12 @@ amd64/amd64, i386/i386, pc98/i386, powerpc/powerpc and powerpc/powerpc64.
.\" from FreeBSD: head/tools/build/options/WITH_CLANG_EXTRAS 231057 2012-02-05 23:56:22Z dim
Set to build additional clang and llvm tools, such as bugpoint.
.It Va WITH_CLANG_IS_CC
-.\" from FreeBSD: head/tools/build/options/WITH_CLANG_IS_CC 232322 2012-02-29 22:58:51Z dim
+.\" from FreeBSD: head/tools/build/options/WITH_CLANG_IS_CC 235342 2012-05-12 16:12:36Z gjb
Set to install the Clang C/C++ compiler as
-.Pa /usr/bin/cc
-,
+.Pa /usr/bin/cc ,
.Pa /usr/bin/c++
and
-.Pa /usr/bin/cpp
-.
+.Pa /usr/bin/cpp .
.It Va WITHOUT_CPP
.\" from FreeBSD: head/tools/build/options/WITHOUT_CPP 156932 2006-03-21 07:50:50Z ru
Set to not build
@@ -367,6 +365,11 @@ Set this if you do not want to link
and
.Pa /sbin
dynamically.
+.It Va WITHOUT_ED_CRYPTO
+.\" from FreeBSD: head/tools/build/options/WITHOUT_ED_CRYPTO 235660 2012-05-19 20:05:27Z marcel
+Set to build
+.Xr ed 1
+without support for encryption/decryption.
.It Va WITHOUT_EXAMPLES
.\" from FreeBSD: head/tools/build/options/WITHOUT_EXAMPLES 156938 2006-03-21 09:06:24Z ru
Set to avoid installing examples to
@@ -434,6 +437,9 @@ When set, it also enforces the following options:
.It
.Va WITHOUT_GNU_SUPPORT
.El
+.It Va WITH_GNU_SORT
+.\" from FreeBSD: head/tools/build/options/WITH_GNU_SORT 237629 2012-06-27 05:59:01Z gabor
+Install GNU-licensed sort as 'sort' instead of BSD sort.
.It Va WITHOUT_GNU_SUPPORT
.\" from FreeBSD: head/tools/build/options/WITHOUT_GNU_SUPPORT 156932 2006-03-21 07:50:50Z ru
Set to build some programs without optional GNU support.
@@ -508,6 +514,16 @@ Set this if you do not want to install optional libraries.
For example when creating a
.Xr nanobsd 8
image.
+.It Va WITH_INSTALL_AS_USER
+.\" from FreeBSD: head/tools/build/options/WITH_INSTALL_AS_USER 238021 2012-07-02 20:24:01Z marcel
+Set to make install targets succeed for non-root users by installing
+files with owner and group attributes set to that of the user running
+the
+.Xr make 1
+command.
+The user still has to set the
+.Va DESTDIR
+variable to point to a directory where the user has write permissions.
.It Va WITHOUT_IPFILTER
.\" from FreeBSD: head/tools/build/options/WITHOUT_IPFILTER 156932 2006-03-21 07:50:50Z ru
Set to not build IP Filter package.
@@ -666,6 +682,11 @@ and related programs.
Set to not build
.Xr lpr 1
and related programs.
+.It Va WITHOUT_LS_COLORS
+.\" from FreeBSD: head/tools/build/options/WITHOUT_LS_COLORS 235660 2012-05-19 20:05:27Z marcel
+Set to build
+.Xr ls 1
+without support for colors to distinguish file types.
.It Va WITHOUT_MAIL
.\" from FreeBSD: head/tools/build/options/WITHOUT_MAIL 183242 2008-09-21 22:02:26Z sam
Set to not build any mail support (MUA or MTA).
@@ -708,6 +729,9 @@ Set to not build utilities for manual pages,
.Xr whatis 1 ,
.Xr manctl 8 ,
and related support files.
+.It Va WITH_NAND
+.\" from FreeBSD: head/tools/build/options/WITH_NAND 235537 2012-05-17 10:11:18Z gber
+Set to build the NAND Flash components.
.It Va WITHOUT_NCP
.\" from FreeBSD: head/tools/build/options/WITHOUT_NCP 156932 2006-03-21 07:50:50Z ru
Set to not build programs, libraries, and kernel modules
@@ -825,6 +849,11 @@ When set, it also enforces the following options:
.It
.Va WITHOUT_AUTHPF
.El
+.It Va WITHOUT_PKGBOOTSTRAP
+.\" from FreeBSD: head/tools/build/options/WITHOUT_PKGBOOTSTRAP 238023 2012-07-02 20:26:11Z marcel
+Set to not build
+.Xr pkg 1
+bootstrap tool
.It Va WITHOUT_PKGTOOLS
.\" from FreeBSD: head/tools/build/options/WITHOUT_PKGTOOLS 183242 2008-09-21 22:02:26Z sam
Set to not build
@@ -891,6 +920,13 @@ as a set-user-ID root program.
Set to not build the
.Bx 4.4
legacy docs.
+.It Va WITH_SHARED_TOOLCHAIN
+.\" from FreeBSD: head/tools/build/options/WITH_SHARED_TOOLCHAIN 235342 2012-05-12 16:12:36Z gjb
+Set to build the toolchain binaries shared.
+The set includes
+.Xr cc 1 ,
+.Xr make 1
+and necessary utilities like assembler, linker and library archive manager.
.It Va WITHOUT_SOURCELESS
.\" from FreeBSD: head/tools/build/options/WITHOUT_SOURCELESS 230972 2012-02-04 00:54:43Z rmh
Set to not build kernel modules that include sourceless code (either microcode or native code for host CPU).
@@ -1007,11 +1043,11 @@ protocols (usable only via 802.1X).
.\" from FreeBSD: head/tools/build/options/WITHOUT_ZFS 168409 2007-04-06 02:13:30Z pjd
Set to not build ZFS file system.
.It Va WITHOUT_ZONEINFO
-.\" from FreeBSD: head/tools/build/options/WITHOUT_ZONEINFO 171994 2007-08-27 20:01:08Z remko
-Set to not build the timezone database
+.\" from FreeBSD: head/tools/build/options/WITHOUT_ZONEINFO 235342 2012-05-12 16:12:36Z gjb
+Set to not build the timezone database.
.El
.Sh FILES
-.Bl -tag -compact
+.Bl -tag -compact -width Pa
.It Pa /etc/src.conf
.It Pa /usr/share/mk/bsd.own.mk
.El
diff --git a/share/man/man7/build.7 b/share/man/man7/build.7
index f168958..7cd8d91 100644
--- a/share/man/man7/build.7
+++ b/share/man/man7/build.7
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd September 29, 2011
+.Dd July 2, 2012
.Dt BUILD 7
.Os
.Sh NAME
@@ -39,6 +39,11 @@ normally
.Pa /usr/doc ,
and
.Pa /usr/ports .
+These directories may be initially empty or non-existent until updated with
+.Xr csup 1 ,
+.Xr svn 1 ,
+or
+.Xr portsnap 8 .
Directory
.Pa /usr/src
contains the
@@ -489,7 +494,7 @@ on built objects.
.It Va NO_SHARE
If set, the build does not descend into the
.Pa /usr/src/share
-subdirectory (i.e. manpages, locale data files, timezone data files and
+subdirectory (i.e., manpages, locale data files, timezone data files and
other
.Pa /usr/src/share
files will not be rebuild from their sources).
@@ -594,14 +599,17 @@ make TARGET=sparc64 DESTDIR=/clients/sparc64 installworld
.Ed
.Sh SEE ALSO
.Xr cc 1 ,
+.Xr csup 1 ,
.Xr install 1 ,
.Xr make 1 ,
+.Xr svn 1 ,
.Xr make.conf 5 ,
.Xr src.conf 5 ,
.Xr ports 7 ,
.Xr release 7 ,
.Xr config 8 ,
.Xr mergemaster 8 ,
+.Xr portsnap 8 ,
.Xr reboot 8 ,
.Xr shutdown 8
.Sh AUTHORS
diff --git a/share/man/man7/c99.7 b/share/man/man7/c99.7
index 8c7d5e2..e12d000 100644
--- a/share/man/man7/c99.7
+++ b/share/man/man7/c99.7
@@ -103,7 +103,7 @@ The ISO C standard was later extended with an amendment as
ISO/IEC 9899 AM1 in 1995.
This contained, for example, the wide-character support in wchar.h and
wctype.h.
-Two corregenda were also published: Technical Corrigendum 1 as
+Two corrigenda were also published: Technical Corrigendum 1 as
ISO/IEC 9899 TCOR1 in 1995 and Technical Corrigendum 2 as ISO/IEC 9899 TCOR1
in 1996.
The continuous development and growth made it necessary to work out a new
diff --git a/share/man/man7/development.7 b/share/man/man7/development.7
index af8db3a..ea7df38 100644
--- a/share/man/man7/development.7
+++ b/share/man/man7/development.7
@@ -23,7 +23,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd December 21, 2002
+.Dd May 2, 2012
.Dt DEVELOPMENT 7
.Os
.Sh NAME
@@ -89,7 +89,7 @@ I recommend a
partition of at least 5GB.
.Pp
On the master server, use
-.Xr cvsup 1 Pq Pa ports/net/cvsup
+.Xr csup 1
to automatically pull down and maintain
the
.Fx
@@ -108,23 +108,23 @@ The
job should look something like this (please randomize the time of
day!).
Note that you can use the
-.Xr cvsup 1
+.Xr csup 1
configuration file example directly from
.Pa /usr/share/examples
without modification by supplying appropriate arguments
to
-.Xr cvsup 1 .
+.Xr csup 1 .
.Bd -literal -offset 4n
-33 6 * * * /usr/local/bin/cvsup -g -r 20 -L 2 -h cvsup.freebsd.org /usr/share/examples/cvsup/cvs-supfile
+33 6 * * * /usr/bin/csup -r 20 -L 2 -h cvsup.freebsd.org /usr/share/examples/cvsup/cvs-supfile
.Ed
.Pp
Run the
-.Xr cvsup 1
+.Xr csup 1
manually the first time to pull down the archive.
It could take
all day depending on how fast your connection is!
You will run all
-.Xr cvsup 1
+.Xr csup 1
and
.Xr cvs 1
operations as
@@ -555,7 +555,7 @@ Since the main
tree is based on CVS, the former is convenient.
.Pp
First, you need to modify your
-.Xr cvsup 1
+.Xr csup 1
environment to avoid it modifying
the local changes you have committed to the repository.
It is important to remove the
@@ -568,7 +568,7 @@ subdirectory to your
.Pa refuse
file.
For more information, see
-.Xr cvsup 1 .
+.Xr csup 1 .
.Pp
The
.Fx
@@ -598,13 +598,13 @@ For more information on using CVS, see
.Pp
.Sy WARNING!
The
-.Xr cvsup 1
+.Xr csup 1
utility may blow away changes made on a local branch in
some situations.
This has been reported to occur when the master CVS repository is
directly manipulated or an RCS file is changed.
At this point,
-.Xr cvsup 1
+.Xr csup 1
notices that the client and server have entirely
different RCS files, so it does a full replace instead of trying to
send just deltas.
@@ -619,7 +619,7 @@ Bottom line is, if you value your local branch then you
should back it up before every update.
.Sh UPDATING VIA CVS
The advantage of using
-.Xr cvsup 1
+.Xr csup 1
to maintain an updated copy of the CVS
repository instead of using it to maintain source trees directly is that you
can then pick and choose when you bring your source tree (or pieces of your
diff --git a/share/man/man7/release.7 b/share/man/man7/release.7
index a725fc6..2a794c8 100644
--- a/share/man/man7/release.7
+++ b/share/man/man7/release.7
@@ -221,7 +221,7 @@ hardware guide, and installation instructions. Other documentation (e.g.
the Handbook) is built during the
.Cm base.txz
target invoked by
-.Cm packagesystem.
+.Cm packagesystem .
.El
.Sh ENVIRONMENT
Optional variables:
@@ -283,7 +283,7 @@ Typically, one only needs to set
.Va TARGET .
.El
.Sh FILES
-.Bl -tag -compact
+.Bl -tag -compact -width Pa
.It Pa /usr/doc/Makefile
.It Pa /usr/doc/share/mk/doc.project.mk
.It Pa /usr/ports/Mk/bsd.port.mk
diff --git a/share/man/man7/tuning.7 b/share/man/man7/tuning.7
index 76b3439..b859c28 100644
--- a/share/man/man7/tuning.7
+++ b/share/man/man7/tuning.7
@@ -23,7 +23,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd October 16, 2010
+.Dd May 11, 2012
.Dt TUNING 7
.Os
.Sh NAME
@@ -148,15 +148,15 @@ If you do not use ports all that much and do not intend to keep
system source
.Pq Pa /usr/src
on the machine, you can get away with
-a 1 gigabyte
+a 1 GB
.Pa /usr
partition.
However, if you install a lot of ports
(especially window managers and Linux-emulated binaries), we recommend
-at least a 2 gigabyte
+at least a 2 GB
.Pa /usr
and if you also intend to keep system source
-on the machine, we recommend a 3 gigabyte
+on the machine, we recommend a 3 GB
.Pa /usr .
Do not underestimate the
amount of space you will need in this partition, it can creep up and
@@ -218,22 +218,22 @@ and
.Em cylinders/group .
.Pp
.Fx
-performs best when using 8K or 16K file system block sizes.
-The default file system block size is 16K,
+performs best when using 16K or 32K file system block sizes.
+The default file system block size is 32K,
which provides best performance for most applications,
with the exception of those that perform random access on large files
(such as database server software).
Such applications tend to perform better with a smaller block size,
although modern disk characteristics are such that the performance
gain from using a smaller block size may not be worth consideration.
-Using a block size larger than 16K
+Using a block size larger than 32K
can cause fragmentation of the buffer cache and
lead to lower performance.
.Pp
The defaults may be unsuitable
for a file system that requires a very large number of i-nodes
or is intended to hold a large number of very small files.
-Such a file system should be created with an 8K or 4K block size.
+Such a file system should be created with an 4K, 8K, or 16K block size.
This also requires you to specify a smaller
fragment size.
We recommend always using a fragment size that is 1/8
@@ -256,13 +256,13 @@ Do not use this option
unless you are actually storing large files on the partition, because if you
overcompensate you can wind up with a file system that has lots of free
space remaining but cannot accommodate any more files.
-Using 32768, 65536, or 262144 bytes/i-node is recommended.
+Using 65536, 131072, or 262144 bytes/i-node is recommended.
You can go higher but
it will have only incremental effects on
.Xr fsck 8
recovery times.
For example,
-.Dq Li "newfs -i 32768 ..." .
+.Dq Li "newfs -i 65536 ..." .
.Pp
.Xr tunefs 8
may be used to further tune a file system.
@@ -447,7 +447,7 @@ the content of mapped buffer to the reader.
Increasing this value to a higher setting, such as `25165824' might
improve performance on systems where space for mapping pipe buffers
is quickly exhausted.
-This exhaustion is not fatal; however, and it will only cause pipes to
+This exhaustion is not fatal; however, and it will only cause pipes
to fall back to using double-copy.
.Pp
The
@@ -525,8 +525,8 @@ sysctl governs VFS read-ahead and is expressed as the number of blocks
to pre-read if the heuristics algorithm decides that the reads are
issued sequentially.
It is used by the UFS, ext2fs and msdosfs file systems.
-With the default UFS block size of 16 KiB, a setting of 32 will allow
-speculatively reading up to 512 KiB.
+With the default UFS block size of 32 KiB, a setting of 64 will allow
+speculatively reading up to 2 MiB.
This setting may be increased to get around disk I/O latencies, especially
where these latencies are large such as in virtual machine emulated
environments.
diff --git a/share/man/man8/picobsd.8 b/share/man/man8/picobsd.8
index 07373f6..f4c403e 100644
--- a/share/man/man8/picobsd.8
+++ b/share/man/man8/picobsd.8
@@ -54,7 +54,7 @@ The most important options for common operations are
.Fl src ,
.Fl init ,
.Fl n and
-.Fl v.
+.Fl v .
.Bl -tag -width indent
.\"
.It Fl -all_in_mfs
@@ -94,7 +94,10 @@ subtree as necessary to subsequently build
images.
.\"
.It Fl -iso
-Generate an ISO image, picobsd.iso, in addition to the disk image picobsd.bin
+Generate an ISO image,
+.Pa picobsd.iso ,
+in addition to the disk image
+.Pa picobsd.bin .
.\"
.It Fl -modules
Also build kernel modules.
diff --git a/share/man/man8/rc.8 b/share/man/man8/rc.8
index 56a33ce..a92c88b 100644
--- a/share/man/man8/rc.8
+++ b/share/man/man8/rc.8
@@ -253,7 +253,7 @@ The boot does not stop if such a script terminates with a non-zero status,
but a script can stop the boot if necessary by invoking the
.Fn stop_boot
function (from
-.Xr rc.subr 8 ).
+.Xr rc.subr 8 ) .
.El
.Pp
Each script should contain
@@ -452,7 +452,7 @@ before starting the daemon.
Following tradition, all startup files reside in
.Pa /etc .
.Sh FILES
-.Bl -tag -compact
+.Bl -tag -compact -width Pa
.It Pa /etc/rc
.It Pa /etc/rc.conf
.It Pa /etc/rc.conf.local
diff --git a/share/man/man9/BUF_ISLOCKED.9 b/share/man/man9/BUF_ISLOCKED.9
index d55f2f5..5970388 100644
--- a/share/man/man9/BUF_ISLOCKED.9
+++ b/share/man/man9/BUF_ISLOCKED.9
@@ -52,7 +52,7 @@ It can return:
.It Dv LK_EXCLUSIVE
An exclusive lock is held by curthread.
.It Dv LK_EXCLOTHER
-An exclusive lock is held by someone other than curthread
+An exclusive lock is held by someone other than curthread.
.It Dv LK_SHARED
A shared lock is held.
.It Li 0
diff --git a/share/man/man9/DB_COMMAND.9 b/share/man/man9/DB_COMMAND.9
index d452057..179f3f3 100644
--- a/share/man/man9/DB_COMMAND.9
+++ b/share/man/man9/DB_COMMAND.9
@@ -32,7 +32,7 @@
.Nm DB_COMMAND ,
.Nm DB_SHOW_COMMAND ,
.Nm DB_SHOW_ALL_COMMAND
-.Nd Extends the ddb command set.
+.Nd Extends the ddb command set
.Sh SYNOPSIS
.In ddb/ddb.h
.Fo DB_COMMAND
@@ -71,7 +71,7 @@ The general command syntax:
.Ar address Ns Op Li , Ns Ar count ,
translates into the following parameters for
.Fa command_function :
-.Bl -tag
+.Bl -tag -width Fa -offset indent
.It Fa addr
The address passed to the command as an argument.
.It Fa have_addr
diff --git a/share/man/man9/DECLARE_GEOM_CLASS.9 b/share/man/man9/DECLARE_GEOM_CLASS.9
index a47ea8e..01f074d 100644
--- a/share/man/man9/DECLARE_GEOM_CLASS.9
+++ b/share/man/man9/DECLARE_GEOM_CLASS.9
@@ -49,7 +49,7 @@ modules GEOM classes and it is the only official way for class registration.
The arguments to
.Fn DECLARE_GEOM_CLASS
are:
-.Bl -tag -offset indent
+.Bl -tag -offset indent -width Fa
.It Fa class
The
.Vt g_class
diff --git a/share/man/man9/EVENTHANDLER.9 b/share/man/man9/EVENTHANDLER.9
index ed83018..4a16660 100644
--- a/share/man/man9/EVENTHANDLER.9
+++ b/share/man/man9/EVENTHANDLER.9
@@ -23,7 +23,7 @@
.\" SUCH DAMAGE.
.\" $FreeBSD$
.\"
-.Dd January 7, 2005
+.Dd May 11, 2012
.Dt EVENTHANDLER 9
.Os
.Sh NAME
@@ -197,6 +197,8 @@ Callbacks invoked when an interface is cloned.
Callbacks invoked when a new network interface appears.
.It Vt ifnet_departure_event
Callbacks invoked when a network interface is taken down.
+.It Vt bpf_track
+Callbacks invoked when a BPF listener attaches to/detaches from network interface.
.It Vt power_profile_change
Callbacks invoked when the power profile of the system changes.
.It Vt process_exec
diff --git a/share/man/man9/VOP_GETACL.9 b/share/man/man9/VOP_GETACL.9
index d230340..6dbaca2 100644
--- a/share/man/man9/VOP_GETACL.9
+++ b/share/man/man9/VOP_GETACL.9
@@ -79,7 +79,7 @@ Otherwise, an appropriate error code is returned.
.It Bq Er EINVAL
The ACL type passed is invalid for this vnode.
.It Bq Er EACCES
-The the caller does not have the appropriate privilege.
+The caller does not have the appropriate privilege.
.It Bq Er ENOMEM
Sufficient memory is not available to fulfill the request.
.It Bq Er EOPNOTSUPP
diff --git a/share/man/man9/VOP_GETEXTATTR.9 b/share/man/man9/VOP_GETEXTATTR.9
index cf00d26..998ed2c 100644
--- a/share/man/man9/VOP_GETEXTATTR.9
+++ b/share/man/man9/VOP_GETEXTATTR.9
@@ -71,7 +71,7 @@ will be
.Dv NULL
when
.Fa size
-is not, and vise versa.
+is not, and vice versa.
.It Fa cred
The user credentials to use in authorizing the request.
.It Fa td
@@ -102,7 +102,7 @@ Otherwise, an appropriate error code is returned.
.It Bq Er ENOATTR
The requested attribute was not defined for this vnode.
.It Bq Er EACCES
-The the caller does not have the appropriate privilege.
+The caller does not have the appropriate privilege.
.It Bq Er ENXIO
The request was not valid in this file system for the specified vnode and
attribute name.
@@ -113,7 +113,7 @@ The uio structure refers to an invalid userspace address.
.It Bq Er EINVAL
The
.Fa name ,
-.Fa namespace,
+.Fa namespace ,
or
.Fa uio
argument is invalid.
diff --git a/share/man/man9/VOP_GETPAGES.9 b/share/man/man9/VOP_GETPAGES.9
index e490862..b165162 100644
--- a/share/man/man9/VOP_GETPAGES.9
+++ b/share/man/man9/VOP_GETPAGES.9
@@ -115,7 +115,7 @@ The page could not be written because of an error on the underlying storage
medium or protocol.
.It Dv VM_PAGER_FAIL
Treated identically to
-.Dv VM_PAGER_ERROR
+.Dv VM_PAGER_ERROR .
.It Dv VM_PAGER_AGAIN
The page was not handled by this request.
.El
diff --git a/share/man/man9/VOP_GETVOBJECT.9 b/share/man/man9/VOP_GETVOBJECT.9
index 2490da7..47741d1 100644
--- a/share/man/man9/VOP_GETVOBJECT.9
+++ b/share/man/man9/VOP_GETVOBJECT.9
@@ -53,7 +53,7 @@ The vnode of the file.
The VM object being returned, or
.Dv NULL
if the caller wants to test for the existence
-of the VM object).
+of the VM object.
.El
.Pp
.Xr VFS 9
diff --git a/share/man/man9/VOP_SETACL.9 b/share/man/man9/VOP_SETACL.9
index 482d289..b587771 100644
--- a/share/man/man9/VOP_SETACL.9
+++ b/share/man/man9/VOP_SETACL.9
@@ -84,7 +84,7 @@ Otherwise, an appropriate error code is returned.
.It Bq Er EINVAL
The ACL type passed is invalid for this vnode, or the ACL data is invalid.
.It Bq Er EACCES
-The the caller does not have the appropriate privilege.
+The caller does not have the appropriate privilege.
.It Bq Er ENOMEM
Sufficient memory is not available to fulfill the request.
.It Bq Er EOPNOTSUPP
diff --git a/share/man/man9/VOP_SETEXTATTR.9 b/share/man/man9/VOP_SETEXTATTR.9
index 4bc5387..edae937 100644
--- a/share/man/man9/VOP_SETEXTATTR.9
+++ b/share/man/man9/VOP_SETEXTATTR.9
@@ -91,12 +91,12 @@ Otherwise, an appropriate error code is returned.
.Sh ERRORS
.Bl -tag -width Er
.It Bq Er EACCES
-The the caller does not have the appropriate privilege.
+The caller does not have the appropriate privilege.
.It Bq Er ENXIO
The request was not valid in this file system for the specified vnode and
attribute name.
.It Bq Er ENOMEM
-Insufficient memory available to fulfill request
+Insufficient memory available to fulfill the request.
.It Bq Er EFAULT
The uio structure refers to an invalid userspace address.
.It Bq Er EINVAL
diff --git a/share/man/man9/acl.9 b/share/man/man9/acl.9
index 21640bd..c6c7159 100644
--- a/share/man/man9/acl.9
+++ b/share/man/man9/acl.9
@@ -210,7 +210,7 @@ The following values are valid:
.Xr vaccess_acl_nfs4 9 ,
.Xr vaccess_acl_posix1e 9 ,
.Xr VFS 9 ,
-.Xr vnaccess 9 ,
+.Xr vaccess 9 ,
.Xr VOP_ACLCHECK 9 ,
.Xr VOP_GETACL 9 ,
.Xr VOP_SETACL 9
diff --git a/share/man/man9/bpf.9 b/share/man/man9/bpf.9
index 5a3ac07..ebf26cb 100644
--- a/share/man/man9/bpf.9
+++ b/share/man/man9/bpf.9
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd December 13, 2006
+.Dd May 11, 2012
.Dt BPF 9
.Os
.\"
@@ -246,9 +246,31 @@ The
function
returns 0 when the program is not a valid filter program.
.\"
+.Sh EVENT HANDLERS
+.Nm
+invokes
+.Fa bpf_track
+.Xr EVENTHANDLER 9
+event each time listener attaches to or detaches from an interface.
+Pointer to
+.Pq Vt "struct ifnet *"
+is passed as the first argument, interface
+.Fa dlt
+follows. Last argument indicates listener is attached (1) or
+detached (0).
+Note that handler is invoked with
+.Nm
+global lock held, which implies restriction on sleeping and calling
+.Nm
+subsystem inside
+.Xr EVENTHANDLER 9
+dispatcher.
+Note that handler is not called for write-only listeners.
+.\"
.Sh SEE ALSO
.Xr tcpdump 1 ,
-.Xr bpf 4
+.Xr bpf 4 ,
+.Xr EVENTHANDLER 9
.\"
.Sh HISTORY
The Enet packet filter was created in 1980 by Mike Accetta and
diff --git a/share/man/man9/bus_generic_print_child.9 b/share/man/man9/bus_generic_print_child.9
index 80a04ff..388c0a0 100644
--- a/share/man/man9/bus_generic_print_child.9
+++ b/share/man/man9/bus_generic_print_child.9
@@ -51,7 +51,7 @@ foo0: <FooCard 1234> on bar0
bus_generic_print_child itself calls two functions
.Fn bus_print_child_header
and
-.Fn bus_print_child_footer
+.Fn bus_print_child_footer .
The former prints "foo0: <FooCard 1234>" and the latter "on bar0".
These routines should be used if possible in your own code if
.Fn bus_generic_print_child
diff --git a/share/man/man9/bus_release_resource.9 b/share/man/man9/bus_release_resource.9
index 68187cc..35e70d9 100644
--- a/share/man/man9/bus_release_resource.9
+++ b/share/man/man9/bus_release_resource.9
@@ -71,7 +71,7 @@ value must be the same as the one returned by
.It
.Fa r
is the pointer to
-.Va struct res ,
+.Va struct resource ,
i.e., the resource itself,
returned by
.Xr bus_alloc_resource 9 .
diff --git a/share/man/man9/bus_space.9 b/share/man/man9/bus_space.9
index 59c3607..6bf03b4 100644
--- a/share/man/man9/bus_space.9
+++ b/share/man/man9/bus_space.9
@@ -1380,7 +1380,8 @@ functions may be executed in any order.
They may also be executed out
of order with respect to other pending read and write operations unless
order is enforced by use of the
-.Fn bus_space_barrier function .
+.Fn bus_space_barrier
+function.
There is no way to insert barriers between reads or writes of
individual bus space locations executed by the
.Fn bus_space_copy_region_N
@@ -1610,7 +1611,7 @@ Access to these types of memory regions should be with the
.Fn bus_space_*_stream_N
functions.
.Pp
-.Bl -tag -compact
+.Bl -tag -compact -width Fn
.It Fn bus_space_read_stream_1
.It Fn bus_space_read_stream_2
.It Fn bus_space_read_stream_4
diff --git a/share/man/man9/byteorder.9 b/share/man/man9/byteorder.9
index 20e3136..e5737f6 100644
--- a/share/man/man9/byteorder.9
+++ b/share/man/man9/byteorder.9
@@ -158,7 +158,7 @@ in big/little endian format.
The
.Fn hto*
and
-.Fn toh*
+.Fn *toh
functions first appeared in
.Fx 5.0 ,
and were originally developed by the
diff --git a/share/man/man9/cd.9 b/share/man/man9/cd.9
index 59f796d..f5b748b 100644
--- a/share/man/man9/cd.9
+++ b/share/man/man9/cd.9
@@ -57,7 +57,7 @@ This can lead to drives requiring special handling in the driver.
The following is a list of quirks that the driver recognize.
.Bl -tag -width CD_Q_BCD_TRACKS
.It Dv CD_Q_NO_TOUCH
-This flag tell the driver not to probe the drive at attach time to see if
+This flag tells the driver not to probe the drive at attach time to see if
there is a disk in the drive and find out what size it is.
This flag is currently unimplemented in the CAM
.Nm
diff --git a/share/man/man9/devclass_get_maxunit.9 b/share/man/man9/devclass_get_maxunit.9
index c3be627..40a2d79 100644
--- a/share/man/man9/devclass_get_maxunit.9
+++ b/share/man/man9/devclass_get_maxunit.9
@@ -49,7 +49,7 @@ The
function returns -1 if
.Fa dc
is
-.Dv NULL;
+.Dv NULL ,
otherwise it returns the next unit
number in
.Fa dc's
diff --git a/share/man/man9/device_find_child.9 b/share/man/man9/device_find_child.9
index a23b2b2..391f44b 100644
--- a/share/man/man9/device_find_child.9
+++ b/share/man/man9/device_find_child.9
@@ -41,7 +41,7 @@
.Fn device_find_child "device_t dev" "const char *classname" "int unit"
.Sh DESCRIPTION
This function looks for a specific child of
-.Dv dev .
+.Dv dev
with the given
.Fa classname
and
diff --git a/share/man/man9/disk.9 b/share/man/man9/disk.9
index 4643512..d383888 100644
--- a/share/man/man9/disk.9
+++ b/share/man/man9/disk.9
@@ -145,6 +145,16 @@ Optional: if configured with
.Xr dumpon 8 ,
this function is invoked from a very restricted system state after a
kernel panic to record a copy of the system RAM to the disk.
+.It Vt "disk_getattr_t *" Va d_getattr
+Optional: if this method is provided, it gives the disk driver the
+opportunity to override the default GEOM response to BIO_GETATTR requests.
+This function should return -1 if the attribute is not handled, 0 if the
+attribute is handled, or an errno to be passed to g_io_deliver().
+.It Vt "disk_gone_t *" Va d_gone
+Optional: if this method is provided, it will be called after disk_gone()
+is called, once GEOM has finished its cleanup process.
+Once this callback is called, it is safe for the disk driver to free all of
+its resources, as it will not be receiving further calls from GEOM.
.El
.Ss Mandatory Media Properties
The following fields identify the size and granularity of the disk device.
@@ -180,7 +190,23 @@ Please see
.Pa src/sys/geom/notes
for details.
.It Vt char Va d_ident[DISK_IDENT_SIZE]
-This field can and should be used to store disk's serial number.
+This field can and should be used to store disk's serial number if the
+d_getattr method described above isn't implemented, or if it does not
+support the GEOM::ident attribute.
+.It Vt char Va d_descr[DISK_IDENT_SIZE]
+This field can be used to store the disk vendor and product description.
+.It Vt uint16_t Va d_hba_vendor
+This field can be used to store the PCI vendor ID for the HBA connected to
+the disk.
+.It Vt uint16_t Va d_hba_device
+This field can be used to store the PCI device ID for the HBA connected to
+the disk.
+.It Vt uint16_t Va d_hba_subvendor
+This field can be used to store the PCI subvendor ID for the HBA connected to
+the disk.
+.It Vt uint16_t Va d_hba_subdevice
+This field can be used to store the PCI subdevice ID for the HBA connected to
+the disk.
.El
.Ss Driver Private Data
This field may be used by the device driver to store a pointer to
diff --git a/share/man/man9/eventtimers.9 b/share/man/man9/eventtimers.9
index 2ed15d0..2f528bf 100644
--- a/share/man/man9/eventtimers.9
+++ b/share/man/man9/eventtimers.9
@@ -86,7 +86,7 @@ struct eventtimer {
Event timers are responsible for generating interrupts at specified time
or periodically, to run different time-based events.
Subsystem consists of three main parts:
-.Bl -tag
+.Bl -tag -width "Consumers"
.It Drivers
Manage hardware to generate requested time events.
.It Consumers
@@ -107,7 +107,7 @@ Driver API is built around eventtimer structure.
To register its functionality driver allocates that structure and calls
.Fn et_register .
Driver should fill following fields there:
-.Bl -tag
+.Bl -tag -width Va
.It Va et_name
Unique name of the event timer for management purposes.
.It Va et_flags
diff --git a/share/man/man9/fail.9 b/share/man/man9/fail.9
index 5505d13..6a3d815 100644
--- a/share/man/man9/fail.9
+++ b/share/man/man9/fail.9
@@ -166,7 +166,7 @@ A pid can optionally be specified.
The fail point term is only executed when invoked by a process with a
matching p_pid.
.Sh EXAMPLES
-.Bl -tag
+.Bl -tag -width Sy
.It Sy sysctl debug.fail_point.foobar="2.1%return(5)"
21/1000ths of the time, execute
.Fa code
diff --git a/share/man/man9/firmware.9 b/share/man/man9/firmware.9
index 9987e09..0f4fa9a 100644
--- a/share/man/man9/firmware.9
+++ b/share/man/man9/firmware.9
@@ -101,11 +101,13 @@ they want as an argument. If a matching image is not already registered,
the firmware subsystem will try to load it using the
mechanisms specified below (typically, a kernel module
with
-.Nm the same name
+.Nm
+the same name
as the image).
.Sh API DESCRIPTION
The kernel
-.Nm firmware API
+.Nm
+firmware API
is made of the following functions:
.Pp
.Fn firmware_register
@@ -225,7 +227,7 @@ in the module, the imagename and version of each firmware image.
If you need to embed firmware images into a system, you should write
appropriate entries in the <files.arch> file, e.g. this example is
from
-.Nm sys/arm/xscale/ixp425/files.ixp425:
+.Nm sys/arm/xscale/ixp425/files.ixp425 :
.Bd -literal
ixp425_npe_fw.c optional npe_fw \\
compile-with "${AWK} -f $S/tools/fw_stub.awk \\
diff --git a/share/man/man9/hashinit.9 b/share/man/man9/hashinit.9
index d186dcf..b72cd75 100644
--- a/share/man/man9/hashinit.9
+++ b/share/man/man9/hashinit.9
@@ -29,7 +29,7 @@
.Dt HASHINIT 9
.Os
.Sh NAME
-.Nm hashinit , hashinit_flags, hashdestroy , phashinit
+.Nm hashinit , hashinit_flags , hashdestroy , phashinit
.Nd manage kernel hash tables
.Sh SYNOPSIS
.In sys/malloc.h
diff --git a/share/man/man9/ieee80211_proto.9 b/share/man/man9/ieee80211_proto.9
index 88412eb..6b0da06 100644
--- a/share/man/man9/ieee80211_proto.9
+++ b/share/man/man9/ieee80211_proto.9
@@ -238,4 +238,4 @@ work will be initiated outside the driver.
The state machine concept was part of the original
.Nm ieee80211
code base that first appeared in
-.Nx 1.5 ,
+.Nx 1.5 .
diff --git a/share/man/man9/ifnet.9 b/share/man/man9/ifnet.9
index dd4fdf5..1059c88 100644
--- a/share/man/man9/ifnet.9
+++ b/share/man/man9/ifnet.9
@@ -637,7 +637,7 @@ interfaces registered at the interface list.
.Aq D
This interface blocks transmission of packets and discards incoming
packets after BPF processing.
-Used to monitor network trafic but not interact
+Used to monitor network traffic but not interact
with the network in question.
.It Dv IFF_STATICARP
.Aq D
diff --git a/share/man/man9/kqueue.9 b/share/man/man9/kqueue.9
index 555fe54..29ae5f7 100644
--- a/share/man/man9/kqueue.9
+++ b/share/man/man9/kqueue.9
@@ -260,8 +260,7 @@ is not required, but is commonly used.
If used, the
.Vt knlist
must be initialized with either
-.Fn knlist_init
-,
+.Fn knlist_init ,
.Fn knlist_init_mtx
or
.Fn knlist_init_rw_reader .
diff --git a/share/man/man9/lock.9 b/share/man/man9/lock.9
index 0e5cfb1..bbcf5e8 100644
--- a/share/man/man9/lock.9
+++ b/share/man/man9/lock.9
@@ -230,7 +230,7 @@ and
The
.Fn lockmgr_disown
function switches the owner from the current thread to be
-.Dv LK_KERNPROC,
+.Dv LK_KERNPROC ,
if the lock is already held.
.Pp
The
diff --git a/share/man/man9/locking.9 b/share/man/man9/locking.9
index 00478bf..6ec6592 100644
--- a/share/man/man9/locking.9
+++ b/share/man/man9/locking.9
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd November 3, 2010
+.Dd May 25, 2012
.Dt LOCKING 9
.Os
.Sh NAME
@@ -37,11 +37,19 @@ kernel is written to run across multiple CPUs and as such requires
several different synchronization primitives to allow the developers
to safely access and manipulate the many data types required.
.Ss Mutexes
-Mutexes (also called "sleep mutexes") are the most commonly used
+Mutexes (also erroneously called "sleep mutexes") are the most commonly used
synchronization primitive in the kernel.
-Thread acquires (locks) a mutex before accessing data shared with other
+A thread acquires (locks) a mutex before accessing data shared with other
threads (including interrupt threads), and releases (unlocks) it afterwards.
-If the mutex cannot be acquired, the thread requesting it will sleep.
+If the mutex cannot be acquired, the thread requesting it will wait.
+Mutexes are by default adaptive, meaning that
+if the owner of a contended mutex is currently running on another CPU,
+then a thread attempting to acquire the mutex will briefly spin
+in the hope that the owner is only briefly holding it,
+and might release it shortly.
+If the owner does not do so, the waiting thread proceeds to yield the processor,
+allowing other threads to run.
+If the owner is not currently actually running then the spin step is skipped.
Mutexes fully support priority propagation.
.Pp
See
@@ -49,9 +57,10 @@ See
for details.
.Ss Spin mutexes
Spin mutexes are variation of basic mutexes; the main difference between
-the two is that spin mutexes never sleep - instead, they spin, waiting
-for the thread holding the lock, which runs on another CPU, to release it.
-Differently from ordinary mutex, spin mutexes disable interrupts when acquired.
+the two is that spin mutexes never yield the processor - instead, they spin,
+waiting for the thread holding the lock,
+(which must be running on another CPU), to release it.
+Spin mutexes disable interrupts while the held so as to not get pre-empted.
Since disabling interrupts is expensive, they are also generally slower.
Spin mutexes should be used only when necessary, e.g. to protect data shared
with interrupt filter code (see
@@ -122,7 +131,7 @@ and read-mostly locks.
They don't support priority propagation.
They should be considered to be closely related to
.Xr sleep 9 .
-In fact it could in some cases be
+They could in some cases be
considered a conditional sleep.
.Pp
See
@@ -146,8 +155,8 @@ A thread must hold the mutex before calling the
.Fn cv_wait* ,
functions.
When a thread waits on a condition, the mutex
-is atomically released before the thread is blocked, then reacquired
-before the function call returns.
+is atomically released before the thread thread yields the processor,
+then reacquired before the function call returns.
.Pp
See
.Xr condvar 9
@@ -255,14 +264,14 @@ Many of these rules are checked using the
.Xr witness 4
code.
.Ss Bounded vs. unbounded sleep
-The following primitives perform bounded sleep: mutexes, pool mutexes,
-reader/writer locks and read-mostly locks.
+The following primitives perform bounded sleep:
+ mutexes, pool mutexes, reader/writer locks and read-mostly locks.
.Pp
-The following primitives block (perform unbounded sleep): shared/exclusive locks,
-counting semaphores, condition variables, sleep/wakeup and lockmanager locks.
+The following primitives may perform an unbounded sleep:
+shared/exclusive locks, counting semaphores, condition variables, sleep/wakeup and lockmanager locks.
.Pp
-It is an error to do any operation that could result in any kind of sleep while
-holding spin mutex.
+It is an error to do any operation that could result in yielding the processor
+while holding a spin mutex.
.Pp
As a general rule, it is an error to do any operation that could result
in unbounded sleep while holding any primitive from the 'bounded sleep' group.
@@ -280,25 +289,26 @@ This is often a bad idea because it generally relies on the programmer having
good knowledge of all of the call graph above the place where
.Fn mtx_sleep
is being called and assumptions the calling code has made.
-Because the lock gets dropped during sleep, one one must re-test all
+Because the lock gets dropped during sleep, one must re-test all
the assumptions that were made before, all the way up the call graph to the
place where the lock was acquired.
.Pp
-It is an error to do any operation that could result in any kind of sleep when
-running inside an interrupt filter.
+It is an error to do any operation that could result in yielding of
+the processor when running inside an interrupt filter.
.Pp
It is an error to do any operation that could result in unbounded sleep when
running inside an interrupt thread.
.Ss Interaction table
The following table shows what you can and can not do while holding
one of the synchronization primitives discussed:
-.Bl -column ".Ic xxxxxxxxxxxxxxxxxxx" ".Xr XXXXXXXXX" ".Xr XXXXXXX" ".Xr XXXXXXX" ".Xr XXXXXXX" ".Xr XXXXXX" -offset indent
-.It Em "You have: You want:" Ta spin mtx Ta mutex Ta sx Ta rwlock Ta rmlock Ta sleep
+.Bl -column ".Ic xxxxxxxxxxxxxxxx" ".Xr XXXXXXXXX" ".Xr XXXXXXX" ".Xr XXXXXXX" ".Xr XXXXXXX" ".Xr XXXXXX" -offset indent
+.It Em " You want:" Ta spin-mtx Ta mutex Ta rwlock Ta rmlock Ta sx Ta sleep
+.It Em "You have: " Ta ------ Ta ------ Ta ------ Ta ------ Ta ------ Ta ------
.It spin mtx Ta \&ok-1 Ta \&no Ta \&no Ta \&no Ta \&no Ta \&no-3
-.It mutex Ta \&ok Ta \&ok-1 Ta \&no Ta \&ok Ta \&ok Ta \&no-3
-.It sx Ta \&ok Ta \&ok Ta \&ok-2 Ta \&ok Ta \&ok Ta \&ok-4
-.It rwlock Ta \&ok Ta \&ok Ta \&no Ta \&ok-2 Ta \&ok Ta \&no-3
-.It rmlock Ta \&ok Ta \&ok Ta \&ok-5 Ta \&ok Ta \&ok-2 Ta \&ok-5
+.It mutex Ta \&ok Ta \&ok-1 Ta \&ok Ta \&ok Ta \&no Ta \&no-3
+.It rwlock Ta \&ok Ta \&ok Ta \&ok-2 Ta \&ok Ta \&no Ta \&no-3
+.It rmlock Ta \&ok Ta \&ok Ta \&ok Ta \&ok-2 Ta \&no-5 Ta \&no-5
+.It sx Ta \&ok Ta \&ok Ta \&ok Ta \&ok Ta \&no-2 Ta \&ok-4
.El
.Pp
.Em *1
@@ -315,8 +325,7 @@ and reacquire it on wakeup (e.g.
.Fn mtx_sleep ,
.Fn rw_sleep
and
-.Fn msleep_spin
-).
+.Fn msleep_spin ) .
.Pp
.Em *4
Though one can sleep holding an sx lock, one can also use
@@ -358,6 +367,6 @@ These
functions appeared in
.Bsx 4.1
through
-.Fx 7.0
+.Fx 7.0 .
.Sh BUGS
There are too many locking primitives to choose from.
diff --git a/share/man/man9/mbuf.9 b/share/man/man9/mbuf.9
index b029c52..5c94029 100644
--- a/share/man/man9/mbuf.9
+++ b/share/man/man9/mbuf.9
@@ -403,7 +403,8 @@ for details.
Associate externally managed data with
.Fa mbuf .
Any internal data contained in the mbuf will be discarded, and the
-.Dv M_EXT flag will be set.
+.Dv M_EXT
+flag will be set.
The
.Fa buf
and
@@ -722,7 +723,8 @@ are contiguous and lay in the data area of
.Fa mbuf ,
so they are accessible with
.Fn mtod mbuf type .
-.Fa len must be smaller than, or equal to, the size of an
+.Fa len
+must be smaller than, or equal to, the size of an
.Vt mbuf cluster .
Return a pointer to an intermediate
.Vt mbuf
diff --git a/share/man/man9/mod_cc.9 b/share/man/man9/mod_cc.9
index 75e2db0..d753a3c 100644
--- a/share/man/man9/mod_cc.9
+++ b/share/man/man9/mod_cc.9
@@ -287,7 +287,7 @@ The CCF_CWND_LIMITED flag is relevant in
.Va ack_received
and is set when the connection's ability to send data is currently constrained
by the value of the congestion window.
-Algorithms should use the abscence of this flag being set to avoid accumulating
+Algorithms should use the absence of this flag being set to avoid accumulating
a large difference between the congestion window and send window.
.Sh SEE ALSO
.Xr cc_chd 4 ,
diff --git a/share/man/man9/namei.9 b/share/man/man9/namei.9
index 1ba475a..dc9ef8e 100644
--- a/share/man/man9/namei.9
+++ b/share/man/man9/namei.9
@@ -316,7 +316,7 @@ If successful,
.Fn namei
will return 0, otherwise it will return an error.
.Sh FILES
-.Bl -tag
+.Bl -tag -width Pa
.It Pa src/sys/kern/vfs_lookup.c
.El
.Sh ERRORS
diff --git a/share/man/man9/netisr.9 b/share/man/man9/netisr.9
index bb64b0e..4377e02 100644
--- a/share/man/man9/netisr.9
+++ b/share/man/man9/netisr.9
@@ -78,7 +78,7 @@ and may also manage queue limits and statistics using the
.Fn netisr_getqdrops ,
.Fn netisr_getqlimit ,
and
-.Fn netisr_setqlimit.
+.Fn netisr_setqlimit .
.Pp
.Nm
supports multi-processor execution of handlers, and relies on a combination
diff --git a/share/man/man9/pci.9 b/share/man/man9/pci.9
index 4089ee8..adc78b5 100644
--- a/share/man/man9/pci.9
+++ b/share/man/man9/pci.9
@@ -488,7 +488,7 @@ The
.Fn pci_count_msi
function returns the maximum number of MSI messages supported by the
device
-.Fa dev.
+.Fa dev .
If the device does not support MSI,
then
.Fn pci_count_msi
@@ -567,7 +567,8 @@ is set to the number of messages allocated and
returns zero.
For MSI-X messages,
the resource ID for each
-.Dv SYS_RES_IRQ resource identifies the index in the MSI-X table of the
+.Dv SYS_RES_IRQ
+resource identifies the index in the MSI-X table of the
corresponding message.
A resource ID of one maps to the first index of the MSI-X table;
a resource ID two identifies the second index in the table, etc.
@@ -608,7 +609,7 @@ A driver may use a different distribution of available messages to
table entries via the
.Fn pci_remap_msix
function.
-Note that this function must be called after a succesful call to
+Note that this function must be called after a successful call to
.Fn pci_alloc_msix
but before any of the
.Dv SYS_RES_IRQ
@@ -649,7 +650,8 @@ above for
.Fn pci_alloc_msix .
MSI-X table entries that with a vector of zero will not have an
associated
-.Dv SYS_RES_IRQ resource.
+.Dv SYS_RES_IRQ
+resource.
Additionally,
if any of the original messages allocated by
.Fn pci_alloc_msix
diff --git a/share/man/man9/rmlock.9 b/share/man/man9/rmlock.9
index 893eb25..7808345 100644
--- a/share/man/man9/rmlock.9
+++ b/share/man/man9/rmlock.9
@@ -26,7 +26,7 @@
.\" $FreeBSD$
.\"
.\" Based on rwlock.9 man page
-.Dd November 16, 2011
+.Dd June 8, 2012
.Dt RMLOCK 9
.Os
.Sh NAME
@@ -41,7 +41,7 @@
.Nm rm_wunlock ,
.Nm rm_wowned ,
.Nm RM_SYSINIT
-.Nd kernel reader/writer lock optimized for mostly read access patterns
+.Nd kernel reader/writer lock optimized for read-mostly access patterns
.Sh SYNOPSIS
.In sys/param.h
.In sys/lock.h
@@ -67,7 +67,7 @@
.In sys/kernel.h
.Fn RM_SYSINIT "name" "struct rmlock *rm" "const char *desc" "int opts"
.Sh DESCRIPTION
-Mostly reader locks allow shared access to protected data by multiple threads,
+Read-mostly locks allow shared access to protected data by multiple threads,
or exclusive access by a single thread.
The threads with shared access are known as
.Em readers
@@ -76,83 +76,82 @@ A thread with exclusive access is known as a
.Em writer
since it can modify protected data.
.Pp
-Read mostly locks are designed to be efficient for locks almost exclusively
+Read-mostly locks are designed to be efficient for locks almost exclusively
used as reader locks and as such should be used for protecting data that
rarely changes.
-Acquiring an exclusive lock after the lock had been locked for shared access
+Acquiring an exclusive lock after the lock has been locked for shared access
is an expensive operation.
.Pp
-Although reader/writer locks look very similar to
-.Xr sx 9
-locks, their usage pattern is different.
-Reader/writer locks can be treated as mutexes (see
-.Xr mutex 9 )
-with shared/exclusive semantics unless initialized with
-.Dv RM_SLEEPABLE .
+Normal read-mostly locks are similar to
+.Xr rwlock 9
+locks and follow the same lock ordering rules as
+.Xr rwlock 9
+locks.
+Read-mostly locks have full priority propagation like mutexes.
Unlike
-.Xr sx 9 ,
-an
-.Nm
-can be locked while holding a non-spin mutex, and an
-.Nm
-cannot be held while sleeping, again unless initialized with
-.Dv RM_SLEEPABLE .
-The
-.Nm
-locks have full priority propagation like mutexes.
-The
+.Xr rwlock 9 ,
+read-mostly locks propagate priority to both readers and writers.
+This is implemented via the
.Va rm_priotracker
-structure argument supplied in
+structure argument supplied to
.Fn rm_rlock
and
-.Fn rm_runlock
-is used to keep track of the read owner(s).
-Another important property is that shared holders of
-.Nm
-can recurse if the lock has been initialized with the
-.Dv LO_RECURSABLE
-option, however exclusive locks are not allowed to recurse.
+.Fn rm_runlock .
+Readers can recurse if the lock is initialized with the
+.Dv RM_RECURSE
+option;
+however, writers are never allowed to recurse.
+.Pp
+Sleepable read-mostly locks are created by passing
+.Dv RM_SLEEPABLE
+to
+.Fn rm_init_flags .
+Unlike normal read-mostly locks,
+sleepable read-mostly locks follow the same lock ordering rules as
+.Xr sx 9
+locks.
+Sleepable read-mostly locks do not propagate priority to writers,
+but they do propagate priority to readers.
+Writers are permitted to sleep while holding a read-mostly lock,
+but readers are not.
+Unlike other sleepable locks such as
+.Xr sx 9
+locks,
+readers must use try operations on other sleepable locks to avoid sleeping.
.Ss Macros and Functions
.Bl -tag -width indent
.It Fn rm_init "struct rmlock *rm" "const char *name"
-Initialize structure located at
-.Fa rm
-as mostly reader lock, described by
-.Fa name .
-The name description is used solely for debugging purposes.
+Initialize the read-mostly lock
+.Fa rm .
+The
+.Fa name
+description is used solely for debugging purposes.
This function must be called before any other operations
on the lock.
.It Fn rm_init_flags "struct rmlock *rm" "const char *name" "int opts"
-Initialize the rm lock just like the
-.Fn rm_init
-function, but specifying a set of optional flags to alter the
-behaviour of
-.Fa rm ,
-through the
+Similar to
+.Fn rm_init ,
+initialize the read-mostly lock
+.Fa rm
+with a set of optional flags.
+The
.Fa opts
-argument.
-It contains one or more of the following flags:
+arguments contains one or more of the following flags:
.Bl -tag -width ".Dv RM_NOWITNESS"
.It Dv RM_NOWITNESS
Instruct
.Xr witness 4
to ignore this lock.
.It Dv RM_RECURSE
-Allow threads to recursively acquire exclusive locks for
+Allow threads to recursively acquire shared locks for
.Fa rm .
.It Dv RM_SLEEPABLE
-Allow writers to sleep while holding the lock.
-Readers must not sleep while holding the lock and can avoid to sleep on
-taking the lock by using
-.Fn rm_try_rlock
-instead of
-.Fn rm_rlock .
+Create a sleepable read-mostly lock.
.El
.It Fn rm_rlock "struct rmlock *rm" "struct rm_priotracker* tracker"
Lock
.Fa rm
-as a reader.
-Using
+as a reader using
.Fa tracker
to track read owners of a lock for priority propagation.
This data structure is only used internally by
@@ -161,28 +160,32 @@ and must persist until
.Fn rm_runlock
has been called.
This data structure can be allocated on the stack since
-rmlocks cannot be held while sleeping.
+readers cannot sleep.
If any thread holds this lock exclusively, the current thread blocks,
and its priority is propagated to the exclusive holder.
If the lock was initialized with the
-.Dv LO_RECURSABLE
+.Dv RM_RECURSE
option the
.Fn rm_rlock
-function can be called when the thread has already acquired reader
+function can be called when the current thread has already acquired reader
access on
.Fa rm .
-This is called
-.Dq "recursing on a lock" .
.It Fn rm_try_rlock "struct rmlock *rm" "struct rm_priotracker* tracker"
Try to lock
.Fa rm
as a reader.
.Fn rm_try_rlock
will return 0 if the lock cannot be acquired immediately;
-otherwise the lock will be acquired and a non-zero value will be returned.
+otherwise,
+the lock will be acquired and a non-zero value will be returned.
Note that
.Fn rm_try_rlock
may fail even while the lock is not currently held by a writer.
+If the lock was initialized with the
+.Dv RM_RECURSE
+option,
+.Fn rm_try_rlock
+will succeed if the current thread has already acquired reader access.
.It Fn rm_wlock "struct rmlock *rm"
Lock
.Fa rm
diff --git a/share/man/man9/rtalloc.9 b/share/man/man9/rtalloc.9
index ab5379a..ea22f87 100644
--- a/share/man/man9/rtalloc.9
+++ b/share/man/man9/rtalloc.9
@@ -28,7 +28,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd December 14, 2011
+.Dd July 4, 2012
.Dt RTALLOC 9
.Os
.Sh NAME
@@ -52,6 +52,7 @@
.Fn RT_UNLOCK "struct rt_entry *rt"
.Fn RT_ADDREF "struct rt_entry *rt"
.Fn RT_REMREF "struct rt_entry *rt"
+.Fn RO_RTFREE "struct route *ro"
.Ft void
.Fn rtfree "struct rt_entry *rt"
.Ft "struct rtentry *"
@@ -203,6 +204,14 @@ Its usage is contrary to
.Fn RT_ADDREF .
.Pp
The
+.Fn RO_RTFREE
+macro is used to free route entry that is referenced by struct route.
+At certain circumstances the latter may not hold a reference on rtentry,
+and
+.Fn RO_RTFREE
+treats such routes correctly.
+.Pp
+The
.Fn rtfree
function does the actual free of the routing table entry, and shouldn't
be called directly by facilities, that just perform routing table lookups.
diff --git a/share/man/man9/rwlock.9 b/share/man/man9/rwlock.9
index f7da699..45fc3bd 100644
--- a/share/man/man9/rwlock.9
+++ b/share/man/man9/rwlock.9
@@ -114,12 +114,10 @@ cannot be held while sleeping.
The
.Nm
locks have priority propagation like mutexes, but priority
-can be propagated only to an exclusive holder.
-This limitation comes from the fact that shared owners
+can be propagated only to writers.
+This limitation comes from the fact that readers
are anonymous.
-Another important property is that shared holders of
-.Nm
-can recurse,
+Another important property is that readers can always recurse,
and exclusive locks can be made recursive selectively.
.Ss Macros and Functions
.Bl -tag -width indent
diff --git a/share/man/man9/spl.9 b/share/man/man9/spl.9
index 08fd4d4..3bfa556 100644
--- a/share/man/man9/spl.9
+++ b/share/man/man9/spl.9
@@ -112,8 +112,7 @@ The system automatically arranges for interrupts in
the
.Em xxx
group to be called at a priority >=
-.Ns spl Ns Em xxx
-\&().
+.Em spl Ns Fn xxx
.Pp
The function
.Fn splx
@@ -221,7 +220,8 @@ the system.
The historical number scheme can be considered as a
simple linearly ordered set of interrupt priority groups.
.Pp
-.Fx 5.0 eliminated spl entirely in favor of locking primitives which scale
+.Fx 5.0
+eliminated spl entirely in favor of locking primitives which scale
to more than one processor.
.Sh AUTHORS
This manual page was written by
diff --git a/share/man/man9/store.9 b/share/man/man9/store.9
index e3297e1..d333eff 100644
--- a/share/man/man9/store.9
+++ b/share/man/man9/store.9
@@ -76,13 +76,13 @@ Stores a byte of data to the user-space address
Stores a word of data to the user-space address
.Pa base .
.It Fn suword16
-Stores 16 bits of of data to the user-space address
+Stores 16 bits of data to the user-space address
.Pa base .
.It Fn suword32
-Stores 32 bits of of data to the user-space address
+Stores 32 bits of data to the user-space address
.Pa base .
.It Fn suword64
-Stores 64 bits of of data to the user-space address
+Stores 64 bits of data to the user-space address
.Pa base .
.It Fn suswintr
Stores a short word of data to the user-space address
diff --git a/share/man/man9/sysctl.9 b/share/man/man9/sysctl.9
index d58573b..5399b56 100644
--- a/share/man/man9/sysctl.9
+++ b/share/man/man9/sysctl.9
@@ -107,7 +107,7 @@ This is a 64-bit signed integer.
This is an opaque data structure.
.It Dv CTLTYPE_STRUCT
Alias for
-.Dv CTLTYPE_OPAQUE.
+.Dv CTLTYPE_OPAQUE .
.It Dv CTLTYPE_UINT
This is an unsigned integer.
.It Dv CTLTYPE_LONG
diff --git a/share/man/man9/taskqueue.9 b/share/man/man9/taskqueue.9
index 319aa2f..f1a43b6 100644
--- a/share/man/man9/taskqueue.9
+++ b/share/man/man9/taskqueue.9
@@ -189,8 +189,8 @@ The
count is cleared, and the old value returned in the reference
parameter
.Fa pendp ,
-if it is non-
-.Dv NULL .
+if it is
+.Pf non- Dv NULL .
If the task is currently running,
.Dv EBUSY
is returned, otherwise 0.
diff --git a/share/man/man9/usbdi.9 b/share/man/man9/usbdi.9
index c04c946..03cc305 100644
--- a/share/man/man9/usbdi.9
+++ b/share/man/man9/usbdi.9
@@ -435,7 +435,7 @@ The value of this field is given in milliseconds and is independent of
device speed.
.
Depending on the endpoint type, this field has different meaning:
-.Bl -tag
+.Bl -tag -width "UE_ISOCHRONOUS"
.It UE_INTERRUPT
"0" use the default interrupt interval based on endpoint descriptor.
"Else" use the given value for polling rate.
@@ -461,7 +461,7 @@ timeout of 250ms will be used.
.Fa frames
field sets the maximum number of frames. If zero is specified it will
yield the following results:
-.Bl -tag
+.Bl -tag -width "UE_INTERRUPT"
.It UE_BULK
xfer->nframes = 1;
.It UE_INTERRUPT
@@ -487,7 +487,7 @@ be used when setting up the given USB transfer.
.Fa flags
field has type "struct usb_xfer_flags" and allows one to set initial
flags an USB transfer. Valid flags are:
-.Bl -tag
+.Bl -tag -width "force_short_xfer"
.It force_short_xfer
This flag forces the last transmitted USB packet to be short. A short
packet has a length of less than "xfer->max_packet_size", which
@@ -507,7 +507,7 @@ This flag causes a failing USB transfer to remain first in the PIPE
queue except in the case of "xfer->error" equal to
"USB_ERR_CANCELLED". No other USB transfers in the affected PIPE queue
will be started until either:
-.Bl -tag
+.Bl -tag -width "1"
.It 1
The failing USB transfer is stopped using "usbd_transfer_stop()".
.It 2
@@ -524,7 +524,7 @@ executed on the USB control endpoint.
.
This flag can be changed during operation.
.Pp
-"BOF" is short for "Block On Failure"
+"BOF" is short for "Block On Failure".
.Pp
NOTE: This flag should be set on all BULK and INTERRUPT USB transfers
which use an endpoint that can be shared between userland and kernel.
@@ -574,7 +574,7 @@ flag can not be changed during operation.
.
.
.It stall_pipe
-.Bl -tag
+.Bl -tag -width "Device Side Mode"
.It Device Side Mode
Setting this flag will cause STALL pids to be sent to the endpoint
belonging to this transfer before the transfer is started.
diff --git a/share/man/man9/vm_page_aflag.9 b/share/man/man9/vm_page_aflag.9
index 8ef5d87..4500bd2 100644
--- a/share/man/man9/vm_page_aflag.9
+++ b/share/man/man9/vm_page_aflag.9
@@ -27,7 +27,7 @@
.\" $FreeBSD$
.\"
.Dd August 31, 2011
-.Dt VM_PAGE_FLAG 9
+.Dt VM_PAGE_AFLAG 9
.Os
.Sh NAME
.Nm vm_page_aflag_clear , vm_page_aflag_set , vm_page_reference
diff --git a/share/misc/bsd-family-tree b/share/misc/bsd-family-tree
index 43ab9d6..eba25d0 100644
--- a/share/misc/bsd-family-tree
+++ b/share/misc/bsd-family-tree
@@ -253,7 +253,7 @@ FreeBSD 5.2 | | | |
*--FreeBSD | | | | |
| 9.0 | | | | DragonFly 3.0.1
| v FreeBSD | | | |
- | 8.3 | | | |
+ | 8.3 | | OpenBSD 5.1 |
| | | | |
FreeBSD 10 -current | NetBSD -current OpenBSD -current |
| | | | |
@@ -546,6 +546,7 @@ OpenBSD 5.0 2011-11-01 [OBD]
FreeBSD 9.0 2012-01-12 [FBD]
DragonFly 3.0.1 2012-02-21 [DFB]
FreeBSD 8.3 2012-04-18 [FBD]
+OpenBSD 5.1 2012-05-01 [OBD]
Bibliography
------------------------
diff --git a/share/misc/committers-doc.dot b/share/misc/committers-doc.dot
index 9908dfa..f3f43e3 100644
--- a/share/misc/committers-doc.dot
+++ b/share/misc/committers-doc.dot
@@ -32,15 +32,19 @@ node [color=grey62, style=filled, bgcolor=black];
ache [label="Andrey Chernov\nache@FreeBSD.org\n1997/06/13\n2010/12/11"]
bmah [label="Bruce A. Mah\nbmah@FreeBSD.org\n2000/08/22\n2009/09/13"]
bvs [label="Vitaly Bogdanov\nbvs@FreeBSD.org\n2005/10/03\n2010/12/11"]
+ceri [label="Ceri Davies\nceri@FreeBSD.org\n2002/03/17\n2012/02/29"]
den [label="Denis Peplin\nden@FreeBSD.org\n2003/09/13\n2009/07/09"]
garys [label="Gary W. Swearingen\ngarys@FreeBSD.org\n2005/08/21\n2008/03/02"]
jcamou [label="Jesus R. Camou\njcamou@FreeBSD.org\n2005/03/02\n2008/12/20"]
jesusr [label="Jesus Rodriguez Cuesta\njesusr@FreeBSD.org\n1998/12/10\n2010/12/11"]
jim [label="Jim Mock\njim@FreeBSD.org\n1999/08/11\n2003/12/15"]
josef [label="Josef El-Rayes\njosef@FreeBSD.org\n2004/01/15\n2008/03/29"]
+marcel [label="Marcel Moolenaar\nmarcel@FreeBSD.org\n1999/07/03\n2012/04/25"]
mheinen [label="Martin Heinen\nmheinen@FreeBSD.org\n2002/10/04\n2006/04/26"]
+murray [label="Murray Stokely\nmurray@FreeBSD.org\n2000/04/05\n2012/04/25"]
nik [label="Nik Clayton\nnik@FreeBSD.org\n1998/02/26\n2008/12/20"]
pgj [label="Gabor Pali\npgj@FreeBSD.org\n2008/04/21\n2010/12/01"]
+roam [label="Peter Pentchev\nroam@FreeBSD.org\n2003/02/14\n2012/02/29"]
node [color=lightblue2, style=filled, bgcolor=black];
@@ -51,7 +55,6 @@ bcr [label="Benedict Reuschling\nbcr@FreeBSD.org\n2009/12/24"]
blackend [label="Marc Fonvieille\nblackend@FreeBSD.org\n2002/06/16"]
brd [label="Brad Davis\nbrd@FreeBSD.org\n2005/06/01"]
brueffer [label="Christian Brueffer\nbrueffer@FreeBSD.org\n2003/01/13"]
-ceri [label="Ceri Davies\nceri@FreeBSD.org\n2002/03/17"]
chinsan [label="Chinsan Huang\nchinsan@FreeBSD.org\n2006/09/20"]
danger [label="Daniel Gerzo\ndanger@FreeBSD.org\n2006/08/20"]
delphij [label="Xin Li\ndelphij@FreeBSD.org\n2004/09/14"]
@@ -60,27 +63,26 @@ ganbold [label="Ganbold Tsagaankhuu\nganbold@FreeBSD.org\n2008/02/26"]
gavin [label="Gavin Atkinson\ngavin@FreeBSD.org\n2011/07/18"]
gjb [label="Glen Barber\ngjb@FreeBSD.org\n2010/09/01"]
hrs [label="Hiroki Sato\nhrs@FreeBSD.org\n2000/07/06"]
+issyl0 [label="Isabell Long\nissyl0@FreeBSD.org\n2012/04/25"]
jkois [label="Johann Kois\njkois@FreeBSD.org\n2004/11/11"]
joel [label="Joel Dahl\njoel@FreeBSD.org\n2005/04/05"]
keramida [label="Giorgos Keramidas\nkeramida@FreeBSD.org\n2001/10/12"]
linimon [label="Mark Linimon\nlinimon@FreeBSD.org\n2004/03/31"]
loader [label="Fukang Chen\nloader@FreeBSD.org\n2007/07/30"]
manolis [label="Manolis Kiagias\nmanolis@FreeBSD.org\n2008/05/24"]
-marcel [label="Marcel Moolenaar\nmarcel@FreeBSD.org\n1999/07/03"]
marck [label="Dmitry Morozovsky\nmarck@FreeBSD.org\n2004/08/10"]
maxim [label="Maxim Konovalov\nmaxim@FreeBSD.org\n2002/02/07"]
miwi [label="Martin Wilke\nmiwi@FreeBSD.org\n2007/10/26"]
-murray [label="Murray Stokely\nmurray@FreeBSD.org\n2000/04/05"]
pav [label="Pav Lucistnik\npav@FreeBSD.org\n2005/08/12"]
pluknet [label="Sergey Kandaurov\npluknet@FreeBSD.org\n2012/02/14"]
remko [label="Remko Lodder\nremko@FreeBSD.org\n2004/10/16"]
rene [label="Rene Ladan\nrene@FreeBSD.org\n2008/11/03"]
-roam [label="Peter Pentchev\nroam@FreeBSD.org\n2003/02/14"]
ryusuke [label="Ryusuke Suzuki\nryusuke@FreeBSD.org\n2009/12/21"]
simon [label="Simon L. Nielsen\nsimon@FreeBSD.org\n2003/07/20"]
taras [label="Taras Korenko\ntaras@FreeBSD.org\n2010/06/25"]
trhodes [label="Tom Rhodes\ntrhodes@FreeBSD.org\n2002/03/25"]
wblock [label="Warren Block\nwblock@FreeBSD.org\n2011/09/12"]
+zeising [label="Niclas Zeising\nzeising@FreeBSD.org\n2012/07/03"]
# Here are the mentor/mentee relationships.
# Group together all the mentees for a particular mentor.
@@ -107,6 +109,7 @@ delphij -> loader
gabor -> pgj
gabor -> manolis
gabor -> taras
+gabor -> issyl0
gjb -> wblock
@@ -121,6 +124,8 @@ jkois -> bcr
jkois -> gavin
jkois -> gjb
+joel -> zeising
+
keramida -> blackend
keramida -> danger
keramida -> gabor
diff --git a/share/misc/committers-ports.dot b/share/misc/committers-ports.dot
index 2e897f2..5b4819d 100644
--- a/share/misc/committers-ports.dot
+++ b/share/misc/committers-ports.dot
@@ -59,8 +59,8 @@ az [label="Andrej Zverev\naz@FreeBSD.org\n2005/10/03"]
bapt [label="Baptiste Daroussin\nbapt@FreeBSD.org\n2010/07/27"]
beat [label="Beat Gaetzi\nbeat@FreeBSD.org\n2009/01/28"]
beech [label="Beech Rintoul\nbeech@FreeBSD.org\n2007/05/30"]
-bland [label="Alexander Nedotsukov\nbland@FreeBSD.org\n2003/08/14"]
bf [label="Brendan Fabeny\nbf@FreeBSD.org\n2010/06/02"]
+bland [label="Alexander Nedotsukov\nbland@FreeBSD.org\n2003/08/14"]
brix [label="Henrik Brix Andersen\nbrix@FreeBSD.org\n2007/10/31"]
brooks [label="Brooks Davies\nbrooks@FreeBSD.org\n2004/05/03"]
bsam [label="Boris Samorodov\nbsam@FreeBSD.org\n2006/07/20"]
@@ -93,6 +93,7 @@ gabor [label="Gabor Kovesdan\ngabor@FreeBSD.org\n2006/12/05"]
gahr [label="Pietro Cerutti\ngahr@FreeBSD.org\n2008/02/20"]
garga [label="Renato Botelho\ngarga@FreeBSD.org\n2005/07/11"]
gerald [label="Gerald Pfeifer\ngerald@FreeBSD.org\n2002/04/03"]
+gjb [label="Glen Barber\ngjb@FreeBSD.org\n2012/06/19"]
glarkin [label="Greg Larkin\nglarkin@FreeBSD.org\n2008/07/17"]
glewis [label="Greg Lewis\nglewis@FreeBSD.org\n2002/04/08"]
hq [label="Herve Quiroz\nhq@FreeBSD.org\n2004/08/05"]
@@ -100,6 +101,7 @@ ijliao [label="Ying-Chieh Liao\nijliao@FreeBSD.org\n2001/01/20"]
itetcu [label="Ion-Mihai Tetcu\nitetcu@FreeBSD.org\n2006/06/07"]
jacula [label="Giuseppe Pilichi\njacula@FreeBSD.org\n2010/04/05"]
jadawin [label="Philippe Audeoud\njadawin@FreeBSD.org\n2008/03/02"]
+jase [label="Jase Thew\njase@FreeBSD.org\n2012/05/30"]
jgh [label="Jason Helfman\njgh@FreeBSD.org\n2011/12/16"]
jkim [label="Jung-uk Kim\njkim@FreeBSD.org\n2007/09/12"]
jlaffaye [label="Julien Laffaye\njlaffaye@FreeBSD.org\n2011/06/06"]
@@ -111,11 +113,11 @@ jpaetzel [label="Josh Paetzel\njpaetzel@FreeBSD.org\n2008/09/05"]
jsa [label="Joseph S. Atkinson\njsa@FreeBSD.org\n2010/07/15"]
jylefort [label="Jean-Yves Lefort\njylefort@FreeBSD.org\n2005/04/12"]
kevlo [label="Kevin Lo\nkevlo@FreeBSD.org\n2003/02/21"]
+kmoore [label="Kris Moore\nkmoore@FreeBSD.org\n2009/04/14"]
knu [label="Akinori Musha\nknu@FreeBSD.org\n2000/03/22"]
+koitsu [label="Jeremy Chadwick\nkoitsu@FreeBSD.org\n2006/11/10"]
krion [label="Kirill Ponomarew\nkrion@FreeBSD.org\n2003/07/20"]
-kmoore [label="Kris Moore\nkmoore@FreeBSD.org\n2009/04/14"]
kwm [label="Koop Mast\nkwm@FreeBSD.org\n2004/09/14"]
-koitsu [label="Jeremy Chadwick\nkoitsu@FreeBSD.org\n2006/11/10"]
laszlof [label="Frank Laszlo\nlaszlof@FreeBSD.org\n2006/11/07"]
lawrance [label="Sam Lawrance\nlawrance@FreeBSD.org\n2005/04/11\n2007/02/21"]
lbr [label="Lars Balker Rasmussen\nlbr@FreeBSD.org\n2006/04/30"]
@@ -138,6 +140,7 @@ martymac [label="Ganael Laplanche\nmartymac@FreeBSD.org\n2010/09/24"]
mat [label="Mathieu Arnold\nmat@FreeBSD.org\n2003/08/15"]
matthew [label="Matthew Seaman\nmatthew@FreeBSD.org\n2012/02/07"]
mezz [label="Jeremy Messenger\nmezz@FreeBSD.org\n2004/04/30"]
+mharo [label="Michael Haro\nmharo@FreeBSD.org\n1999/04/13"]
miwi [label="Martin Wilke\nmiwi@FreeBSD.org\n2006/06/04"]
mm [label="Martin Matuska\nmm@FreeBSD.org\n2007/04/04"]
mnag [label="Marcus Alves Grando\nmnag@FreeBSD.org\n2005/09/15"]
@@ -149,14 +152,14 @@ nork [label="Norikatsu Shigemura\nnork@FreeBSD.org\n2002/04/01"]
novel [label="Roman Bogorodskiy\nnovel@FreeBSD.org\n2005/03/07"]
nox [label="Juergen Lock\nnox@FreeBSD.org\n2006/12/22"]
obrien [label="David E. O'Brien\nobrien@FreeBSD.org\n1996/10/29"]
-mharo [label="Michael Haro\nmharo@FreeBSD.org\n1999/04/13"]
+olivierd [label="Olivier Duchateau\nolivierd@FreeBSD.org\n2012/05/29"]
osa [label="Sergey A. Osokin\nosa@FreeBSD.org\n2003/06/04"]
pat [label="Patrick Li\npat@FreeBSD.org\n2001/11/14"]
pav [label="Pav Lucistnik\npav@FreeBSD.org\n2003/11/12"]
pawel [label="Pawel Pekala\npawel@FreeBSD.org\n2011/03/11"]
pgj [label="Gabor Pali\npgj@FreeBSD.org\n2009/04/12"]
-philip [label="Philip Paeps\nphilip@FreeBSD.org\n2005/10/19"]
pgollucci [label="Philip M. Gollucci\npgollucci@FreeBSD.org\n2008/07/21"]
+philip [label="Philip Paeps\nphilip@FreeBSD.org\n2005/10/19"]
rafan [label="Rong-En Fan\nrafan@FreeBSD.org\n2006/06/23"]
rakuco [label="Raphael Kubo da Costa\nrakuco@FreeBSD.org\n2011/08/22"]
rene [label="Rene Ladan\nrene@FreeBSD.org\n2010/04/11"]
@@ -178,22 +181,24 @@ stas [label="Stanislav Sedov\nstas@FreeBSD.org\n2006/09/18"]
stefan [label="Stefan Walter\nstefan@FreeBSD.org\n2006/05/07"]
stephen [label="Stephen Montgomery-Smith\nstephen@FreeBSD.org\n2011/06/13"]
sunpoet [label="Po-Chuan Hsieh\nsunpoet@FreeBSD.org\n2010/09/21"]
-sylvio [label="Sylvio Cesar Teixeira\nsylvio@FreeBSD.org\n2009/10/29"]
swills [label="Steve Wills\nswills@FreeBSD.org\n2010/09/03"]
+sylvio [label="Sylvio Cesar Teixeira\nsylvio@FreeBSD.org\n2009/10/29"]
tabthorpe [label="Thomas Abthorpe\ntabthorpe@FreeBSD.org\n2007/08/20"]
tdb [label="Tim Bishop\ntdb@FreeBSD.org\n2005/11/30"]
+thierry [label="Thierry Thomas\nthierry@FreeBSD.org\n2004/03/15"]
timur [label="Timur Bakeyev\ntimur@FreeBSD.org\n2007/06/07"]
+tj [label="Tom Judge\ntj@FreeBSD.org\n2012/05/28"]
+tmclaugh [label="Tom McLaughlin\ntmclaugh@FreeBSD.org\n2005/09/15"]
tota [label="TAKATSU Tomonari\ntota@FreeBSD.org\n2009/03/30"]
trasz [label="Edward Tomasz Napierala\ntrasz@FreeBSD.org\n2007/04/12"]
trhodes [label="Tom Rhodes\ntrhodes@FreeBSD.org\n2004/07/06"]
-thierry [label="Thierry Thomas\nthierry@FreeBSD.org\n2004/03/15"]
-tmclaugh [label="Tom McLaughlin\ntmclaugh@FreeBSD.org\n2005/09/15"]
uqs [label="Ulrich Spoerlein\nuqs@FreeBSD.org\n2012/01/19"]
vd [label="Vasil Dimov\nvd@FreeBSD.org\n2006/01/19"]
wen [label="Wen Heping\nwen@FreeBSD.org\n2010/12/13"]
wxs [label="Wesley Shields\nwxs@FreeBSD.org\n2008/01/03"]
xride [label="Soeren Straarup\nxride@FreeBSD.org\n2006/09/27"]
yzlin [label="Yi-Jheng Lin\nyzlin@FreeBSD.org\n2009/07/19"]
+zeising [label="Niclas Zeising\nzeising@FreeBSD.org\n2012/07/03"]
zi [label="Ryan Steinmetz\nzi@FreeBSD.org\n2011/07/14"]
znerd [label="Ernst de Haan\nznerd@FreeBSD.org\n2001/11/15"]
@@ -242,9 +247,14 @@ clement -> lawrance
clsung -> lwhsu
clsung -> tabthorpe
+crees -> gjb
crees -> jgh
crees -> madpilot
+culot -> jase
+
+db -> tj
+
decke -> sperber
delphij -> nemoliu
@@ -253,6 +263,8 @@ delphij -> rafan
demon -> mat
eadler -> ak
+eadler -> gjb
+eadler -> tj
edwin -> cperciva
edwin -> erwin
@@ -277,6 +289,8 @@ fjoe -> flo
fjoe -> krion
fjoe -> osa
+flo -> jase
+
flz -> garga
flz -> johans
flz -> laszlof
@@ -332,6 +346,7 @@ krion -> sem
krion -> sergei
kwm -> jsa
+kwm -> zeising
lawrance -> itetcu
@@ -371,6 +386,7 @@ miwi -> makc
miwi -> mandree
miwi -> mva
miwi -> nox
+miwi -> olivierd
miwi -> pawel
miwi -> rm
miwi -> sbz
@@ -379,6 +395,7 @@ miwi -> sylvio
miwi -> tabthorpe
miwi -> trasz
miwi -> wen
+miwi -> zeising
mnag -> jmelo
@@ -413,6 +430,7 @@ rafan -> chinsan
rene -> crees
rene -> jgh
+rene -> olivierd
sahil -> culot
sahil -> eadler
diff --git a/share/misc/committers-src.dot b/share/misc/committers-src.dot
index c3f00d5..c0e600e 100644
--- a/share/misc/committers-src.dot
+++ b/share/misc/committers-src.dot
@@ -39,6 +39,7 @@ billf [label="Bill Fumerola\nbillf@FreeBSD.org\n1998/11/11\n2008/11/10"]
bmah [label="Bruce A. Mah\nbmah@FreeBSD.org\n2002/01/29\n2009/09/13"]
bmilekic [label="Bosko Milekic\nbmilekic@FreeBSD.org\n2000/09/21\n2008/11/10"]
bushman [label="Michael Bushkov\nbushman@FreeBSD.org\n2007/03/10\n2010/04/29"]
+ceri [label="Ceri Davies\nceri@FreeBSD.org\n2006/11/07\n2012/03/07"]
cjc [label="Crist J. Clark\ncjc@FreeBSD.org\n2001/06/01\n2006/12/29"]
dds [label="Diomidis Spinellis\ndds@FreeBSD.org\n2003/06/20\n2010/09/22"]
dhartmei [label="Daniel Hartmeier\ndhartmei@FreeBSD.org\n2004/04/06\n2008/12/08"]
@@ -58,20 +59,21 @@ jtc [label="J.T. Conklin\njtc@FreeBSD.org\n1993/06/12\n????/??/??"]
kbyanc [label="Kelly Yancey\nkbyanc@FreeBSD.org\n2000/07/11\n2006/07/25"]
keichii [label="Michael Wu\nkeichii@FreeBSD.org\n2001/03/07\n2006/04/28"]
linimon [label="Mark Linimon\nlinimon@FreeBSD.org\n2006/09/30\n2008/05/04"]
+lulf [label="Ulf Lilleengen\nlulf@FreeBSD.org\n2007/10/24\n2012/01/19"]
mb [label="Maxim Bolotin\nmb@FreeBSD.org\n2000/04/06\n2003/03/08"]
marks [label="Mark Santcroos\nmarks@FreeBSD.org\n2004/03/18\n2008/09/29"]
mike [label="Mike Barcroft\nmike@FreeBSD.org\n2001/07/17\n2006/04/28"]
msmith [label="Mike Smith\nmsmith@FreeBSD.org\n????/??/??\n2003/12/15"]
murray [label="Murray Stokely\nmurray@FreeBSD.org\n2000/04/05\n2010/07/25"]
+mux [label="Maxime Henrion\nmux@FreeBSD.org\n2002/03/03\n2011/06/22"]
nate [label="Nate Willams\nnate@FreeBSD.org\n1993/06/12\n2003/12/15"]
njl [label="Nate Lawson\nnjl@FreeBSD.org\n2002/08/07\n2008/02/16"]
non [label="Noriaki Mitsnaga\nnon@FreeBSD.org\n2000/06/19\n2007/03/06"]
onoe [label="Atsushi Onoe\nonoe@FreeBSD.org\n2000/07/21\n2008/11/10"]
+randi [label="Randi Harper\nrandi@FreeBSD.org\n2010/04/20\n2012/05/10"]
rgrimes [label="Rod Grimes\nrgrimes@FreeBSD.org\n1993/06/12\n2003/03/08"]
rink [label="Rink Springer\nrink@FreeBSD.org\n2006/01/16\n2010/11/04"]
robert [label="Robert Drehmel\nrobert@FreeBSD.org\n2001/08/23\n2006/05/13"]
-rmh [label="Robert Millan\nrmh@FreeBSD.org\n2011/09/18"]
-rpaulo [label="Rui Paulo\nrpaulo@FreeBSD.org\n2007/09/25\n2010/12/03"]
sah [label="Sam Hopkins\nsah@FreeBSD.org\n2004/12/15\n2008/11/10"]
shafeeq [label="Shafeeq Sinnamohideen\nshafeeq@FreeBSD.org\n2000/06/19\n2006/04/06"]
sheldonh [label="Sheldon Hearn\nsheldonh@FreeBSD.org\n1999/06/14\n2006/05/13"]
@@ -82,6 +84,7 @@ tmm [label="Thomas Moestl\ntmm@FreeBSD.org\n2001/03/07\n2006/07/12"]
toshi [label="Toshihiko Arai\ntoshi@FreeBSD.org\n2000/07/06\n2003/03/08"]
tshiozak [label="Takuya SHIOZAKI\ntshiozak@FreeBSD.org\n2001/04/25\n2003/03/08"]
uch [label="UCHIYAMA Yasushi\nuch@FreeBSD.org\n2000/06/21\n2002/04/24"]
+yar [label="Yar Tikhiy\nyar@FreeBSD.org\n2001/03/25\n2012/05/23"]
node [color=lightblue2, style=filled, bgcolor=black];
@@ -112,7 +115,6 @@ brueffer [label="Christian Brueffer\nbrueffer@FreeBSD.org\n2006/02/28"]
bruno [label="Bruno Ducrot\nbruno@FreeBSD.org\n2005/07/18"]
bschmidt [label="Bernhard Schmidt\nbschmidt@FreeBSD.org\n2010/02/06"]
bz [label="Bjoern A. Zeeb\nbz@FreeBSD.org\n2004/07/27"]
-ceri [label="Ceri Davies\nceri@FreeBSD.org\n2006/11/07"]
cognet [label="Olivier Houchard\ncognet@FreeBSD.org\n2002/10/09"]
cokane [label="Coleman Kane\ncokane@FreeBSD.org\n2000/06/19"]
cperciva [label="Colin Percival\ncperciva@FreeBSD.org\n2004/01/20"]
@@ -128,6 +130,7 @@ dg [label="David Greenman\ndg@FreeBSD.org\n1993/06/14"]
dim [label="Dimitry Andric\ndim@FreeBSD.org\n2010/08/30"]
dougb [label="Doug Barton\ndougb@FreeBSD.org\n2000/10/26"]
dteske [label="Devin Teske\ndteske@FreeBSD.org\n2012/04/10"]
+dumbbell [label="Jean-Sebastien Pedron\ndumbbell@FreeBSD.org\n2004/11/29"]
dwmalone [label="David Malone\ndwmalone@FreeBSD.org\n2000/07/11"]
ed [label="Ed Schouten\ned@FreeBSD.org\n2008/05/22"]
edwin [label="Edwin Groothuis\nedwin@FreeBSD.org\n2007/06/25"]
@@ -176,6 +179,7 @@ jon [label="Jonathan Chen\njon@FreeBSD.org\n2000/10/17"]
jonathan [label="Jonathan Anderson\njonathan@FreeBSD.org\n2010/10/07"]
jpaetzel [label="Josh Paetzel\njpaetzel@FreeBSD.org\n2011/01/21"]
julian [label="Julian Elischer\njulian@FreeBSD.org\n1993/??/??"]
+jwd [label="John De Boskey\njwd@FreeBSD.org\n2000/05/19"]
kaiw [label="Kai Wang\nkaiw@FreeBSD.org\n2007/09/26"]
kan [label="Alexander Kabaev\nkan@FreeBSD.org\n2002/07/21"]
kargl [label="Steven G. Kargl\nkargl@FreeBSD.org\n2011/01/17"]
@@ -185,7 +189,6 @@ kib [label="Konstantin Belousov\nkib@FreeBSD.org\n2006/06/03"]
kmacy [label="Kip Macy\nkmacy@FreeBSD.org\n2005/06/01"]
le [label="Lukas Ertl\nle@FreeBSD.org\n2004/02/02"]
lstewart [label="Lawrence Stewart\nlstewart@FreeBSD.org\n2008/10/06"]
-lulf [label="Ulf Lilleengen\nlulf@FreeBSD.org\n2007/10/24"]
marcel [label="Marcel Moolenaar\nmarcel@FreeBSD.org\n1999/07/03"]
marius [label="Marius Strobl\nmarius@FreeBSD.org\n2004/04/17"]
markm [label="Mark Murray\nmarkm@FreeBSD.org\n199?/??/??"]
@@ -197,10 +200,10 @@ mdf [label="Matthew Fleming\nmdf@FreeBSD.org\n2010/06/04"]
mdodd [label="Matthew N. Dodd\nmdodd@FreeBSD.org\n1999/07/27"]
melifaro [label="Alexander V. Chernikov\nmelifaro@FreeBSD.org\n2011/10/04"]
mjacob [label="Matt Jacob\nmjacob@FreeBSD.org\n1997/08/13"]
+mjg [label="Mateusz Guzik\nmjg@FreeBSD.org\n2012/06/04"]
mlaier [label="Max Laier\nmlaier@FreeBSD.org\n2004/02/10"]
monthadar [label="Monthadar Al Jaberi\nmonthadar@FreeBSD.org\n2012/04/02"]
mr [label="Michael Reifenberger\nmr@FreeBSD.org\n2001/09/30"]
-mux [label="Maxime Henrion\nmux@FreeBSD.org\n2002/03/03"]
neel [label="Neel Natu\nneel@FreeBSD.org\n2009/09/20"]
netchild [label="Alexander Leidinger\nnetchild@FreeBSD.org\n2005/03/31"]
nork [label="Norikatsu Shigemura\nnork@FreeBSD.org\n2009/06/09"]
@@ -211,7 +214,7 @@ olli [label="Oliver Fromme\nolli@FreeBSD.org\n2008/02/14"]
peadar [label="Peter Edwards\npeadar@FreeBSD.org\n2004/03/08"]
peter [label="Peter Wemm\npeter@FreeBSD.org\n????/??/??"]
pfg [label="Pedro Giffuni\npfg@FreeBSD.org\n2011/12/01"]
-philip [label="Philip Paeps\nphilip@FreBSD.org\n2004/01/21"]
+philip [label="Philip Paeps\nphilip@FreeBSD.org\n2004/01/21"]
phk [label="Poul-Henning Kamp\nphk@FreeBSD.org\n1994/02/21"]
pho [label="Peter Holm\npho@FreeBSD.org\n2008/11/16"]
pjd [label="Pawel Jakub Dawidek\npjd@FreeBSD.org\n2004/02/02"]
@@ -219,14 +222,15 @@ pluknet [label="Sergey Kandaurov\npluknet@FreeBSD.org\n2010/10/05"]
ps [label="Paul Saab\nps@FreeBSD.org\n2000/02/23"]
qingli [label="Qing Li\nqingli@FreeBSD.org\n2005/04/13"]
rafan [label="Rong-En Fan\nrafan@FreeBSD.org\n2007/01/31"]
-randi [label="Randi Harper\nrandi@FreeBSD.org\n2010/04/20"]
ray [label="Aleksandr Rybalko\nray@FreeBSD.org\n2011/05/25"]
rdivacky [label="Roman Divacky\nrdivacky@FreeBSD.org\n2008/03/13"]
remko [label="Remko Lodder\nremko@FreeBSD.org\n2007/02/23"]
rik [label="Roman Kurakin\nrik@FreeBSD.org\n2003/12/18"]
rmacklem [label="Rick Macklem\nrmacklem@FreeBSD.org\n2009/03/27"]
+rmh [label="Robert Millan\nrmh@FreeBSD.org\n2011/09/18"]
rnoland [label="Robert Noland\nrnoland@FreeBSD.org\n2008/09/15"]
roberto [label="Ollivier Robert\nroberto@FreeBSD.org\n1995/02/22"]
+rpaulo [label="Rui Paulo\nrpaulo@FreeBSD.org\n2007/09/25"]
rrs [label="Randall R Stewart\nrrs@FreeBSD.org\n2007/02/08"]
rse [label="Ralf S. Engelschall\nrse@FreeBSD.org\n1997/07/31"]
rstone [label="Ryan Stone\nrstone@FreeBSD.org\n2010/04/19"]
@@ -264,7 +268,6 @@ wes [label="Wes Peters\nwes@FreeBSD.org\n1998/11/25"]
wilko [label="Wilko Bulte\nwilko@FreeBSD.org\n2000/01/13"]
wollman [label="Garrett Wollman\nwollman@FreeBSD.org\n????/??/??"]
wsalamon [label="Wayne Salamon\nwsalamon@FreeBSD.org\n2005/06/25"]
-yar [label="Yar Tikhiy\nyar@FreeBSD.org\n2001/03/25"]
yongari [label="Pyun YongHyeon\nyongari@FreeBSD.org\n2004/08/01"]
zack [label="Zack Kirsch\nzack@FreeBSD.org\n2010/11/05"]
zec [label="Marko Zec\nzec@FreeBSD.org\n2008/06/22"]
@@ -433,10 +436,12 @@ jhb -> avg
jhb -> jeff
jhb -> kbyanc
jhb -> rnoland
+jhb -> pfg
jkh -> imp
jkh -> jlemon
jkh -> joerg
+jkh -> jwd
jkh -> phk
jkh -> wes
jkh -> yar
@@ -506,6 +511,7 @@ msmith -> scottl
murray -> delphij
mux -> cognet
+mux -> dumbbell
netchild -> ariff
@@ -539,6 +545,8 @@ pjd -> trociny
rgrimes -> markm
+rmacklem -> jwd
+
rpaulo -> avg
rpaulo -> bschmidt
rpaulo -> dim
@@ -596,6 +604,7 @@ thompsa -> weongyo
thompsa -> eri
trasz -> jh
+trasz -> mjg
ume -> jinmei
ume -> suz
diff --git a/share/misc/organization.dot b/share/misc/organization.dot
index 891097d..7931359 100644
--- a/share/misc/organization.dot
+++ b/share/misc/organization.dot
@@ -26,12 +26,12 @@ _misc [label="Miscellaneous Hats"]
# Development teams go here alphabetically sorted
core [label="Core Team\ncore@FreeBSD.org\nwilko, brooks, keramida, imp,\ngnn, wes, hrs, murray,\nrwatson"]
-coresecretary [label="Core Team Secretary\ncore-secretary@FreeBSD.org\njoel"]
+coresecretary [label="Core Team Secretary\ncore-secretary@FreeBSD.org\ngavin"]
doccommitters [label="Doc/www Committers\ndoc-committers@FreeBSD.org"]
-doceng [label="Documentation Engineering Team\ndoceng@FreeBSD.org\nnik, blackend, hrs,\nkeramida"]
+doceng [label="Documentation Engineering Team\ndoceng@FreeBSD.org\ngjb, blackend,\ngabor, hrs"]
portscommitters [label="Ports Committers\nports-committers@FreeBSD.org"]
-portmgr [label="Port Management Team\nportmgr@FreeBSD.org\nmarcus, kris, erwin,\nlinimon, pav, krion"]
-portmgrsecretary [label="Port Management Team Secretary\nportmgr-secretary@FreeBSD.org\nerwin"]
+portmgr [label="Port Management Team\nportmgr@FreeBSD.org\ntabthorpe, marcus, bapt, beat,\nerwin, linimon, pav,\nitetcu, flz, miwi"]
+portmgrsecretary [label="Port Management Team Secretary\nportmgr-secretary@FreeBSD.org\ntabthorpe"]
re [label="Primary Release Engineering Team\nre@FreeBSD.org\nmux, bmah, hrs, kensmith,\nmurray, rwatson, dwhite"]
realpha [label="FreeBSD/alpha Release Engineering Team\nre-alpha@FreeBSD.org\nwilko, murray, rwatson"]
reamd64 [label="FreeBSD/amd64 Release Engineering Team\nre-amd64@FreeBSD.org\nobrien"]
@@ -40,7 +40,7 @@ reia64 [label="FreeBSD/ia64 Release Engineering Team\nre-ia64@FreeBSD.org\nmarce
repc98 [label="FreeBSD/pc98 Release Engineering Team\nre-pc98@FreeBSD.org\nnyan"]
reppc [label="FreeBSD/ppc Release Engineering Team\nre-ppc@FreeBSD.org\ngrehan"]
resparc64 [label="FreeBSD/sparc64 Release Engineering Team\nre-sparc64@FreeBSD.org\njake, phk, tmm, obrien,\nkensmith, murray, rwatson"]
-secteam [label="Security Team\nsecteam@FreeBSD.org\nmnag, remko, gnn, simon, philip,\ncperciva, csjp, des,\nnectar, rwatson"]
+secteam [label="Security Team\nsecteam@FreeBSD.org\nsimon, qingli, delphij,\nremko, philip, stas, cperciva,\ncsjp, rwatson, miwi, bz"]
secteamsecretary [label="Security Team Secretary\nsecteam-secretary@FreeBSD.org\nremko"]
securityofficer [label="Security Officer Team\nsecurity-officer@FreeBSD.org\ncperciva, simon, nectar"]
srccommitters [label="Src Committers\nsrc-committers@FreeBSD.org"]
diff --git a/share/mk/bsd.README b/share/mk/bsd.README
index 51cfb39..f09142e 100644
--- a/share/mk/bsd.README
+++ b/share/mk/bsd.README
@@ -228,7 +228,7 @@ LDADD Additional loader objects. Usually used for libraries.
For example, to load with the compatibility and utility
libraries, use:
- LDFILES=-lutil -lcompat
+ LDADD=-lutil -lcompat
LDFLAGS Additional loader flags.
@@ -261,7 +261,7 @@ DPADD Additional dependencies for the program. Usually used for
libraries. For example, to depend on the compatibility and
utility libraries use:
- SRCLIB=${LIBCOMPAT} ${LIBUTIL}
+ DPADD=${LIBCOMPAT} ${LIBUTIL}
There is a predefined identifier for each (non-profiled,
non-shared) library and object. Library file names are
@@ -352,6 +352,10 @@ SRCS List of source files to build the library. Suffix types
to .c files of the same name. (This is not the default for
versions of make.)
+SHLIB_LDSCRIPT Template file to generate shared library linker script.
+ Unless used, a simple symlink is created to the real
+ shared object.
+
The include file <bsd.lib.mk> includes the file named "../Makefile.inc"
if it exists, as well as the include file <bsd.man.mk>.
diff --git a/share/mk/bsd.crunchgen.mk b/share/mk/bsd.crunchgen.mk
index 540c6d2..80d337f 100644
--- a/share/mk/bsd.crunchgen.mk
+++ b/share/mk/bsd.crunchgen.mk
@@ -105,7 +105,7 @@ $(CONF): Makefile
.MAKEFLAGS:= ${.MAKEFLAGS:N-P}
.ORDER: $(OUTPUTS) objs
$(OUTPUTS): $(CONF)
- MAKEOBJDIRPREFIX=${CRUNCHOBJS} crunchgen -fq -m $(OUTMK) \
+ MAKE=${MAKE} MAKEOBJDIRPREFIX=${CRUNCHOBJS} crunchgen -fq -m $(OUTMK) \
-c $(OUTC) $(CONF)
$(PROG): $(OUTPUTS) objs
diff --git a/share/mk/bsd.lib.mk b/share/mk/bsd.lib.mk
index a4abe2f..efaf9dc 100644
--- a/share/mk/bsd.lib.mk
+++ b/share/mk/bsd.lib.mk
@@ -74,7 +74,7 @@ PO_FLAG=-pg
${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET}
${CTFCONVERT_CMD}
-.cc.o:
+.cc.o .C.o .cpp.o .cxx.o:
${CXX} ${STATIC_CXXFLAGS} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
.cc.po .C.po .cpp.po .cxx.po:
@@ -271,6 +271,25 @@ _libinstall:
${_INSTALLFLAGS} ${_SHLINSTALLFLAGS} \
${SHLIB_NAME} ${DESTDIR}${SHLIBDIR}
.if defined(SHLIB_LINK)
+# ${_SHLIBDIRPREFIX} and ${_LDSCRIPTROOT} are both needed when cross-building
+# and when building 32 bits library shims. ${_SHLIBDIRPREFIX} is the directory
+# prefix where shared objects will be installed. ${_LDSCRIPTROOT} is the
+# directory prefix that will be used in generated ld(1) scripts. They cannot
+# be coalesced because of the way ld(1) handles the sysroot prefix (used in the
+# cross-toolchain):
+# - 64 bits libs are located under sysroot, so ${_LDSCRIPTROOT} must be empty.
+# - 32 bits shims are not, so ${_LDSCRIPTROOT} is used to specify their full
+# path. Note that ld(1) scripts are generated both during buildworld and
+# installworld; in the later case ${_LDSCRIPTROOT} must be obviously empty.
+# On the other hand, the use of ${_SHLIBDIRPREFIX} is more consistent since it
+# does not involve the logic of a tool we do not own.
+.if defined(SHLIB_LDSCRIPT) && !empty(SHLIB_LDSCRIPT) && exists(${.CURDIR}/${SHLIB_LDSCRIPT})
+ sed -e 's,@@SHLIB@@,${_LDSCRIPTROOT}${SHLIBDIR}/${SHLIB_NAME},g' \
+ -e 's,@@LIBDIR@@,${_LDSCRIPTROOT}${LIBDIR},g' \
+ ${.CURDIR}/${SHLIB_LDSCRIPT} > lib${LIB}.ld
+ ${INSTALL} -S -C -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
+ ${_INSTALLFLAGS} lib${LIB}.ld ${DESTDIR}${LIBDIR}/${SHLIB_LINK}
+.else
.if ${SHLIBDIR} == ${LIBDIR}
ln -fs ${SHLIB_NAME} ${DESTDIR}${LIBDIR}/${SHLIB_LINK}
.else
@@ -281,8 +300,9 @@ _libinstall:
rm -f ${DESTDIR}${LIBDIR}/${SHLIB_NAME}
.endif
.endif
-.endif
-.endif
+.endif # SHLIB_LDSCRIPT
+.endif # SHLIB_LINK
+.endif # SHIB_NAME
.if defined(INSTALL_PIC_ARCHIVE) && defined(LIB) && !empty(LIB) && ${MK_TOOLCHAIN} != "no"
${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
${_INSTALLFLAGS} lib${LIB}_pic.a ${DESTDIR}${LIBDIR}
@@ -350,6 +370,9 @@ clean:
.endif
.if defined(SHLIB_NAME)
.if defined(SHLIB_LINK)
+.if defined(SHLIB_LDSCRIPT) && exists(${.CURDIR}/${SHLIB_LDSCRIPT})
+ rm -f lib${LIB}.ld
+.endif
rm -f ${SHLIB_LINK}
.endif
.if defined(LIB) && !empty(LIB)
diff --git a/share/mk/bsd.libnames.mk b/share/mk/bsd.libnames.mk
index 564074e..5e41c5c 100644
--- a/share/mk/bsd.libnames.mk
+++ b/share/mk/bsd.libnames.mk
@@ -135,6 +135,7 @@ LIBPANEL?= ${DESTDIR}${LIBDIR}/libpanel.a
LIBPCAP?= ${DESTDIR}${LIBDIR}/libpcap.a
LIBPMC?= ${DESTDIR}${LIBDIR}/libpmc.a
LIBPROC?= ${DESTDIR}${LIBDIR}/libproc.a
+LIBPROCSTAT?= ${DESTDIR}${LIBDIR}/libprocstat.a
LIBPTHREAD?= ${DESTDIR}${LIBDIR}/libpthread.a
LIBRADIUS?= ${DESTDIR}${LIBDIR}/libradius.a
LIBREADLINE?= ${DESTDIR}${LIBDIR}/libreadline.a
diff --git a/share/mk/bsd.own.mk b/share/mk/bsd.own.mk
index 55d6ba2..ba4a896 100644
--- a/share/mk/bsd.own.mk
+++ b/share/mk/bsd.own.mk
@@ -334,6 +334,7 @@ __DEFAULT_YES_OPTIONS = \
CXX \
DICT \
DYNAMICROOT \
+ ED_CRYPTO \
EXAMPLES \
FLOPPY \
FORTH \
@@ -366,6 +367,7 @@ __DEFAULT_YES_OPTIONS = \
LOCALES \
LOCATE \
LPR \
+ LS_COLORS \
MAIL \
MAILWRAPPER \
MAKE \
@@ -383,6 +385,7 @@ __DEFAULT_YES_OPTIONS = \
OPENSSL \
PAM \
PF \
+ PKGBOOTSTRAP \
PKGTOOLS \
PMC \
PORTSNAP \
@@ -421,11 +424,15 @@ __DEFAULT_NO_OPTIONS = \
CLANG_EXTRAS \
CLANG_IS_CC \
CTF \
+ GNU_SORT \
HESIOD \
ICONV \
IDEA \
+ INSTALL_AS_USER \
LIBCPLUSPLUS \
- OFED
+ NAND \
+ OFED \
+ SHARED_TOOLCHAIN
#
# Default behaviour of some options depends on the architecture. Unfortunately
@@ -441,8 +448,7 @@ __T=${TARGET_ARCH}
__T=${MACHINE_ARCH}
.endif
# Clang is only for x86 and powerpc right now, by default.
-# XXX: Temporarily disabled for 32-bit powerpc, due to a binutils bug.
-.if ${__T} == "amd64" || ${__T} == "i386" || ${__T} == "powerpc64"
+.if ${__T} == "amd64" || ${__T} == "i386" || ${__T:Mpowerpc*}
__DEFAULT_YES_OPTIONS+=CLANG
.else
__DEFAULT_NO_OPTIONS+=CLANG
@@ -635,12 +641,23 @@ MK_${vv:H}:= ${MK_${vv:T}}
.if ${MK_CTF} != "no"
CTFCONVERT_CMD= ${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.elif ${MAKE_VERSION} >= 5201111300
+.elif defined(MAKE_VERSION) && ${MAKE_VERSION} >= 5201111300
CTFCONVERT_CMD=
.else
CTFCONVERT_CMD= @:
.endif
+.if ${MK_INSTALL_AS_USER} != "no"
+_uid!= id -un
+.if ${_uid} != 0
+_gid!= id -gn
+.for x in BIN CONF DOC INFO KMOD LIB MAN NLS SHARE
+$xOWN= ${_uid}
+$xGRP= ${_gid}
+.endfor
+.endif
+.endif
+
.endif # !_WITHOUT_SRCCONF
.endif # !target(__<bsd.own.mk>__)
diff --git a/share/mk/bsd.sys.mk b/share/mk/bsd.sys.mk
index f023750..28c1a18 100644
--- a/share/mk/bsd.sys.mk
+++ b/share/mk/bsd.sys.mk
@@ -61,7 +61,8 @@ CWARNFLAGS+= -Wno-uninitialized
CWARNFLAGS+= -Wno-pointer-sign
# Clang has more warnings enabled by default, and when using -Wall, so if WARNS
# is set to low values, these have to be disabled explicitly.
-.if ${MK_CLANG_IS_CC} != "no" || ${CC:T:Mclang} == "clang"
+.if (${MK_CLANG_IS_CC} != "no" || ${CC:T:Mclang} == "clang") && \
+ !defined(EARLY_BUILD)
.if ${WARNS} <= 6
CWARNFLAGS+= -Wno-empty-body -Wno-string-plus-int
.endif # WARNS <= 6
@@ -88,7 +89,8 @@ WFORMAT= 1
.if ${WFORMAT} > 0
#CWARNFLAGS+= -Wformat-nonliteral -Wformat-security -Wno-format-extra-args
CWARNFLAGS+= -Wformat=2 -Wno-format-extra-args
-.if ${MK_CLANG_IS_CC} != "no" || ${CC:T:Mclang} == "clang"
+.if (${MK_CLANG_IS_CC} != "no" || ${CC:T:Mclang} == "clang") && \
+ !defined(EARLY_BUILD)
.if ${WARNS} <= 3
CWARNFLAGS+= -Wno-format-nonliteral
.endif # WARNS <= 3
@@ -109,7 +111,8 @@ CWARNFLAGS+= -Wno-format
CWARNFLAGS+= -Wno-unknown-pragmas
.endif # IGNORE_PRAGMA
-.if ${MK_CLANG_IS_CC} != "no" || ${CC:T:Mclang} == "clang"
+.if (${MK_CLANG_IS_CC} != "no" || ${CC:T:Mclang} == "clang") && \
+ !defined(EARLY_BUILD)
CLANG_NO_IAS= -no-integrated-as
CLANG_OPT_SMALL= -mstack-alignment=8 -mllvm -inline-threshold=3\
-mllvm -enable-load-pre=false -mllvm -simplifycfg-dup-ret
diff --git a/share/skel/dot.cshrc b/share/skel/dot.cshrc
index 5fa2319..b665825 100644
--- a/share/skel/dot.cshrc
+++ b/share/skel/dot.cshrc
@@ -3,13 +3,14 @@
# .cshrc - csh resource script, read at beginning of execution by each shell
#
# see also csh(1), environ(7).
+# more examples available at /usr/share/examples/csh/
#
alias h history 25
alias j jobs -l
-alias la ls -a
+alias la ls -aF
alias lf ls -FA
-alias ll ls -lA
+alias ll ls -lAF
# A righteous umask
umask 22
@@ -17,18 +18,29 @@ umask 22
set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin $HOME/bin)
setenv EDITOR vi
-setenv PAGER more
+setenv PAGER less
setenv BLOCKSIZE K
if ($?prompt) then
# An interactive shell -- set some stuff up
+ if ($uid == 0) then
+ set user = root
+ endif
+ set prompt = "%n@%m:%/ %# "
+ set promptchars = "%#"
+
set filec
- set history = 100
- set savehist = 100
+ set history = 1000
+ set savehist = (1000 merge)
+ set autolist = ambiguous
+ # Use history to aid expansion
+ set autoexpand
+ set autorehash
set mail = (/var/mail/$USER)
if ( $?tcsh ) then
bindkey "^W" backward-delete-word
bindkey -k up history-search-backward
bindkey -k down history-search-forward
endif
+
endif
diff --git a/share/syscons/keymaps/INDEX.keymaps b/share/syscons/keymaps/INDEX.keymaps
index 95681f4..04b4fa2 100644
--- a/share/syscons/keymaps/INDEX.keymaps
+++ b/share/syscons/keymaps/INDEX.keymaps
@@ -378,6 +378,8 @@ ru.koi8-r.win.kbd:pt:Russo koi8-r (winkeys)
ru.koi8-r.win.kbd:es:Ruso koi8-r (winkeys)
ru.koi8-r.win.kbd:uk:Рос╕йська koi8-r (winkeys)
+spanish.dvorak.kbd:en:Spanish Dvorak
+
spanish.iso.kbd:en:Spanish ISO-8859-1
spanish.iso.kbd:de:Spanisch ISO-8859-1
spanish.iso.kbd:fr:Espagnol ISO-8859-1
diff --git a/share/syscons/keymaps/Makefile b/share/syscons/keymaps/Makefile
index 3eefc2c..883ffba 100644
--- a/share/syscons/keymaps/Makefile
+++ b/share/syscons/keymaps/Makefile
@@ -36,6 +36,7 @@ FILES= INDEX.keymaps \
ru.cp866.kbd ru.iso5.kbd \
si.iso.kbd \
sk.iso2.kbd \
+ spanish.dvorak.kbd \
spanish.iso.kbd spanish.iso.acc.kbd spanish.iso15.acc.kbd \
swedish.iso.kbd swedish.cp850.kbd \
swissfrench.iso.kbd swissfrench.iso.acc.kbd swissfrench.cp850.kbd \
diff --git a/share/syscons/keymaps/spanish.dvorak.kbd b/share/syscons/keymaps/spanish.dvorak.kbd
new file mode 100644
index 0000000..022a87d
--- /dev/null
+++ b/share/syscons/keymaps/spanish.dvorak.kbd
@@ -0,0 +1,139 @@
+# $FreeBSD$
+# alt
+# scan cntrl alt alt cntrl lock
+# code base shift cntrl shift alt shift cntrl shift state
+# ------------------------------------------------------------------
+ 000 nop nop nop nop nop nop nop nop O
+ 001 esc esc esc esc esc esc debug esc O
+ 002 '1' '!' nop nop '|' '!' nop nop O
+ 003 '2' '"' nop nop '@' '"' nop nop O
+ 004 '3' 183 nop nop '#' '#' nop nop O
+ 005 '4' '$' nop nop '~' '~' nop nop O
+ 006 '5' '%' nop nop '5' '%' nop nop O
+ 007 '6' '&' nop nop 172 172 nop nop O
+ 008 '7' '/' nop nop '7' '/' nop nop O
+ 009 '8' '(' nop nop '8' '(' nop nop O
+ 010 '9' ')' nop nop '9' ')' nop nop O
+ 011 '0' '=' nop nop '0' '=' nop nop O
+ 012 ''' '?' nop nop ''' '?' nop nop O
+ 013 161 191 nop nop 161 191 nop nop O
+ 014 bs bs del del bs bs del del O
+ 015 ht btab nop nop ht btab nop nop O
+ 016 '.' ':' nop nop '.' ':' nop nop O
+ 017 ',' ';' nop nop ',' ';' nop nop O
+ 018 241 209 nop nop '~' '~' nop nop O
+ 019 'p' 'P' dle dle 'p' 'P' dle dle C
+ 020 'y' 'Y' em em 'y' 'Y' em em C
+ 021 'f' 'F' ack ack 'f' 'F' ack ack C
+ 022 'g' 'G' bel bel 'g' 'G' bel bel C
+ 023 'c' 'C' etx etx 'c' 'C' etx etx C
+ 024 'h' 'H' bs bs 'h' 'H' bs bs C
+ 025 'l' 'L' ff ff 'l' 'L' ff ff C
+ 026 dgra dcir esc esc '[' '[' esc esc O
+ 027 '+' '*' gs gs ']' ']' gs gs O
+ 028 cr cr nl nl cr cr nl nl O
+ 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O
+ 030 'a' 'A' soh soh 'a' 'A' soh soh C
+ 031 'o' 'O' si si 243 211 si si C
+ 032 'e' 'E' enq enq 164 164 enq enq C
+ 033 'u' 'U' nak nak 250 218 nak nak C
+ 034 'i' 'I' ht ht 237 205 ht ht C
+ 035 'd' 'D' eot eot 'd' 'D' eot eot C
+ 036 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C
+ 037 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C
+ 038 'n' 'N' so so 'n' 'N' so so C
+ 039 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C
+ 040 dacu duml nop nop '{' '{' nop nop O
+ 041 '\' '|' fs fs '\' '|' fs fs O
+ 042 lshift lshift lshift lshift lshift lshift lshift lshift O
+ 043 231 199 rs rs '}' '}' rs rs O
+ 044 '-' '_' us us '-' '_' us us O
+ 045 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C
+ 046 'j' 'J' nl nl 'j' 'J' nl nl C
+ 047 'k' 'K' vt vt 'k' 'K' vt vt C
+ 048 'x' 'X' can can 'x' 'X' can can C
+ 049 'b' 'B' stx stx 'b' 'B' stx stx C
+ 050 'm' 'M' cr cr 'm' 'M' cr cr C
+ 051 'w' 'W' etb etb 'w' 'W' etb etb C
+ 052 'v' 'V' syn syn 'v' 'V' syn syn C
+ 053 'z' 'Z' sub sub 'z' 'Z' sub sub C
+ 054 rshift rshift rshift rshift rshift rshift rshift rshift O
+ 055 '*' '*' '*' '*' '*' '*' '*' '*' O
+ 056 lalt lalt lalt lalt lalt lalt lalt lalt O
+ 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O
+ 058 clock clock clock clock clock clock clock clock O
+ 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O
+ 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O
+ 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O
+ 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O
+ 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O
+ 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O
+ 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O
+ 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O
+ 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O
+ 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O
+ 069 nlock nlock nlock nlock nlock nlock nlock nlock O
+ 070 slock slock slock slock slock slock slock slock O
+ 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N
+ 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N
+ 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N
+ 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N
+ 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N
+ 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N
+ 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N
+ 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N
+ 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N
+ 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N
+ 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N
+ 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N
+ 083 del '.' '.' '.' '.' '.' boot boot N
+ 084 nop nop nop nop nop nop nop nop O
+ 085 nop nop nop nop nop nop nop nop O
+ 086 '<' '>' nop nop '<' '>' nop nop O
+ 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O
+ 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O
+ 089 cr cr nl nl cr cr nl nl O
+ 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O
+ 091 '/' '/' '/' '/' '/' '/' '/' '/' N
+ 092 nscr pscr debug debug nop nop nop nop O
+ 093 ralt ralt ralt ralt ralt ralt ralt ralt O
+ 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O
+ 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O
+ 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O
+ 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O
+ 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O
+ 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O
+ 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O
+ 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O
+ 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O
+ 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O
+ 104 slock saver slock saver susp nop susp nop O
+ 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O
+ 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O
+ 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O
+ 108 nop nop nop nop nop nop nop nop O
+
+ dgra '`' ( 'a' 224 ) ( 'A' 192 ) ( 'e' 232 ) ( 'E' 200 )
+ ( 'i' 236 ) ( 'I' 204 ) ( 'o' 242 ) ( 'O' 210 )
+ ( 'u' 249 ) ( 'U' 217 )
+ dacu 180 ( 'a' 225 ) ( 'A' 193 ) ( 'e' 233 ) ( 'E' 201 )
+ ( 'i' 237 ) ( 'I' 205 ) ( 'o' 243 ) ( 'O' 211 )
+ ( 'u' 250 ) ( 'U' 218 ) ( 'y' 253 ) ( 'Y' 221 )
+ dcir '^' ( 'a' 226 ) ( 'A' 194 ) ( 'e' 234 ) ( 'E' 202 )
+ ( 'i' 238 ) ( 'I' 206 ) ( 'o' 244 ) ( 'O' 212 )
+ ( 'u' 251 ) ( 'U' 219 )
+ dtil '~' ( 'a' 227 ) ( 'A' 195 ) ( 'n' 241 ) ( 'N' 209 )
+ ( 'o' 245 ) ( 'O' 213 )
+ dmac 000
+ dbre 000
+ ddot 000
+ duml 168 ( 'a' 228 ) ( 'A' 196 ) ( 'e' 235 ) ( 'E' 203 )
+ ( 'i' 239 ) ( 'I' 207 ) ( 'o' 246 ) ( 'O' 214 )
+ ( 'u' 252 ) ( 'U' 220 ) ( 'y' 255 )
+ dsla 000
+ drin 176 ( 'a' 229 ) ( 'A' 197 )
+ dced 184 ( 'c' 231 ) ( 'C' 199 )
+ dapo 000
+ ddac 000
+ dogo 000
+ dcar 000
diff --git a/share/termcap/termcap.5 b/share/termcap/termcap.5
index 1fae963..1f9c7ea 100644
--- a/share/termcap/termcap.5
+++ b/share/termcap/termcap.5
@@ -1821,7 +1821,7 @@ from the status line can be given as
.Sy \&ts
and
.Sy \&fs .
-.Pf ( Xr \&fs
+.Pf ( Sy \&fs
must leave the cursor position in the same place that it was before
.Sy \&ts .
If necessary, the
@@ -2067,7 +2067,7 @@ for ^C.
.Pp
Other specific terminal problems may be corrected by adding more
capabilities of the form
-.Sy x Em x .
+.Sy x Ns Em x .
.Ss Similar Terminals
If there are two very similar terminals,
one can be defined as being just like the other with certain exceptions.
OpenPOWER on IntegriCloud