Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 2 Aug 2011 08:31:23 +0000 (UTC)
From:      Adrian Chadd <adrian@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r224599 - in user/adrian/if_ath_tx: cddl/contrib/opensolaris/cmd/ztest cddl/contrib/opensolaris/lib/libzfs/common contrib/bsnmp/snmp_usm contrib/gcc/cp etc/rc.d lib/libmemstat lib/libus...
Message-ID:  <201108020831.p728VNlH036542@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: adrian
Date: Tue Aug  2 08:31:23 2011
New Revision: 224599
URL: http://svn.freebsd.org/changeset/base/224599

Log:
  MFC

Added:
  user/adrian/if_ath_tx/tools/tools/ath/athradar/
     - copied from r224594, head/tools/tools/ath/athradar/
Modified:
  user/adrian/if_ath_tx/cddl/contrib/opensolaris/cmd/ztest/ztest.c
  user/adrian/if_ath_tx/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c
  user/adrian/if_ath_tx/contrib/bsnmp/snmp_usm/snmp_usm.3
  user/adrian/if_ath_tx/contrib/gcc/cp/ChangeLog
  user/adrian/if_ath_tx/contrib/gcc/cp/decl.c
  user/adrian/if_ath_tx/etc/rc.d/kld
  user/adrian/if_ath_tx/lib/libmemstat/libmemstat.3
  user/adrian/if_ath_tx/lib/libmemstat/memstat.c
  user/adrian/if_ath_tx/lib/libmemstat/memstat.h
  user/adrian/if_ath_tx/lib/libmemstat/memstat_internal.h
  user/adrian/if_ath_tx/lib/libmemstat/memstat_malloc.c
  user/adrian/if_ath_tx/lib/libmemstat/memstat_uma.c
  user/adrian/if_ath_tx/lib/libusbhid/parse.c
  user/adrian/if_ath_tx/libexec/tftpd/tftp-transfer.c
  user/adrian/if_ath_tx/libexec/tftpd/tftpd.8
  user/adrian/if_ath_tx/release/amd64/make-memstick.sh
  user/adrian/if_ath_tx/release/doc/en_US.ISO8859-1/hardware/article.sgml
  user/adrian/if_ath_tx/release/i386/make-memstick.sh
  user/adrian/if_ath_tx/release/powerpc/make-memstick.sh
  user/adrian/if_ath_tx/sbin/mount/mount.c
  user/adrian/if_ath_tx/share/man/man4/dc.4
  user/adrian/if_ath_tx/share/man/man4/gif.4
  user/adrian/if_ath_tx/share/man/man4/hptiop.4
  user/adrian/if_ath_tx/share/man/man4/lmc.4
  user/adrian/if_ath_tx/share/man/man4/mpt.4
  user/adrian/if_ath_tx/share/man/man4/pcm.4
  user/adrian/if_ath_tx/share/man/man4/rue.4
  user/adrian/if_ath_tx/share/man/man4/smp.4
  user/adrian/if_ath_tx/share/man/man4/stf.4
  user/adrian/if_ath_tx/share/man/man4/wi.4
  user/adrian/if_ath_tx/share/man/man5/reiserfs.5
  user/adrian/if_ath_tx/share/man/man8/crash.8
  user/adrian/if_ath_tx/share/man/man9/taskqueue.9
  user/adrian/if_ath_tx/share/man/man9/vfs_getopt.9
  user/adrian/if_ath_tx/sys/amd64/amd64/machdep.c
  user/adrian/if_ath_tx/sys/boot/forth/loader.conf
  user/adrian/if_ath_tx/sys/cam/ata/ata_da.c
  user/adrian/if_ath_tx/sys/cam/cam_periph.c
  user/adrian/if_ath_tx/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c
  user/adrian/if_ath_tx/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c
  user/adrian/if_ath_tx/sys/compat/linprocfs/linprocfs.c
  user/adrian/if_ath_tx/sys/conf/NOTES
  user/adrian/if_ath_tx/sys/conf/newvers.sh
  user/adrian/if_ath_tx/sys/conf/options
  user/adrian/if_ath_tx/sys/dev/ahci/ahci.c
  user/adrian/if_ath_tx/sys/dev/ahci/ahci.h
  user/adrian/if_ath_tx/sys/dev/ata/ata-pci.c
  user/adrian/if_ath_tx/sys/dev/ata/ata-pci.h
  user/adrian/if_ath_tx/sys/dev/ata/chipsets/ata-acard.c
  user/adrian/if_ath_tx/sys/dev/ata/chipsets/ata-acerlabs.c
  user/adrian/if_ath_tx/sys/dev/ata/chipsets/ata-intel.c
  user/adrian/if_ath_tx/sys/dev/ata/chipsets/ata-promise.c
  user/adrian/if_ath_tx/sys/dev/ath/ath_dfs/null/dfs_null.c
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ah.h
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ah_desc.h
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ah_eeprom.h
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ah_eeprom_9287.c
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ah_eeprom_v14.c
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ah_eeprom_v14.h
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ah_eeprom_v4k.c
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ar5212/ar5212_ani.c
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ar5416/ar5416.h
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ar5416/ar5416_ani.c
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ar5416/ar5416_misc.c
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ar5416/ar5416_recv.c
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ar9002/ar9280.c
  user/adrian/if_ath_tx/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c
  user/adrian/if_ath_tx/sys/dev/ath/if_ath.c
  user/adrian/if_ath_tx/sys/dev/ath/if_ath_sysctl.c
  user/adrian/if_ath_tx/sys/dev/ath/if_athvar.h
  user/adrian/if_ath_tx/sys/dev/hptiop/hptiop.c
  user/adrian/if_ath_tx/sys/dev/mpt/mpt.c
  user/adrian/if_ath_tx/sys/dev/mpt/mpt.h
  user/adrian/if_ath_tx/sys/dev/mpt/mpt_cam.c
  user/adrian/if_ath_tx/sys/dev/mpt/mpt_debug.c
  user/adrian/if_ath_tx/sys/dev/mpt/mpt_pci.c
  user/adrian/if_ath_tx/sys/dev/mpt/mpt_raid.c
  user/adrian/if_ath_tx/sys/dev/mpt/mpt_raid.h
  user/adrian/if_ath_tx/sys/dev/mpt/mpt_user.c
  user/adrian/if_ath_tx/sys/dev/pci/pci.c
  user/adrian/if_ath_tx/sys/dev/re/if_re.c
  user/adrian/if_ath_tx/sys/dev/usb/input/ums.c
  user/adrian/if_ath_tx/sys/fs/cd9660/iso.h
  user/adrian/if_ath_tx/sys/fs/msdosfs/msdosfsmount.h
  user/adrian/if_ath_tx/sys/fs/nfsclient/nfs_clvnops.c
  user/adrian/if_ath_tx/sys/fs/nfsserver/nfs_nfsdserv.c
  user/adrian/if_ath_tx/sys/fs/ntfs/ntfs.h
  user/adrian/if_ath_tx/sys/fs/smbfs/smbfs.h
  user/adrian/if_ath_tx/sys/i386/i386/machdep.c
  user/adrian/if_ath_tx/sys/kern/kern_conf.c
  user/adrian/if_ath_tx/sys/kern/kern_jail.c
  user/adrian/if_ath_tx/sys/kern/kern_linker.c
  user/adrian/if_ath_tx/sys/kern/kern_lock.c
  user/adrian/if_ath_tx/sys/kern/kern_shutdown.c
  user/adrian/if_ath_tx/sys/kern/subr_smp.c
  user/adrian/if_ath_tx/sys/kern/sys_capability.c
  user/adrian/if_ath_tx/sys/kern/vfs_mount.c
  user/adrian/if_ath_tx/sys/kern/vfs_subr.c
  user/adrian/if_ath_tx/sys/net/if_lagg.c
  user/adrian/if_ath_tx/sys/netgraph/ng_ether.c
  user/adrian/if_ath_tx/sys/netgraph/ng_mppc.c
  user/adrian/if_ath_tx/sys/netgraph/ng_parse.c
  user/adrian/if_ath_tx/sys/netinet/ip_divert.c
  user/adrian/if_ath_tx/sys/pc98/pc98/machdep.c
  user/adrian/if_ath_tx/sys/pci/if_rlreg.h
  user/adrian/if_ath_tx/sys/powerpc/aim/locore32.S
  user/adrian/if_ath_tx/sys/powerpc/booke/locore.S
  user/adrian/if_ath_tx/sys/powerpc/conf/MPC85XX
  user/adrian/if_ath_tx/sys/powerpc/mpc85xx/atpic.c
  user/adrian/if_ath_tx/sys/powerpc/powermac/fcu.c
  user/adrian/if_ath_tx/sys/sys/mount.h
  user/adrian/if_ath_tx/sys/sys/systm.h
  user/adrian/if_ath_tx/sys/ufs/ffs/ffs_alloc.c
  user/adrian/if_ath_tx/sys/ufs/ffs/ffs_softdep.c
  user/adrian/if_ath_tx/sys/ufs/ffs/ffs_vfsops.c
  user/adrian/if_ath_tx/sys/ufs/ffs/ffs_vnops.c
  user/adrian/if_ath_tx/sys/ufs/ufs/inode.h
  user/adrian/if_ath_tx/sys/vm/device_pager.c
  user/adrian/if_ath_tx/sys/vm/swap_pager.c
  user/adrian/if_ath_tx/sys/vm/swap_pager.h
  user/adrian/if_ath_tx/tools/tools/ath/Makefile
  user/adrian/if_ath_tx/tools/tools/sysdoc/tunables.mdoc
  user/adrian/if_ath_tx/usr.bin/cpio/Makefile
  user/adrian/if_ath_tx/usr.bin/netstat/sctp.c
  user/adrian/if_ath_tx/usr.bin/tar/Makefile
  user/adrian/if_ath_tx/usr.bin/unzip/unzip.1
  user/adrian/if_ath_tx/usr.bin/usbhidaction/usbhidaction.c
  user/adrian/if_ath_tx/usr.bin/usbhidctl/usbhid.c
  user/adrian/if_ath_tx/usr.sbin/bsdinstall/scripts/netconfig_ipv4
  user/adrian/if_ath_tx/usr.sbin/bsnmpd/tools/bsnmptools/bsnmpget.1
  user/adrian/if_ath_tx/usr.sbin/faithd/faithd.8
  user/adrian/if_ath_tx/usr.sbin/jail/jail.8
  user/adrian/if_ath_tx/usr.sbin/mfiutil/mfi_show.c
  user/adrian/if_ath_tx/usr.sbin/pw/pw_user.c
Directory Properties:
  user/adrian/if_ath_tx/   (props changed)
  user/adrian/if_ath_tx/cddl/contrib/opensolaris/   (props changed)
  user/adrian/if_ath_tx/contrib/compiler-rt/   (props changed)
  user/adrian/if_ath_tx/contrib/ee/   (props changed)
  user/adrian/if_ath_tx/contrib/expat/   (props changed)
  user/adrian/if_ath_tx/contrib/file/   (props changed)
  user/adrian/if_ath_tx/contrib/gdb/   (props changed)
  user/adrian/if_ath_tx/contrib/gnu-sort/   (props changed)
  user/adrian/if_ath_tx/contrib/groff/   (props changed)
  user/adrian/if_ath_tx/contrib/less/   (props changed)
  user/adrian/if_ath_tx/contrib/libpcap/   (props changed)
  user/adrian/if_ath_tx/contrib/ncurses/   (props changed)
  user/adrian/if_ath_tx/contrib/one-true-awk/   (props changed)
  user/adrian/if_ath_tx/contrib/openbsm/   (props changed)
  user/adrian/if_ath_tx/contrib/openpam/   (props changed)
  user/adrian/if_ath_tx/contrib/pf/   (props changed)
  user/adrian/if_ath_tx/contrib/tcpdump/   (props changed)
  user/adrian/if_ath_tx/contrib/tcsh/   (props changed)
  user/adrian/if_ath_tx/contrib/tnftp/   (props changed)
  user/adrian/if_ath_tx/contrib/tzcode/stdtime/   (props changed)
  user/adrian/if_ath_tx/contrib/tzcode/zic/   (props changed)
  user/adrian/if_ath_tx/contrib/tzdata/   (props changed)
  user/adrian/if_ath_tx/contrib/wpa/   (props changed)
  user/adrian/if_ath_tx/lib/libutil/   (props changed)
  user/adrian/if_ath_tx/lib/libz/   (props changed)
  user/adrian/if_ath_tx/sbin/   (props changed)
  user/adrian/if_ath_tx/sbin/ipfw/   (props changed)
  user/adrian/if_ath_tx/share/mk/bsd.arch.inc.mk   (props changed)
  user/adrian/if_ath_tx/sys/contrib/dev/acpica/   (props changed)
  user/adrian/if_ath_tx/usr.bin/csup/   (props changed)
  user/adrian/if_ath_tx/usr.bin/procstat/   (props changed)
  user/adrian/if_ath_tx/usr.sbin/rtadvctl/   (props changed)
  user/adrian/if_ath_tx/usr.sbin/rtadvd/   (props changed)

Modified: user/adrian/if_ath_tx/cddl/contrib/opensolaris/cmd/ztest/ztest.c
==============================================================================
--- user/adrian/if_ath_tx/cddl/contrib/opensolaris/cmd/ztest/ztest.c	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/cddl/contrib/opensolaris/cmd/ztest/ztest.c	Tue Aug  2 08:31:23 2011	(r224599)
@@ -205,6 +205,7 @@ typedef struct ztest_od {
  */
 typedef struct ztest_ds {
 	objset_t	*zd_os;
+	rwlock_t	zd_zilog_lock;
 	zilog_t		*zd_zilog;
 	uint64_t	zd_seq;
 	ztest_od_t	*zd_od;		/* debugging aid */
@@ -238,6 +239,7 @@ ztest_func_t ztest_dmu_commit_callbacks;
 ztest_func_t ztest_zap;
 ztest_func_t ztest_zap_parallel;
 ztest_func_t ztest_zil_commit;
+ztest_func_t ztest_zil_remount;
 ztest_func_t ztest_dmu_read_write_zcopy;
 ztest_func_t ztest_dmu_objset_create_destroy;
 ztest_func_t ztest_dmu_prealloc;
@@ -273,6 +275,7 @@ ztest_info_t ztest_info[] = {
 	{ ztest_zap_parallel,			100,	&zopt_always	},
 	{ ztest_split_pool,			1,	&zopt_always	},
 	{ ztest_zil_commit,			1,	&zopt_incessant	},
+	{ ztest_zil_remount,			1,	&zopt_sometimes	},
 	{ ztest_dmu_read_write_zcopy,		1,	&zopt_often	},
 	{ ztest_dmu_objset_create_destroy,	1,	&zopt_often	},
 	{ ztest_dsl_prop_get_set,		1,	&zopt_often	},
@@ -986,6 +989,7 @@ ztest_zd_init(ztest_ds_t *zd, objset_t *
 	zd->zd_seq = 0;
 	dmu_objset_name(os, zd->zd_name);
 
+	VERIFY(rwlock_init(&zd->zd_zilog_lock, USYNC_THREAD, NULL) == 0);
 	VERIFY(_mutex_init(&zd->zd_dirobj_lock, USYNC_THREAD, NULL) == 0);
 
 	for (int l = 0; l < ZTEST_OBJECT_LOCKS; l++)
@@ -1965,6 +1969,8 @@ ztest_io(ztest_ds_t *zd, uint64_t object
 	if (ztest_random(2) == 0)
 		io_type = ZTEST_IO_WRITE_TAG;
 
+	(void) rw_rdlock(&zd->zd_zilog_lock);
+
 	switch (io_type) {
 
 	case ZTEST_IO_WRITE_TAG:
@@ -2000,6 +2006,8 @@ ztest_io(ztest_ds_t *zd, uint64_t object
 		break;
 	}
 
+	(void) rw_unlock(&zd->zd_zilog_lock);
+
 	umem_free(data, blocksize);
 }
 
@@ -2054,6 +2062,8 @@ ztest_zil_commit(ztest_ds_t *zd, uint64_
 {
 	zilog_t *zilog = zd->zd_zilog;
 
+	(void) rw_rdlock(&zd->zd_zilog_lock);
+
 	zil_commit(zilog, ztest_random(ZTEST_OBJECTS));
 
 	/*
@@ -2065,6 +2075,31 @@ ztest_zil_commit(ztest_ds_t *zd, uint64_
 	ASSERT(zd->zd_seq <= zilog->zl_commit_lr_seq);
 	zd->zd_seq = zilog->zl_commit_lr_seq;
 	mutex_exit(&zilog->zl_lock);
+
+	(void) rw_unlock(&zd->zd_zilog_lock);
+}
+
+/*
+ * This function is designed to simulate the operations that occur during a
+ * mount/unmount operation.  We hold the dataset across these operations in an
+ * attempt to expose any implicit assumptions about ZIL management.
+ */
+/* ARGSUSED */
+void
+ztest_zil_remount(ztest_ds_t *zd, uint64_t id)
+{
+	objset_t *os = zd->zd_os;
+
+	(void) rw_wrlock(&zd->zd_zilog_lock);
+
+	/* zfsvfs_teardown() */
+	zil_close(zd->zd_zilog);
+
+	/* zfsvfs_setup() */
+	VERIFY(zil_open(os, ztest_get_data) == zd->zd_zilog);
+	zil_replay(os, zd, ztest_replay_vector);
+
+	(void) rw_unlock(&zd->zd_zilog_lock);
 }
 
 /*

Modified: user/adrian/if_ath_tx/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c
==============================================================================
--- user/adrian/if_ath_tx/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c	Tue Aug  2 08:31:23 2011	(r224599)
@@ -4289,7 +4289,8 @@ zfs_jail(zfs_handle_t *zhp, int jailid, 
 	libzfs_handle_t *hdl = zhp->zfs_hdl;
 	zfs_cmd_t zc = { 0 };
 	char errbuf[1024];
-	int cmd, ret;
+	unsigned long cmd;
+	int ret;
 
 	if (attach) {
 		(void) snprintf(errbuf, sizeof (errbuf),

Modified: user/adrian/if_ath_tx/contrib/bsnmp/snmp_usm/snmp_usm.3
==============================================================================
--- user/adrian/if_ath_tx/contrib/bsnmp/snmp_usm/snmp_usm.3	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/contrib/bsnmp/snmp_usm/snmp_usm.3	Tue Aug  2 08:31:23 2011	(r224599)
@@ -115,7 +115,7 @@ allowed.
 This column is used to create new USM user entries or delete existing ones from
 the table.
 .El
-.EL
+.El
 .Sh FILES
 .Bl -tag -width "XXXXXXXXX"
 .It Pa /usr/share/snmp/defs/usm_tree.def

Modified: user/adrian/if_ath_tx/contrib/gcc/cp/ChangeLog
==============================================================================
--- user/adrian/if_ath_tx/contrib/gcc/cp/ChangeLog	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/contrib/gcc/cp/ChangeLog	Tue Aug  2 08:31:23 2011	(r224599)
@@ -1,3 +1,9 @@
+2007-09-29  Jason Merrill  <jason@redhat.com>
+
+	PR c++/33094
+	* decl.c (make_rtl_for_nonlocal_decl): It's ok for a member
+	constant to not have DECL_EXTERNAL if it's file-local.
+
 2007-08-24  Jakub Jelinek  <jakub@redhat.com>
 
 	PR c++/31941

Modified: user/adrian/if_ath_tx/contrib/gcc/cp/decl.c
==============================================================================
--- user/adrian/if_ath_tx/contrib/gcc/cp/decl.c	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/contrib/gcc/cp/decl.c	Tue Aug  2 08:31:23 2011	(r224599)
@@ -4968,7 +4968,7 @@ make_rtl_for_nonlocal_decl (tree decl, t
       /* An in-class declaration of a static data member should be
 	 external; it is only a declaration, and not a definition.  */
       if (init == NULL_TREE)
-	gcc_assert (DECL_EXTERNAL (decl));
+	gcc_assert (DECL_EXTERNAL (decl) || !TREE_PUBLIC (decl));
     }
 
   /* We don't create any RTL for local variables.  */

Modified: user/adrian/if_ath_tx/etc/rc.d/kld
==============================================================================
--- user/adrian/if_ath_tx/etc/rc.d/kld	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/etc/rc.d/kld	Tue Aug  2 08:31:23 2011	(r224599)
@@ -41,24 +41,11 @@ kld_start()
 {
 	[ -n "$kld_list" ] || return
 
-	local _kernel_path _module_path _kld _path
-
-	_kernel_path=`$SYSCTL_N kern.bootfile`
-	_kernel_path="${_kernel_path%/*}"
-
-	_module_path=`$SYSCTL_N kern.module_path`
-	_module_path="${_module_path#*\;}"
-	_module_path="$_kernel_path `ltr $_module_path \; ' '`"
+	local _kld
 
 	echo 'Loading kernel modules:'
 	for _kld in $kld_list ; do
-		for _path in $_module_path ; do
-			if [ -x "${_path}/${_kld}.ko" ]; then
-				load_kld -e ${_kld}.ko ${_path}/${_kld}.ko
-				continue 2
-			fi
-		done
-		warn "${_kld}.ko not found in $_module_path"
+		load_kld -e ${_kld}.ko $_kld
 	done
 }
 

Modified: user/adrian/if_ath_tx/lib/libmemstat/libmemstat.3
==============================================================================
--- user/adrian/if_ath_tx/lib/libmemstat/libmemstat.3	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/lib/libmemstat/libmemstat.3	Tue Aug  2 08:31:23 2011	(r224599)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd June 27, 2005
+.Dd July 21, 2011
 .Dt LIBMEMSTAT 3
 .Os
 .Sh NAME
@@ -412,10 +412,6 @@ values of
 .Er EACCES
 or
 .Er EPERM .
-.It Dv MEMSTAT_ERROR_TOOMANYCPUS
-Returned if the compile-time limit on the number of CPUs in
-.Nm
-is lower than the number of CPUs returned by a statistics data source.
 .It Dv MEMSTAT_ERROR_DATAERROR
 Returned if
 .Nm

Modified: user/adrian/if_ath_tx/lib/libmemstat/memstat.c
==============================================================================
--- user/adrian/if_ath_tx/lib/libmemstat/memstat.c	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/lib/libmemstat/memstat.c	Tue Aug  2 08:31:23 2011	(r224599)
@@ -49,8 +49,6 @@ memstat_strerror(int error)
 		return ("Version mismatch");
 	case MEMSTAT_ERROR_PERMISSION:
 		return ("Permission denied");
-	case MEMSTAT_ERROR_TOOMANYCPUS:
-		return ("Too many CPUs");
 	case MEMSTAT_ERROR_DATAERROR:
 		return ("Data format error");
 	case MEMSTAT_ERROR_KVM:
@@ -99,6 +97,8 @@ _memstat_mtl_empty(struct memory_type_li
 	struct memory_type *mtp;
 
 	while ((mtp = LIST_FIRST(&list->mtl_list))) {
+		free(mtp->mt_percpu_alloc);
+		free(mtp->mt_percpu_cache);
 		LIST_REMOVE(mtp, mt_list);
 		free(mtp);
 	}
@@ -147,7 +147,7 @@ memstat_mtl_find(struct memory_type_list
  */
 struct memory_type *
 _memstat_mt_allocate(struct memory_type_list *list, int allocator,
-    const char *name)
+    const char *name, int maxcpus)
 {
 	struct memory_type *mtp;
 
@@ -158,6 +158,10 @@ _memstat_mt_allocate(struct memory_type_
 	bzero(mtp, sizeof(*mtp));
 
 	mtp->mt_allocator = allocator;
+	mtp->mt_percpu_alloc = malloc(sizeof(struct mt_percpu_alloc_s) *
+	    maxcpus);
+	mtp->mt_percpu_cache = malloc(sizeof(struct mt_percpu_cache_s) *
+	    maxcpus);
 	strlcpy(mtp->mt_name, name, MEMTYPE_MAXNAME);
 	LIST_INSERT_HEAD(&list->mtl_list, mtp, mt_list);
 	return (mtp);
@@ -171,7 +175,7 @@ _memstat_mt_allocate(struct memory_type_
  * libmemstat(3) internal function.
  */
 void
-_memstat_mt_reset_stats(struct memory_type *mtp)
+_memstat_mt_reset_stats(struct memory_type *mtp, int maxcpus)
 {
 	int i;
 
@@ -193,7 +197,7 @@ _memstat_mt_reset_stats(struct memory_ty
 	mtp->mt_zonefree = 0;
 	mtp->mt_kegfree = 0;
 
-	for (i = 0; i < MEMSTAT_MAXCPU; i++) {
+	for (i = 0; i < maxcpus; i++) {
 		mtp->mt_percpu_alloc[i].mtp_memalloced = 0;
 		mtp->mt_percpu_alloc[i].mtp_memfreed = 0;
 		mtp->mt_percpu_alloc[i].mtp_numallocs = 0;

Modified: user/adrian/if_ath_tx/lib/libmemstat/memstat.h
==============================================================================
--- user/adrian/if_ath_tx/lib/libmemstat/memstat.h	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/lib/libmemstat/memstat.h	Tue Aug  2 08:31:23 2011	(r224599)
@@ -30,12 +30,6 @@
 #define	_MEMSTAT_H_
 
 /*
- * Number of CPU slots in library-internal data structures.  This should be
- * at least the value of MAXCPU from param.h.
- */
-#define	MEMSTAT_MAXCPU	32
-
-/*
  * Amount of caller data to maintain for each caller data slot.  Applications
  * must not request more than this number of caller save data, or risk
  * corrupting internal libmemstat(3) data structures.  A compile time check
@@ -70,7 +64,6 @@
 #define	MEMSTAT_ERROR_NOMEMORY		1	/* Out of memory. */
 #define	MEMSTAT_ERROR_VERSION		2	/* Unsupported version. */
 #define	MEMSTAT_ERROR_PERMISSION	3	/* Permission denied. */
-#define	MEMSTAT_ERROR_TOOMANYCPUS	4	/* Too many CPUs. */
 #define	MEMSTAT_ERROR_DATAERROR		5	/* Error in stat data. */
 #define	MEMSTAT_ERROR_KVM		6	/* See kvm_geterr() for err. */
 #define	MEMSTAT_ERROR_KVM_NOSYMBOL	7	/* Symbol not available. */

Modified: user/adrian/if_ath_tx/lib/libmemstat/memstat_internal.h
==============================================================================
--- user/adrian/if_ath_tx/lib/libmemstat/memstat_internal.h	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/lib/libmemstat/memstat_internal.h	Tue Aug  2 08:31:23 2011	(r224599)
@@ -92,7 +92,7 @@ struct memory_type {
 	 * Per-CPU measurements fall into two categories: per-CPU allocation,
 	 * and per-CPU cache state.
 	 */
-	struct {
+	struct mt_percpu_alloc_s {
 		uint64_t	 mtp_memalloced;/* Per-CPU mt_memalloced. */
 		uint64_t	 mtp_memfreed;	/* Per-CPU mt_memfreed. */
 		uint64_t	 mtp_numallocs;	/* Per-CPU mt_numallocs. */
@@ -100,11 +100,11 @@ struct memory_type {
 		uint64_t	 mtp_sizemask;	/* Per-CPU mt_sizemask. */
 		void		*mtp_caller_pointer[MEMSTAT_MAXCALLER];
 		uint64_t	 mtp_caller_uint64[MEMSTAT_MAXCALLER];
-	}	mt_percpu_alloc[MEMSTAT_MAXCPU];
+	}	*mt_percpu_alloc;
 
-	struct {
+	struct mt_percpu_cache_s {
 		uint64_t	 mtp_free;	/* Per-CPU cache free items. */
-	}	mt_percpu_cache[MEMSTAT_MAXCPU];
+	}	*mt_percpu_cache;
 
 	LIST_ENTRY(memory_type)	mt_list;	/* List of types. */
 };
@@ -119,7 +119,8 @@ struct memory_type_list {
 
 void			 _memstat_mtl_empty(struct memory_type_list *list);
 struct memory_type	*_memstat_mt_allocate(struct memory_type_list *list,
-			    int allocator, const char *name);
-void			 _memstat_mt_reset_stats(struct memory_type *mtp);
+			    int allocator, const char *name, int maxcpus);
+void			 _memstat_mt_reset_stats(struct memory_type *mtp,
+			    int maxcpus);
 
 #endif /* !_MEMSTAT_INTERNAL_H_ */

Modified: user/adrian/if_ath_tx/lib/libmemstat/memstat_malloc.c
==============================================================================
--- user/adrian/if_ath_tx/lib/libmemstat/memstat_malloc.c	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/lib/libmemstat/memstat_malloc.c	Tue Aug  2 08:31:23 2011	(r224599)
@@ -96,11 +96,6 @@ retry:
 		return (-1);
 	}
 
-	if (maxcpus > MEMSTAT_MAXCPU) {
-		list->mtl_error = MEMSTAT_ERROR_TOOMANYCPUS;
-		return (-1);
-	}
-
 	size = sizeof(count);
 	if (sysctlbyname("kern.malloc_count", &count, &size, NULL, 0) < 0) {
 		if (errno == EACCES || errno == EPERM)
@@ -160,12 +155,6 @@ retry:
 		return (-1);
 	}
 
-	if (mtshp->mtsh_maxcpus > MEMSTAT_MAXCPU) {
-		list->mtl_error = MEMSTAT_ERROR_TOOMANYCPUS;
-		free(buffer);
-		return (-1);
-	}
-
 	/*
 	 * For the remainder of this function, we are quite trusting about
 	 * the layout of structures and sizes, since we've determined we have
@@ -184,7 +173,7 @@ retry:
 			mtp = NULL;
 		if (mtp == NULL)
 			mtp = _memstat_mt_allocate(list, ALLOCATOR_MALLOC,
-			    mthp->mth_name);
+			    mthp->mth_name, maxcpus);
 		if (mtp == NULL) {
 			_memstat_mtl_empty(list);
 			free(buffer);
@@ -195,7 +184,7 @@ retry:
 		/*
 		 * Reset the statistics on a current node.
 		 */
-		_memstat_mt_reset_stats(mtp);
+		_memstat_mt_reset_stats(mtp, maxcpus);
 
 		for (j = 0; j < maxcpus; j++) {
 			mtsp = (struct malloc_type_stats *)p;
@@ -295,7 +284,7 @@ memstat_kvm_malloc(struct memory_type_li
 	void *kmemstatistics;
 	int hint_dontsearch, j, mp_maxcpus, ret;
 	char name[MEMTYPE_MAXNAME];
-	struct malloc_type_stats mts[MEMSTAT_MAXCPU], *mtsp;
+	struct malloc_type_stats *mts, *mtsp;
 	struct malloc_type_internal *mtip;
 	struct malloc_type type, *typep;
 	kvm_t *kvm;
@@ -322,11 +311,6 @@ memstat_kvm_malloc(struct memory_type_li
 		return (-1);
 	}
 
-	if (mp_maxcpus > MEMSTAT_MAXCPU) {
-		list->mtl_error = MEMSTAT_ERROR_TOOMANYCPUS;
-		return (-1);
-	}
-
 	ret = kread_symbol(kvm, X_KMEMSTATISTICS, &kmemstatistics,
 	    sizeof(kmemstatistics), 0);
 	if (ret != 0) {
@@ -334,10 +318,17 @@ memstat_kvm_malloc(struct memory_type_li
 		return (-1);
 	}
 
+	mts = malloc(sizeof(struct malloc_type_stats) * mp_maxcpus);
+	if (mts == NULL) {
+		list->mtl_error = MEMSTAT_ERROR_NOMEMORY;
+		return (-1);
+	}
+
 	for (typep = kmemstatistics; typep != NULL; typep = type.ks_next) {
 		ret = kread(kvm, typep, &type, sizeof(type), 0);
 		if (ret != 0) {
 			_memstat_mtl_empty(list);
+			free(mts);
 			list->mtl_error = ret;
 			return (-1);
 		}
@@ -345,6 +336,7 @@ memstat_kvm_malloc(struct memory_type_li
 		    MEMTYPE_MAXNAME);
 		if (ret != 0) {
 			_memstat_mtl_empty(list);
+			free(mts);
 			list->mtl_error = ret;
 			return (-1);
 		}
@@ -358,6 +350,7 @@ memstat_kvm_malloc(struct memory_type_li
 		    sizeof(struct malloc_type_stats), 0);
 		if (ret != 0) {
 			_memstat_mtl_empty(list);
+			free(mts);
 			list->mtl_error = ret;
 			return (-1);
 		}
@@ -368,9 +361,10 @@ memstat_kvm_malloc(struct memory_type_li
 			mtp = NULL;
 		if (mtp == NULL)
 			mtp = _memstat_mt_allocate(list, ALLOCATOR_MALLOC,
-			    name);
+			    name, mp_maxcpus);
 		if (mtp == NULL) {
 			_memstat_mtl_empty(list);
+			free(mts);
 			list->mtl_error = MEMSTAT_ERROR_NOMEMORY;
 			return (-1);
 		}
@@ -379,7 +373,7 @@ memstat_kvm_malloc(struct memory_type_li
 		 * This logic is replicated from kern_malloc.c, and should
 		 * be kept in sync.
 		 */
-		_memstat_mt_reset_stats(mtp);
+		_memstat_mt_reset_stats(mtp, mp_maxcpus);
 		for (j = 0; j < mp_maxcpus; j++) {
 			mtsp = &mts[j];
 			mtp->mt_memalloced += mtsp->mts_memalloced;

Modified: user/adrian/if_ath_tx/lib/libmemstat/memstat_uma.c
==============================================================================
--- user/adrian/if_ath_tx/lib/libmemstat/memstat_uma.c	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/lib/libmemstat/memstat_uma.c	Tue Aug  2 08:31:23 2011	(r224599)
@@ -79,7 +79,7 @@ memstat_sysctl_uma(struct memory_type_li
 	struct uma_type_header *uthp;
 	struct uma_percpu_stat *upsp;
 	struct memory_type *mtp;
-	int count, hint_dontsearch, i, j, maxcpus;
+	int count, hint_dontsearch, i, j, maxcpus, maxid;
 	char *buffer, *p;
 	size_t size;
 
@@ -93,24 +93,19 @@ memstat_sysctl_uma(struct memory_type_li
 	 * from the header.
 	 */
 retry:
-	size = sizeof(maxcpus);
-	if (sysctlbyname("kern.smp.maxcpus", &maxcpus, &size, NULL, 0) < 0) {
+	size = sizeof(maxid);
+	if (sysctlbyname("kern.smp.maxid", &maxid, &size, NULL, 0) < 0) {
 		if (errno == EACCES || errno == EPERM)
 			list->mtl_error = MEMSTAT_ERROR_PERMISSION;
 		else
 			list->mtl_error = MEMSTAT_ERROR_DATAERROR;
 		return (-1);
 	}
-	if (size != sizeof(maxcpus)) {
+	if (size != sizeof(maxid)) {
 		list->mtl_error = MEMSTAT_ERROR_DATAERROR;
 		return (-1);
 	}
 
-	if (maxcpus > MEMSTAT_MAXCPU) {
-		list->mtl_error = MEMSTAT_ERROR_TOOMANYCPUS;
-		return (-1);
-	}
-
 	size = sizeof(count);
 	if (sysctlbyname("vm.zone_count", &count, &size, NULL, 0) < 0) {
 		if (errno == EACCES || errno == EPERM)
@@ -125,7 +120,7 @@ retry:
 	}
 
 	size = sizeof(*uthp) + count * (sizeof(*uthp) + sizeof(*upsp) *
-	    maxcpus);
+	    (maxid + 1));
 
 	buffer = malloc(size);
 	if (buffer == NULL) {
@@ -170,12 +165,6 @@ retry:
 		return (-1);
 	}
 
-	if (ushp->ush_maxcpus > MEMSTAT_MAXCPU) {
-		list->mtl_error = MEMSTAT_ERROR_TOOMANYCPUS;
-		free(buffer);
-		return (-1);
-	}
-
 	/*
 	 * For the remainder of this function, we are quite trusting about
 	 * the layout of structures and sizes, since we've determined we have
@@ -194,7 +183,7 @@ retry:
 			mtp = NULL;
 		if (mtp == NULL)
 			mtp = _memstat_mt_allocate(list, ALLOCATOR_UMA,
-			    uthp->uth_name);
+			    uthp->uth_name, maxid + 1);
 		if (mtp == NULL) {
 			_memstat_mtl_empty(list);
 			free(buffer);
@@ -205,7 +194,7 @@ retry:
 		/*
 		 * Reset the statistics on a current node.
 		 */
-		_memstat_mt_reset_stats(mtp);
+		_memstat_mt_reset_stats(mtp, maxid + 1);
 
 		mtp->mt_numallocs = uthp->uth_allocs;
 		mtp->mt_numfrees = uthp->uth_frees;
@@ -398,7 +387,7 @@ memstat_kvm_uma(struct memory_type_list 
 				mtp = NULL;
 			if (mtp == NULL)
 				mtp = _memstat_mt_allocate(list, ALLOCATOR_UMA,
-				    name);
+				    name, mp_maxid + 1);
 			if (mtp == NULL) {
 				free(ucp_array);
 				_memstat_mtl_empty(list);
@@ -408,7 +397,7 @@ memstat_kvm_uma(struct memory_type_list 
 			/*
 			 * Reset the statistics on a current node.
 			 */
-			_memstat_mt_reset_stats(mtp);
+			_memstat_mt_reset_stats(mtp, mp_maxid + 1);
 			mtp->mt_numallocs = uz.uz_allocs;
 			mtp->mt_numfrees = uz.uz_frees;
 			mtp->mt_failures = uz.uz_fails;

Modified: user/adrian/if_ath_tx/lib/libusbhid/parse.c
==============================================================================
--- user/adrian/if_ath_tx/lib/libusbhid/parse.c	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/lib/libusbhid/parse.c	Tue Aug  2 08:31:23 2011	(r224599)
@@ -322,6 +322,8 @@ hid_get_item(hid_data_t s, hid_item_t *h
 					 * one and one item:
 					 */
 					c->report_count = 1;
+					c->usage_minimum = 0;
+					c->usage_maximum = 0;
 				} else {
 					s->ncount = 1;
 				}
@@ -512,13 +514,14 @@ hid_report_size(report_desc_t r, enum hi
 	uint32_t temp;
 	uint32_t hpos;
 	uint32_t lpos;
+	int report_id = 0;
 
 	hpos = 0;
 	lpos = 0xFFFFFFFF;
 
 	memset(&h, 0, sizeof h);
 	for (d = hid_start_parse(r, 1 << k, id); hid_get_item(d, &h); ) {
-		if (h.report_ID == id && h.kind == k) {
+		if ((h.report_ID == id || id < 0) && h.kind == k) {
 			/* compute minimum */
 			if (lpos > h.pos)
 				lpos = h.pos;
@@ -527,6 +530,8 @@ hid_report_size(report_desc_t r, enum hi
 			/* compute maximum */
 			if (hpos < temp)
 				hpos = temp;
+			if (h.report_ID != 0)
+				report_id = 1;
 		}
 	}
 	hid_end_parse(d);
@@ -537,11 +542,8 @@ hid_report_size(report_desc_t r, enum hi
 	else
 		temp = hpos - lpos;
 
-	if (id)
-		temp += 8;
-
 	/* return length in bytes rounded up */
-	return ((temp + 7) / 8);
+	return ((temp + 7) / 8 + report_id);
 }
 
 int

Modified: user/adrian/if_ath_tx/libexec/tftpd/tftp-transfer.c
==============================================================================
--- user/adrian/if_ath_tx/libexec/tftpd/tftp-transfer.c	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/libexec/tftpd/tftp-transfer.c	Tue Aug  2 08:31:23 2011	(r224599)
@@ -129,14 +129,16 @@ tftp_send(int peer, uint16_t *block, str
 		(*block)++;
 		if (oldblock > *block) {
 			if (options[OPT_ROLLOVER].o_request == NULL) {
-				tftp_log(LOG_ERR,
-				    "Block rollover but not allowed.");
-				send_error(peer, EBADOP);
-				gettimeofday(&(ts->tstop), NULL);
-				return;
+				/*
+				 * "rollover" option not specified in
+				 * tftp client.  Default to rolling block
+				 * counter to 0.
+				 */
+				*block = 0;
+			} else {
+				*block = atoi(options[OPT_ROLLOVER].o_request);
 			}
 
-			*block = atoi(options[OPT_ROLLOVER].o_request);
 			ts->rollovers++;
 		}
 		gettimeofday(&(ts->tstop), NULL);
@@ -196,14 +198,16 @@ tftp_receive(int peer, uint16_t *block, 
 		(*block)++;
 		if (oldblock > *block) {
 			if (options[OPT_ROLLOVER].o_request == NULL) {
-				tftp_log(LOG_ERR,
-				    "Block rollover but not allowed.");
-				send_error(peer, EBADOP);
-				gettimeofday(&(ts->tstop), NULL);
-				return;
+				/*
+				 * "rollover" option not specified in
+				 * tftp client.  Default to rolling block
+				 * counter to 0.
+				 */
+				*block = 0;
+			} else {
+				*block = atoi(options[OPT_ROLLOVER].o_request);
 			}
 
-			*block = atoi(options[OPT_ROLLOVER].o_request);
 			ts->rollovers++;
 		}
 

Modified: user/adrian/if_ath_tx/libexec/tftpd/tftpd.8
==============================================================================
--- user/adrian/if_ath_tx/libexec/tftpd/tftpd.8	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/libexec/tftpd/tftpd.8	Tue Aug  2 08:31:23 2011	(r224599)
@@ -300,8 +300,15 @@ and
 .Xr tftp 1
 code to support RFC2348.
 .Sh NOTES
-Files larger than 33488896 octets (65535 blocks) cannot be transferred
-without client and server supporting the TFTP blocksize option (RFC2348),
+Files larger than 33,553,919 octets (65535 blocks, last one <512
+octets) cannot be correctly transferred without client and server
+supporting blocksize negotiation (RFCs 2347 and 2348),
 or the non-standard TFTP rollover option.
+As a kludge,
+.Nm
+accepts a sequence of block number which wrap to zero after 65535,
+even if the rollover option is not specified.
 .Pp
-Many tftp clients will not transfer files over 16744448 octets (32767 blocks).
+Many tftp clients will not transfer files over 16,776,703 octets
+(32767 blocks), as they incorrectly count the block number using
+a signed rather than unsigned 16-bit integer.

Modified: user/adrian/if_ath_tx/release/amd64/make-memstick.sh
==============================================================================
--- user/adrian/if_ath_tx/release/amd64/make-memstick.sh	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/release/amd64/make-memstick.sh	Tue Aug  2 08:31:23 2011	(r224599)
@@ -32,7 +32,7 @@ if [ -e ${2} ]; then
   exit 1
 fi
 
-echo '/dev/gpt/FreeBSD_Install / ufs rw,noatime 1 1' > ${1}/etc/fstab
+echo '/dev/gpt/FreeBSD_Install / ufs ro,noatime 1 1' > ${1}/etc/fstab
 rm -f ${tempfile}
 makefs -B little ${tempfile} ${1}
 if [ $? -ne 0 ]; then

Modified: user/adrian/if_ath_tx/release/doc/en_US.ISO8859-1/hardware/article.sgml
==============================================================================
--- user/adrian/if_ath_tx/release/doc/en_US.ISO8859-1/hardware/article.sgml	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/release/doc/en_US.ISO8859-1/hardware/article.sgml	Tue Aug  2 08:31:23 2011	(r224599)
@@ -195,11 +195,9 @@
 	resources between logical processors within the same CPU.
 	Because this naive scheduling can result in suboptimal
 	performance, under certain circumstances it may be useful to
-	disable the logical processors with the the
-	<varname>machdep.hlt_logical_cpus</varname> sysctl variable.
-	It is also possible to halt any CPU in the idle loop with the
-	<varname>machdep.hlt_cpus</varname> sysctl variable.  The
-	&man.smp.4; manual page has more details.</para>
+	disable the logical processors with the
+	<varname>machdep.hyperthreading_allowed</varname> tunable.
+	The &man.smp.4; manual page has more details.</para>
 
       <para>&os; will take advantage of Physical Address Extensions
 	(PAE) support on CPUs that support this feature.  A kernel

Modified: user/adrian/if_ath_tx/release/i386/make-memstick.sh
==============================================================================
--- user/adrian/if_ath_tx/release/i386/make-memstick.sh	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/release/i386/make-memstick.sh	Tue Aug  2 08:31:23 2011	(r224599)
@@ -32,7 +32,7 @@ if [ -e ${2} ]; then
   exit 1
 fi
 
-echo '/dev/gpt/FreeBSD_Install / ufs rw,noatime 1 1' > ${1}/etc/fstab
+echo '/dev/gpt/FreeBSD_Install / ufs ro,noatime 1 1' > ${1}/etc/fstab
 rm -f ${tempfile}
 makefs -B little ${tempfile} ${1}
 if [ $? -ne 0 ]; then

Modified: user/adrian/if_ath_tx/release/powerpc/make-memstick.sh
==============================================================================
--- user/adrian/if_ath_tx/release/powerpc/make-memstick.sh	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/release/powerpc/make-memstick.sh	Tue Aug  2 08:31:23 2011	(r224599)
@@ -32,7 +32,7 @@ if [ -e ${2} ]; then
   exit 1
 fi
 
-echo '/dev/da0s3 / ufs rw,noatime 1 1' > ${1}/etc/fstab
+echo '/dev/da0s3 / ufs ro,noatime 1 1' > ${1}/etc/fstab
 rm -f ${tempfile}
 makefs -B big ${tempfile} ${1}
 if [ $? -ne 0 ]; then

Modified: user/adrian/if_ath_tx/sbin/mount/mount.c
==============================================================================
--- user/adrian/if_ath_tx/sbin/mount/mount.c	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/sbin/mount/mount.c	Tue Aug  2 08:31:23 2011	(r224599)
@@ -109,6 +109,7 @@ static struct opt {
 	{ MNT_NOCLUSTERW,	"noclusterw" },
 	{ MNT_SUIDDIR,		"suiddir" },
 	{ MNT_SOFTDEP,		"soft-updates" },
+	{ MNT_SUJ,		"journaled soft-updates" },
 	{ MNT_MULTILABEL,	"multilabel" },
 	{ MNT_ACLS,		"acls" },
 	{ MNT_NFS4ACLS,		"nfsv4acls" },

Modified: user/adrian/if_ath_tx/share/man/man4/dc.4
==============================================================================
--- user/adrian/if_ath_tx/share/man/man4/dc.4	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/share/man/man4/dc.4	Tue Aug  2 08:31:23 2011	(r224599)
@@ -30,7 +30,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd July 16, 2005
+.Dd July 23, 2011
 .Dt DC 4
 .Os
 .Sh NAME
@@ -357,7 +357,7 @@ the card should be configured correctly.
 .Re
 .Rs
 .%T Davicom DM9102 data sheet
-.%U http://www.davicom8.com
+.%U http://www.davicom.com.tw/userfile/24247/DM9102H-DS-F01-021508.pdf
 .Re
 .Rs
 .%T Intel 21143 Hardware Reference Manual

Modified: user/adrian/if_ath_tx/share/man/man4/gif.4
==============================================================================
--- user/adrian/if_ath_tx/share/man/man4/gif.4	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/share/man/man4/gif.4	Tue Aug  2 08:31:23 2011	(r224599)
@@ -29,7 +29,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd June 8, 2009
+.Dd August 1, 2011
 .Dt GIF 4
 .Os
 .Sh NAME
@@ -198,7 +198,7 @@ to 1.
 .%B RFC2893
 .%T Transition Mechanisms for IPv6 Hosts and Routers
 .%D August 2000
-.%U ftp://ftp.isi.edu/in-notes/rfc2893.txt
+.%U http://tools.ietf.org/html/rfc2893
 .Re
 .Rs
 .%A Sally Floyd

Modified: user/adrian/if_ath_tx/share/man/man4/hptiop.4
==============================================================================
--- user/adrian/if_ath_tx/share/man/man4/hptiop.4	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/share/man/man4/hptiop.4	Tue Aug  2 08:31:23 2011	(r224599)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd May 12, 2007
+.Dd August 1, 2011
 .Dt HPTIOP 4
 .Os
 .Sh NAME
@@ -60,6 +60,10 @@ driver supports the following SAS and SA
 .It
 HighPoint RocketRAID 4320
 .It
+HighPoint RocketRAID 4321
+.It
+HighPoint RocketRAID 4322
+.It
 HighPoint RocketRAID 3220
 .It
 HighPoint RocketRAID 3320

Modified: user/adrian/if_ath_tx/share/man/man4/lmc.4
==============================================================================
--- user/adrian/if_ath_tx/share/man/man4/lmc.4	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/share/man/man4/lmc.4	Tue Aug  2 08:31:23 2011	(r224599)
@@ -43,7 +43,7 @@
 .\" this program; if not, write to the Free Software Foundation, Inc., 59
 .\" Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 .\"
-.Dd May 20, 2006
+.Dd July 23, 2011
 .Dt LMC 4
 .Os
 .\"
@@ -723,8 +723,6 @@ Thus, cable length does not affect data/
 .Xr ngctl 8 ,
 .Xr ping 8 ,
 .Xr ifnet 9
-.Pp
-.Pa http://www.sbei.com/
 .\"
 .Sh HISTORY
 .\"

Modified: user/adrian/if_ath_tx/share/man/man4/mpt.4
==============================================================================
--- user/adrian/if_ath_tx/share/man/man4/mpt.4	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/share/man/man4/mpt.4	Tue Aug  2 08:31:23 2011	(r224599)
@@ -35,7 +35,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd May 13, 2010
+.Dd July 23, 2011
 .Dt MPT 4
 .Os
 .Sh NAME
@@ -161,7 +161,7 @@ can take on - no separate compilation is
 .Xr gmultipath 8
 .Rs
 .%T "LSI Logic Website"
-.%U http://www.lsilogic.com/
+.%U http://www.lsi.com/
 .Re
 .Sh HISTORY
 The

Modified: user/adrian/if_ath_tx/share/man/man4/pcm.4
==============================================================================
--- user/adrian/if_ath_tx/share/man/man4/pcm.4	Tue Aug  2 08:09:12 2011	(r224598)
+++ user/adrian/if_ath_tx/share/man/man4/pcm.4	Tue Aug  2 08:31:23 2011	(r224599)
@@ -1,5 +1,5 @@
 .\"
-.\" Copyright (c) 1998, Luigi Rizzo
+.\" Copyright (c) 2009-2011 Joel Dahl <joel@FreeBSD.org>
 .\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
@@ -25,7 +25,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd July 13, 2009
+.Dd July 31, 2011
 .Dt SOUND 4
 .Os
 .Sh NAME
@@ -41,7 +41,122 @@ kernel configuration file:
 .Bd -ragged -offset indent
 .Cd "device sound"
 .Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver is the main component of the
+.Fx
+sound system.
+It works in conjunction with a bridge device driver on supported devices
+and provides PCM audio record and playback once it attaches.
+Each bridge device driver supports a specific set of audio chipsets and
+needs to be enabled together with the
+.Nm
+driver.
+PCI and ISA PnP audio devices identify themselves so users are usually not
+required to add anything to
+.Pa /boot/device.hints .
+.Pp
+Some of the main features of the
+.Nm
+driver are: multichannel audio, per-application
+volume control, dynamic mixing through virtual sound channels, true full
+duplex operation, bit perfect audio, rate conversion and low latency
+modes.
+.Pp
+The
+.Nm
+driver is enabled by default, along with several bridge device drivers.
+Those not enabled by default can be loaded during runtime with
+.Xr kldload 8
+or during boot via
+.Xr loader.conf 5 .
+The following bridge device drivers are available:
+.Pp
+.Bl -bullet -compact
+.It
+.Xr snd_ad1816 4
+.It
+.Xr snd_ai2s 4 (enabled by default on powerpc)
+.It
+.Xr snd_als4000 4
+.It
+.Xr snd_atiixp 4
+.It
+.Xr snd_audiocs 4 (enabled by default on sparc64)
+.It
+.Xr snd_cmi 4
+.It
+.Xr snd_cs4281 4
+.It
+.Xr snd_csa 4
+.It
+.Xr snd_davbus 4 (enabled by default on powerpc)
+.It
+.Xr snd_ds1 4
+.It
+.Xr snd_emu10k1 4
+.It
+.Xr snd_emu10kx 4
+.It
+.Xr snd_envy24 4
+.It
+.Xr snd_envy24ht 4
+.It
+.Xr snd_es137x 4 (enabled by default on amd64, i386, sparc64)
+.It
+.Xr snd_ess 4
+.It
+.Xr snd_fm801 4
+.It
+.Xr snd_gusc 4
+.It
+.Xr snd_hda 4 (enabled by default on amd64, i386)
+.It
+.Xr snd_ich 4 (enabled by default on amd64, i386)
+.It
+.Xr snd_maestro 4
+.It
+.Xr snd_maestro3 4
+.It
+.Xr snd_mss 4
+.It
+.Xr snd_neomagic 4
+.It
+snd_sb16
+.It
+snd_sb8
+.It
+.Xr snd_sbc 4
+.It
+.Xr snd_solo 4
+.It
+.Xr snd_spicds 4
+.It
+.Xr snd_t4dwave 4 (enabled by default on sparc64)
+.It
+.Xr snd_uaudio 4 (enabled by default on amd64, i386, powerpc, sparc64)
+.It
+.Xr snd_via8233 4 (enabled by default on amd64, i386)
+.It
+.Xr snd_via82c686 4
+.It
+.Xr snd_vibes 4
+.El
 .Pp
+Refer to the manual page for each bridge device driver for driver specific
+settings and information.
+.Ss Legacy Hardware
+For old legacy
+.Tn ISA
+cards, the driver looks for
+.Tn MSS
+cards at addresses
+.Dv 0x530
+and
+.Dv 0x604 .
+These values can be overridden in
+.Pa /boot/device.hints .
 Non-PnP sound cards require the following lines in
 .Xr device.hints 5 :
 .Bd -literal -offset indent
@@ -50,33 +165,6 @@ hint.pcm.0.irq="5"
 hint.pcm.0.drq="1"
 hint.pcm.0.flags="0x0"
 .Ed
-.Sh DESCRIPTION
-The
-.Nm
-driver provides support for
-.Tn PCM
-audio play and capture.
-This driver also supports various
-.Tn PCI ,
-.Tn ISA ,
-.Tn WSS/MSS
-compatible
-sound cards, AC97 mixer and High Definition Audio.
-Once the
-.Nm
-driver attaches, supported devices provide audio record and
-playback channels.
-The
-.Fx
-sound system provides dynamic mixing
-.Dq VCHAN
-and rate conversion
-.Dq soft formats .
-True full duplex operation is available on most sound cards.
-.Pp
-If the sound card is supported by a bridge driver, the
-.Nm
-driver works in conjunction with the bridge driver.
 .Pp
 Apart from the usual parameters, the flags field is used to specify
 the secondary
@@ -85,24 +173,6 @@ channel (generally used for capture in f
 Flags are set to 0 for cards not using a secondary
 .Tn DMA
 channel, or to 0x10 + C to specify channel C.
-.Pp
-The driver does its best to recognize the installed hardware and drive
-it correctly so the user is not required to add several lines in
-.Pa /boot/device.hints .
-For
-.Tn PCI
-and
-.Tn ISA
-.Tn PnP
-cards this is actually easy
-since they identify themselves.
-For legacy
-.Tn ISA
-cards, the driver looks for
-.Tn MSS

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201108020831.p728VNlH036542>