svn commit: r221325 - in projects/largeSMP: contrib/openresolv
contrib/top sbin/mount_nfs sbin/recoverdisk share/man/man4
share/misc share/mk sys/amd64/conf sys/amd64/pci sys/conf
sys/dev/acpica sy...
Attilio Rao
attilio at FreeBSD.org
Mon May 2 14:23:36 UTC 2011
Author: attilio
Date: Mon May 2 14:23:36 2011
New Revision: 221325
URL: http://svn.freebsd.org/changeset/base/221325
Log:
MFC @ r221324
Modified:
projects/largeSMP/contrib/openresolv/resolvconf.conf.5.in
projects/largeSMP/sbin/mount_nfs/Makefile
projects/largeSMP/sbin/recoverdisk/recoverdisk.1
projects/largeSMP/sbin/recoverdisk/recoverdisk.c
projects/largeSMP/share/man/man4/vxge.4
projects/largeSMP/share/misc/bsd-family-tree
projects/largeSMP/sys/amd64/conf/GENERIC
projects/largeSMP/sys/amd64/pci/pci_bus.c
projects/largeSMP/sys/conf/NOTES
projects/largeSMP/sys/conf/files
projects/largeSMP/sys/conf/kern.mk
projects/largeSMP/sys/conf/options
projects/largeSMP/sys/dev/acpica/acpi_pcib_acpi.c
projects/largeSMP/sys/dev/pci/pci.c
projects/largeSMP/sys/dev/pci/pci_pci.c
projects/largeSMP/sys/dev/wpi/if_wpi.c
projects/largeSMP/sys/fs/nfs/nfs_commonport.c
projects/largeSMP/sys/i386/conf/GENERIC
projects/largeSMP/sys/i386/pci/pci_bus.c
projects/largeSMP/sys/mips/atheros/ar724x_pci.c
projects/largeSMP/sys/mips/conf/PB92.hints
projects/largeSMP/sys/nfs/nfssvc.h
projects/largeSMP/sys/x86/x86/mptable_pci.c
projects/largeSMP/sys/x86/x86/nexus.c
projects/largeSMP/usr.bin/man/man.sh
projects/largeSMP/usr.bin/nfsstat/nfsstat.1
projects/largeSMP/usr.bin/nfsstat/nfsstat.c
Directory Properties:
projects/largeSMP/ (props changed)
projects/largeSMP/cddl/contrib/opensolaris/ (props changed)
projects/largeSMP/contrib/bind9/ (props changed)
projects/largeSMP/contrib/binutils/ (props changed)
projects/largeSMP/contrib/bzip2/ (props changed)
projects/largeSMP/contrib/dialog/ (props changed)
projects/largeSMP/contrib/ee/ (props changed)
projects/largeSMP/contrib/expat/ (props changed)
projects/largeSMP/contrib/file/ (props changed)
projects/largeSMP/contrib/gcc/ (props changed)
projects/largeSMP/contrib/gdb/ (props changed)
projects/largeSMP/contrib/gdtoa/ (props changed)
projects/largeSMP/contrib/gnu-sort/ (props changed)
projects/largeSMP/contrib/groff/ (props changed)
projects/largeSMP/contrib/less/ (props changed)
projects/largeSMP/contrib/libpcap/ (props changed)
projects/largeSMP/contrib/libstdc++/ (props changed)
projects/largeSMP/contrib/llvm/ (props changed)
projects/largeSMP/contrib/llvm/tools/clang/ (props changed)
projects/largeSMP/contrib/ncurses/ (props changed)
projects/largeSMP/contrib/netcat/ (props changed)
projects/largeSMP/contrib/ntp/ (props changed)
projects/largeSMP/contrib/one-true-awk/ (props changed)
projects/largeSMP/contrib/openbsm/ (props changed)
projects/largeSMP/contrib/openpam/ (props changed)
projects/largeSMP/contrib/pf/ (props changed)
projects/largeSMP/contrib/sendmail/ (props changed)
projects/largeSMP/contrib/tcpdump/ (props changed)
projects/largeSMP/contrib/tcsh/ (props changed)
projects/largeSMP/contrib/top/ (props changed)
projects/largeSMP/contrib/top/install-sh (props changed)
projects/largeSMP/contrib/tzcode/stdtime/ (props changed)
projects/largeSMP/contrib/tzcode/zic/ (props changed)
projects/largeSMP/contrib/tzdata/ (props changed)
projects/largeSMP/contrib/wpa/ (props changed)
projects/largeSMP/contrib/xz/ (props changed)
projects/largeSMP/crypto/openssh/ (props changed)
projects/largeSMP/crypto/openssl/ (props changed)
projects/largeSMP/gnu/lib/ (props changed)
projects/largeSMP/gnu/usr.bin/binutils/ (props changed)
projects/largeSMP/gnu/usr.bin/cc/cc_tools/ (props changed)
projects/largeSMP/gnu/usr.bin/gdb/ (props changed)
projects/largeSMP/lib/libc/ (props changed)
projects/largeSMP/lib/libc/stdtime/ (props changed)
projects/largeSMP/lib/libutil/ (props changed)
projects/largeSMP/lib/libz/ (props changed)
projects/largeSMP/sbin/ (props changed)
projects/largeSMP/sbin/ipfw/ (props changed)
projects/largeSMP/share/mk/bsd.arch.inc.mk (props changed)
projects/largeSMP/share/zoneinfo/ (props changed)
projects/largeSMP/sys/ (props changed)
projects/largeSMP/sys/amd64/include/xen/ (props changed)
projects/largeSMP/sys/boot/ (props changed)
projects/largeSMP/sys/boot/i386/efi/ (props changed)
projects/largeSMP/sys/boot/ia64/efi/ (props changed)
projects/largeSMP/sys/boot/ia64/ski/ (props changed)
projects/largeSMP/sys/boot/powerpc/boot1.chrp/ (props changed)
projects/largeSMP/sys/boot/powerpc/ofw/ (props changed)
projects/largeSMP/sys/cddl/contrib/opensolaris/ (props changed)
projects/largeSMP/sys/conf/ (props changed)
projects/largeSMP/sys/contrib/dev/acpica/ (props changed)
projects/largeSMP/sys/contrib/octeon-sdk/ (props changed)
projects/largeSMP/sys/contrib/pf/ (props changed)
projects/largeSMP/sys/contrib/x86emu/ (props changed)
projects/largeSMP/usr.bin/calendar/ (props changed)
projects/largeSMP/usr.bin/csup/ (props changed)
projects/largeSMP/usr.bin/procstat/ (props changed)
projects/largeSMP/usr.sbin/ndiscvt/ (props changed)
projects/largeSMP/usr.sbin/zic/ (props changed)
Modified: projects/largeSMP/contrib/openresolv/resolvconf.conf.5.in
==============================================================================
--- projects/largeSMP/contrib/openresolv/resolvconf.conf.5.in Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/contrib/openresolv/resolvconf.conf.5.in Mon May 2 14:23:36 2011 (r221325)
@@ -43,7 +43,7 @@ Listed below are the standard
.Nm
variables that may be set.
.Pp
-After updaing this file, you may wish to run
+After updating this file, you may wish to run
.Nm resolvconf -u
to apply the new configuration.
.Sh RESOLVCONF OPTIONS
Modified: projects/largeSMP/sbin/mount_nfs/Makefile
==============================================================================
--- projects/largeSMP/sbin/mount_nfs/Makefile Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sbin/mount_nfs/Makefile Mon May 2 14:23:36 2011 (r221325)
@@ -5,7 +5,7 @@
PROG= mount_nfs
SRCS= mount_nfs.c getmntopts.c mounttab.c
MAN= mount_nfs.8
-MLINKS= mount_nfs.8 mount_newnfs.8
+MLINKS= mount_nfs.8 mount_oldnfs.8
MOUNT= ${.CURDIR}/../mount
UMNTALL= ${.CURDIR}/../../usr.sbin/rpc.umntall
Modified: projects/largeSMP/sbin/recoverdisk/recoverdisk.1
==============================================================================
--- projects/largeSMP/sbin/recoverdisk/recoverdisk.1 Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sbin/recoverdisk/recoverdisk.1 Mon May 2 14:23:36 2011 (r221325)
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd May 6, 2006
+.Dd May 1, 2011
.Dt RECOVERDISK 1
.Os
.Sh NAME
@@ -33,17 +33,20 @@
.Sh SYNOPSIS
.Nm
.Op Fl b Ar bigsize
-.Op Fl r Ar rlist
-.Op Fl s Ar snapshot
-.Op Fl w Ar wlist
-.Ar special
-.Op Ar file
+.Op Fl r Ar readlist
+.Op Fl s Ar interval
+.Op Fl w Ar writelist
+.Ar source
+.Op Ar destination
.Sh DESCRIPTION
The
.Nm
utility reads data from the
-.Ar special
+.Ar source
file until all blocks could be successfully read.
+If
+.Ar destination
+was specified all data is being written to that file.
It starts reading in multiples of the sector size.
Whenever a block fails, it is put to the end of the working queue and will be
read again, possibly with a smaller read size.
@@ -59,13 +62,13 @@ The options are as follows:
The size of reads attempted first.
The middle pass is roughly the logarithmic average of the bigsize and
the sectorsize.
-.It Fl r Ar rlist
+.It Fl r Ar readlist
Read the list of blocks and block sizes to read from the specified file.
-.It Fl s Ar snapshot
-How often we should update the worklist file while things go OK.
-The default is 60 and the units is "progress messages" so if things
+.It Fl s Ar interval
+How often we should update the writelist file while things go OK.
+The default is 60 and the unit is "progress messages" so if things
go well, this is the same as once per minute.
-.It Fl w Ar wlist
+.It Fl w Ar writelist
Write the list of remaining blocks to read to the specified file if
.Nm
is aborted via
@@ -102,20 +105,19 @@ Percent complete.
.Sh EXAMPLES
.Bd -literal
# recover data from failing hard drive ad3
-touch /data/lots_of_space
-recoverdisk /dev/ad3 /data/lots_of_space
+recoverdisk /dev/ad3 /data/disk.img
# clone a hard disk
recoverdisk /dev/ad3 /dev/ad4
# read an ISO image from a CD-ROM
-touch /data/cd.iso; recoverdisk /dev/acd0 /data/cd.iso
+recoverdisk /dev/cd0 /data/cd.iso
# continue reading from a broken CD and update the existing worklist
-recoverdisk -r worklist -w worklist /dev/acd0 /data/cd.iso
+recoverdisk -r worklist -w worklist /dev/cd0 /data/cd.iso
# recover a single file from the unreadable media
-touch file.avi; recoverdisk /cdrom/file.avi file.avi
+recoverdisk /cdrom/file.avi file.avi
# If the disk hangs the system on read-errors try:
recoverdisk -b 0 /dev/ad3 /somewhere
@@ -133,7 +135,7 @@ utility first appeared in
The original implementation was done by
.An Poul-Henning Kamp Aq phk at FreeBSD.org
with minor improvements from
-.An Ulrich Sp\(:orlein Aq uspoerlein at gmail.com .
+.An Ulrich Sp\(:orlein Aq uqs at FreeBSD.org .
.Pp
This manual page was written by
.An Ulrich Sp\(:orlein .
@@ -144,4 +146,13 @@ This is due to the DMA reads being split
These reads then fail if the sectorsize is not a divisor of 128kB.
When reading a full raw audio CD, this leads to roughly 700 error messages
flying by.
-This is harmless.
+This is harmless and can be avoided by setting
+.Fl b
+to no more than 128kB.
+.\".Pp
+.\"When reading from optical media, a bug in the GEOM framework will
+.\"prevent it from seeing that the media has been removed.
+.\"The device can still be opened, but all reads will fail.
+.\"This is usually harmless, but will send
+.\".Nm
+.\"into an infinite loop.
Modified: projects/largeSMP/sbin/recoverdisk/recoverdisk.c
==============================================================================
--- projects/largeSMP/sbin/recoverdisk/recoverdisk.c Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sbin/recoverdisk/recoverdisk.c Mon May 2 14:23:36 2011 (r221325)
@@ -86,7 +86,7 @@ save_worklist(void)
if (file == NULL)
err(1, "Error opening file %s", wworklist);
- TAILQ_FOREACH(llp, &lumps, list)
+ TAILQ_FOREACH(llp, &lumps, list)
fprintf(file, "%jd %jd %d\n",
(intmax_t)llp->start, (intmax_t)llp->len,
llp->state);
@@ -134,8 +134,8 @@ read_worklist(off_t t)
static void
usage(void)
{
- (void)fprintf(stderr,
- "usage: recoverdisk [-r worklist] [-w worklist] source-drive [destination]\n");
+ (void)fprintf(stderr, "usage: recoverdisk [-b bigsize] [-r readlist] "
+ "[-s interval] [-w writelist] source [destination]\n");
exit(1);
}
@@ -153,7 +153,7 @@ main(int argc, char * const argv[])
int fdr, fdw;
off_t t, d, start, len;
size_t i, j;
- int error, flags, state;
+ int error, state;
u_char *buf;
u_int sectorsize;
time_t t1, t2;
@@ -196,7 +196,6 @@ main(int argc, char * const argv[])
error = fstat(fdr, &sb);
if (error < 0)
err(1, "fstat failed");
- flags = O_WRONLY;
if (S_ISBLK(sb.st_mode) || S_ISCHR(sb.st_mode)) {
error = ioctl(fdr, DIOCGSECTORSIZE, §orsize);
if (error < 0)
@@ -210,7 +209,6 @@ main(int argc, char * const argv[])
err(1, "DIOCGMEDIASIZE failed");
} else {
t = sb.st_size;
- flags |= O_CREAT | O_TRUNC;
}
if (bigsize < minsize)
@@ -229,9 +227,12 @@ main(int argc, char * const argv[])
err(1, "Cannot allocate %zu bytes buffer", bigsize);
if (argc > 1) {
- fdw = open(argv[1], flags, DEFFILEMODE);
+ fdw = open(argv[1], O_WRONLY | O_CREAT, DEFFILEMODE);
if (fdw < 0)
err(1, "Cannot open write descriptor %s", argv[1]);
+ if (ftruncate(fdw, t) < 0)
+ err(1, "Cannot truncate output %s to %jd bytes",
+ argv[1], (intmax_t)t);
} else
fdw = -1;
@@ -292,6 +293,10 @@ main(int argc, char * const argv[])
}
printf("\n%jd %zu failed (%s)\n",
lp->start, i, strerror(errno));
+ if (errno == EINVAL) {
+ printf("read() size too big? Try with -b 131072");
+ aborting = 1;
+ }
if (errno == ENXIO)
aborting = 1;
new_lump(lp->start, i, lp->state + 1);
Modified: projects/largeSMP/share/man/man4/vxge.4
==============================================================================
--- projects/largeSMP/share/man/man4/vxge.4 Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/share/man/man4/vxge.4 Mon May 2 14:23:36 2011 (r221325)
@@ -49,13 +49,12 @@ The
.Nm
driver provides support for Neterion X3100 adapters.
The driver supports TCP Segmentation Offload (TSO/LSO),
-Large Receive Offlaod (LRO), Jumbo Frames, Receive Traffic Hash (RTH),
+Large Receive Offload (LRO), Jumbo Frames, Receive Traffic Hash (RTH),
VLAN, Promiscuous mode and Multi function mode.
.Pp
-
The
.Nm
-driver supports following function modes:
+driver supports the following function modes:
.Bd -ragged -offset indent
.Cd "SF1_VP17 - 1 function with 17 VPATHs"
.Ed
Modified: projects/largeSMP/share/misc/bsd-family-tree
==============================================================================
--- projects/largeSMP/share/misc/bsd-family-tree Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/share/misc/bsd-family-tree Mon May 2 14:23:36 2011 (r221325)
@@ -246,7 +246,7 @@ FreeBSD 5.2 | |
| | | | | NetBSD 5.1 | |
| FreeBSD FreeBSD | | | |
| 8.2 7.4 | | | DragonFly 2.10.1
- | v | | | |
+ | v | | OpenBSD 4.9 |
| | | | |
FreeBSD 9 -current | NetBSD -current OpenBSD -current |
| | | | |
@@ -533,6 +533,7 @@ NetBSD 5.1 2010-11-19 [NBD]
FreeBSD 7.4 2011-02-24 [FBD]
FreeBSD 8.2 2011-02-24 [FBD]
DragonFly 2.10.1 2011-04-26 [DFB]
+OpenBSD 4.9 2011-05-01 [OBD]
Bibliography
------------------------
Modified: projects/largeSMP/sys/amd64/conf/GENERIC
==============================================================================
--- projects/largeSMP/sys/amd64/conf/GENERIC Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/amd64/conf/GENERIC Mon May 2 14:23:36 2011 (r221325)
@@ -261,8 +261,16 @@ device ath_pci # Atheros pci/cardbus g
device ath_hal # pci/cardbus chip support
options AH_SUPPORT_AR5416 # enable AR5416 tx/rx descriptors
device ath_rate_sample # SampleRate tx rate control for ath
+#device bwi # Broadcom BCM430x/BCM431x wireless NICs.
+#device bwn # Broadcom BCM43xx wireless NICs.
+device ipw # Intel 2100 wireless NICs.
+device iwi # Intel 2200BG/2225BG/2915ABG wireless NICs.
+device iwn # Intel 4965/1000/5000/6000 wireless NICs.
+device malo # Marvell Libertas wireless NICs.
+device mwl # Marvell 88W8363 802.11n wireless NICs.
device ral # Ralink Technology RT2500 wireless NICs.
device wi # WaveLAN/Intersil/Symbol 802.11 wireless NICs.
+device wpi # Intel 3945ABG wireless NICs.
# Pseudo devices.
device loop # Network loopback
@@ -314,7 +322,9 @@ device rue # RealTek RTL8150 USB Ether
device udav # Davicom DM9601E USB
# USB Wireless
device rum # Ralink Technology RT2501USB wireless NICs
+device run # Ralink Technology RT2700/RT2800/RT3000 NICs.
device uath # Atheros AR5523 wireless NICs
+device upgt # Conexant/Intersil PrismGT wireless NICs.
device ural # Ralink Technology RT2500USB wireless NICs
device urtw # Realtek RTL8187B/L wireless NICs
device zyd # ZyDAS zb1211/zb1211b wireless NICs
Modified: projects/largeSMP/sys/amd64/pci/pci_bus.c
==============================================================================
--- projects/largeSMP/sys/amd64/pci/pci_bus.c Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/amd64/pci/pci_bus.c Mon May 2 14:23:36 2011 (r221325)
@@ -348,6 +348,7 @@ static device_method_t legacy_pcib_metho
DEVMETHOD(bus_read_ivar, legacy_pcib_read_ivar),
DEVMETHOD(bus_write_ivar, legacy_pcib_write_ivar),
DEVMETHOD(bus_alloc_resource, legacy_pcib_alloc_resource),
+ DEVMETHOD(bus_adjust_resource, bus_generic_adjust_resource),
DEVMETHOD(bus_release_resource, bus_generic_release_resource),
DEVMETHOD(bus_activate_resource, bus_generic_activate_resource),
DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource),
Modified: projects/largeSMP/sys/conf/NOTES
==============================================================================
--- projects/largeSMP/sys/conf/NOTES Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/conf/NOTES Mon May 2 14:23:36 2011 (r221325)
@@ -1940,6 +1940,8 @@ device xmphy # XaQti XMAC II
# lge: Support for PCI gigabit ethernet adapters based on the Level 1
# LXT1001 NetCellerator chipset. This includes the D-Link DGE-500SX,
# SMC TigerCard 1000 (SMC9462SX), and some Addtron cards.
+# malo: Marvell Libertas wireless NICs.
+# mwl: Marvell 88W8363 802.11n wireless NICs.
# msk: Support for gigabit ethernet adapters based on the Marvell/SysKonnect
# Yukon II Gigabit controllers, including 88E8021, 88E8022, 88E8061,
# 88E8062, 88E8035, 88E8036, 88E8038, 88E8050, 88E8052, 88E8053,
@@ -2131,6 +2133,8 @@ options AH_RXCFG_SDMAMW_4BYTES
device ath_rate_sample # SampleRate tx rate control for ath
device bwi # Broadcom BCM430* BCM431*
device bwn # Broadcom BCM43xx
+device malo # Marvell Libertas wireless NICs.
+device mwl # Marvell 88W8363 802.11n wireless NICs.
device ral # Ralink Technology RT2500 wireless NICs.
# Use "private" jumbo buffers allocated exclusively for the ti(4) driver.
@@ -2727,6 +2731,9 @@ device run
# Atheros AR5523 wireless driver
device uath
#
+# Conexant/Intersil PrismGT wireless driver
+device upgt
+#
# Ralink Technology RT2500USB wireless driver
device ural
#
Modified: projects/largeSMP/sys/conf/files
==============================================================================
--- projects/largeSMP/sys/conf/files Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/conf/files Mon May 2 14:23:36 2011 (r221325)
@@ -1995,6 +1995,7 @@ dev/wi/if_wi.c optional wi
dev/wi/if_wi_pccard.c optional wi pccard
dev/wi/if_wi_pci.c optional wi pci
dev/wl/if_wl.c optional wl isa
+dev/wpi/if_wpi.c optional wpi pci
wpifw.c optional wpifw \
compile-with "${AWK} -f $S/tools/fw_stub.awk wpi.fw:wpifw:153229 -mwpi -c${.TARGET}" \
no-implicit-rule before-depend local \
Modified: projects/largeSMP/sys/conf/kern.mk
==============================================================================
--- projects/largeSMP/sys/conf/kern.mk Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/conf/kern.mk Mon May 2 14:23:36 2011 (r221325)
@@ -3,24 +3,25 @@
#
# Warning flags for compiling the kernel and components of the kernel.
#
-# Note that the newly added -Wcast-qual is responsible for generating
+# Note that the newly added -Wcast-qual is responsible for generating
# most of the remaining warnings. Warnings introduced with -Wall will
# also pop up, but are easier to fix.
CWARNFLAGS?= -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes \
-Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual \
- -Wundef -Wno-pointer-sign -fformat-extensions
+ -Wundef -Wno-pointer-sign -fformat-extensions \
+ -Wmissing-include-dirs
#
# The following flags are next up for working on:
-# -W
+# -Wextra
#
-# On the i386, do not align the stack to 16-byte boundaries. Otherwise GCC
-# 2.95 adds code to the entry and exit point of every function to align the
+# On i386, do not align the stack to 16-byte boundaries. Otherwise GCC 2.95
+# and above adds code to the entry and exit point of every function to align the
# stack to 16-byte boundaries -- thus wasting approximately 12 bytes of stack
-# per function call. While the 16-byte alignment may benefit micro benchmarks,
+# per function call. While the 16-byte alignment may benefit micro benchmarks,
# it is probably an overall loss as it makes the code bigger (less efficient
# use of code cache tag lines) and uses more stack (less efficient use of data
-# cache tag lines). Explicitly prohibit the use of SSE and other SIMD
+# cache tag lines). Explicitly prohibit the use of FPU, SSE and other SIMD
# operations inside the kernel itself. These operations are exclusively
# reserved for user applications.
#
@@ -35,6 +36,7 @@ INLINE_LIMIT?= 8000
.if ${MACHINE_CPUARCH} == "arm"
INLINE_LIMIT?= 8000
.endif
+
#
# For IA-64, we use r13 for the kernel globals pointer and we only use
# a very small subset of float registers for integer divides.
@@ -98,7 +100,7 @@ INLINE_LIMIT?= 8000
CFLAGS+= -ffreestanding
#
-# GCC SSP support.
+# GCC SSP support
#
.if ${MK_SSP} != "no" && ${MACHINE_CPUARCH} != "ia64" && \
${MACHINE_CPUARCH} != "arm" && ${MACHINE_CPUARCH} != "mips"
@@ -106,9 +108,8 @@ CFLAGS+= -fstack-protector
.endif
#
-# Enable CTF conversation on request.
+# Enable CTF conversation on request
#
.if defined(WITH_CTF)
.undef NO_CTF
.endif
-
Modified: projects/largeSMP/sys/conf/options
==============================================================================
--- projects/largeSMP/sys/conf/options Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/conf/options Mon May 2 14:23:36 2011 (r221325)
@@ -775,6 +775,8 @@ ATH_ENABLE_11N opt_ah.h
# options for the Atheros hal
AH_SUPPORT_AR5416 opt_ah.h
+# XXX For now, this breaks non-AR9130 chipsets, so only use it
+# XXX when actually targetting AR9130.
AH_SUPPORT_AR9130 opt_ah.h
AH_DEBUG opt_ah.h
@@ -791,6 +793,7 @@ AH_MAXCHAN opt_ah.h
AH_RXCFG_SDMAMW_4BYTES opt_ah.h
# AR5416 and later interrupt mitigation
+# XXX do not use this for AR9130
AH_AR5416_INTERRUPT_MITIGATION opt_ah.h
# options for the Broadcom BCM43xx driver (bwi)
Modified: projects/largeSMP/sys/dev/acpica/acpi_pcib_acpi.c
==============================================================================
--- projects/largeSMP/sys/dev/acpica/acpi_pcib_acpi.c Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/dev/acpica/acpi_pcib_acpi.c Mon May 2 14:23:36 2011 (r221325)
@@ -100,6 +100,7 @@ static device_method_t acpi_pcib_acpi_me
DEVMETHOD(bus_read_ivar, acpi_pcib_read_ivar),
DEVMETHOD(bus_write_ivar, acpi_pcib_write_ivar),
DEVMETHOD(bus_alloc_resource, acpi_pcib_acpi_alloc_resource),
+ DEVMETHOD(bus_adjust_resource, bus_generic_adjust_resource),
DEVMETHOD(bus_release_resource, bus_generic_release_resource),
DEVMETHOD(bus_activate_resource, bus_generic_activate_resource),
DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource),
Modified: projects/largeSMP/sys/dev/pci/pci.c
==============================================================================
--- projects/largeSMP/sys/dev/pci/pci.c Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/dev/pci/pci.c Mon May 2 14:23:36 2011 (r221325)
@@ -142,6 +142,7 @@ static device_method_t pci_methods[] = {
DEVMETHOD(bus_get_resource, bus_generic_rl_get_resource),
DEVMETHOD(bus_delete_resource, pci_delete_resource),
DEVMETHOD(bus_alloc_resource, pci_alloc_resource),
+ DEVMETHOD(bus_adjust_resource, bus_generic_adjust_resource),
DEVMETHOD(bus_release_resource, bus_generic_rl_release_resource),
DEVMETHOD(bus_activate_resource, pci_activate_resource),
DEVMETHOD(bus_deactivate_resource, pci_deactivate_resource),
Modified: projects/largeSMP/sys/dev/pci/pci_pci.c
==============================================================================
--- projects/largeSMP/sys/dev/pci/pci_pci.c Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/dev/pci/pci_pci.c Mon May 2 14:23:36 2011 (r221325)
@@ -73,6 +73,7 @@ static device_method_t pcib_methods[] =
DEVMETHOD(bus_read_ivar, pcib_read_ivar),
DEVMETHOD(bus_write_ivar, pcib_write_ivar),
DEVMETHOD(bus_alloc_resource, pcib_alloc_resource),
+ DEVMETHOD(bus_adjust_resource, bus_generic_adjust_resource),
DEVMETHOD(bus_release_resource, bus_generic_release_resource),
DEVMETHOD(bus_activate_resource, bus_generic_activate_resource),
DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource),
Modified: projects/largeSMP/sys/dev/wpi/if_wpi.c
==============================================================================
--- projects/largeSMP/sys/dev/wpi/if_wpi.c Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/dev/wpi/if_wpi.c Mon May 2 14:23:36 2011 (r221325)
@@ -2298,7 +2298,7 @@ wpi_mrr_setup(struct wpi_softc *sc)
}
/* setup MRR for control frames */
- mrr.which = htole32(WPI_MRR_CTL);
+ mrr.which = WPI_MRR_CTL;
error = wpi_cmd(sc, WPI_CMD_MRR_SETUP, &mrr, sizeof mrr, 0);
if (error != 0) {
device_printf(sc->sc_dev,
@@ -2307,7 +2307,7 @@ wpi_mrr_setup(struct wpi_softc *sc)
}
/* setup MRR for data frames */
- mrr.which = htole32(WPI_MRR_DATA);
+ mrr.which = WPI_MRR_DATA;
error = wpi_cmd(sc, WPI_CMD_MRR_SETUP, &mrr, sizeof mrr, 0);
if (error != 0) {
device_printf(sc->sc_dev,
Modified: projects/largeSMP/sys/fs/nfs/nfs_commonport.c
==============================================================================
--- projects/largeSMP/sys/fs/nfs/nfs_commonport.c Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/fs/nfs/nfs_commonport.c Mon May 2 14:23:36 2011 (r221325)
@@ -404,6 +404,8 @@ nfssvc_call(struct thread *p, struct nfs
} else if (uap->flag & NFSSVC_GETSTATS) {
error = copyout(&newnfsstats,
CAST_USER_ADDR_T(uap->argp), sizeof (newnfsstats));
+ if ((uap->flag & NFSSVC_ZEROSTATS) != 0 && error == 0)
+ bzero(&newnfsstats, sizeof(newnfsstats));
return (error);
} else if (uap->flag & NFSSVC_NFSUSERDPORT) {
u_short sockport;
Modified: projects/largeSMP/sys/i386/conf/GENERIC
==============================================================================
--- projects/largeSMP/sys/i386/conf/GENERIC Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/i386/conf/GENERIC Mon May 2 14:23:36 2011 (r221325)
@@ -273,9 +273,17 @@ device ath_pci # Atheros pci/cardbus g
device ath_hal # pci/cardbus chip support
options AH_SUPPORT_AR5416 # enable AR5416 tx/rx descriptors
device ath_rate_sample # SampleRate tx rate control for ath
+#device bwi # Broadcom BCM430x/BCM431x wireless NICs.
+#device bwn # Broadcom BCM43xx wireless NICs.
+device ipw # Intel 2100 wireless NICs.
+device iwi # Intel 2200BG/2225BG/2915ABG wireless NICs.
+device iwn # Intel 4965/1000/5000/6000 wireless NICs.
+device malo # Marvell Libertas wireless NICs.
+device mwl # Marvell 88W8363 802.11n wireless NICs.
device ral # Ralink Technology RT2500 wireless NICs.
device wi # WaveLAN/Intersil/Symbol 802.11 wireless NICs.
#device wl # Older non 802.11 Wavelan wireless NIC.
+device wpi # Intel 3945ABG wireless NICs.
# Pseudo devices.
device loop # Network loopback
@@ -327,7 +335,9 @@ device rue # RealTek RTL8150 USB Ether
device udav # Davicom DM9601E USB
# USB Wireless
device rum # Ralink Technology RT2501USB wireless NICs
+device run # Ralink Technology RT2700/RT2800/RT3000 NICs.
device uath # Atheros AR5523 wireless NICs
+device upgt # Conexant/Intersil PrismGT wireless NICs.
device ural # Ralink Technology RT2500USB wireless NICs
device urtw # Realtek RTL8187B/L wireless NICs
device zyd # ZyDAS zb1211/zb1211b wireless NICs
Modified: projects/largeSMP/sys/i386/pci/pci_bus.c
==============================================================================
--- projects/largeSMP/sys/i386/pci/pci_bus.c Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/i386/pci/pci_bus.c Mon May 2 14:23:36 2011 (r221325)
@@ -565,6 +565,7 @@ static device_method_t legacy_pcib_metho
DEVMETHOD(bus_read_ivar, legacy_pcib_read_ivar),
DEVMETHOD(bus_write_ivar, legacy_pcib_write_ivar),
DEVMETHOD(bus_alloc_resource, legacy_pcib_alloc_resource),
+ DEVMETHOD(bus_adjust_resource, bus_generic_adjust_resource),
DEVMETHOD(bus_release_resource, bus_generic_release_resource),
DEVMETHOD(bus_activate_resource, bus_generic_activate_resource),
DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource),
Modified: projects/largeSMP/sys/mips/atheros/ar724x_pci.c
==============================================================================
--- projects/largeSMP/sys/mips/atheros/ar724x_pci.c Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/mips/atheros/ar724x_pci.c Mon May 2 14:23:36 2011 (r221325)
@@ -57,8 +57,7 @@ __FBSDID("$FreeBSD$");
#include <mips/atheros/ar71xxreg.h>
#include <mips/atheros/ar724xreg.h>
#include <mips/atheros/ar71xx_setup.h>
-#include <mips/atheros/ar71xx_pci_bus_space.h> /* XXX */
-#include <mips/atheros/ar71xx_bus_space_reversed.h> /* XXX */
+#include <mips/atheros/ar71xx_pci_bus_space.h>
#include <mips/atheros/ar71xx_cpudef.h>
@@ -113,7 +112,7 @@ static uint32_t
ar724x_pci_read_config(device_t dev, u_int bus, u_int slot, u_int func,
u_int reg, int bytes)
{
- uint32_t cmd, data, shift, mask;
+ uint32_t data, shift, mask;
/* Register access is 32-bit aligned */
shift = (reg & 3) * 8;
@@ -125,18 +124,9 @@ ar724x_pci_read_config(device_t dev, u_i
dprintf("%s: tag (%x, %x, %x) reg %d(%d)\n", __func__, bus, slot,
func, reg, bytes);
- if ((bus == 0) && (slot == 0) && (func == 0)) {
+ if ((bus == 0) && (slot == 0) && (func == 0))
data = ATH_READ_REG(AR724X_PCI_CFG_BASE + (reg & ~3));
- /*
- * WAR for BAR issue - We are unable to access the PCI device
- * space if we set the BAR with proper base address.
- */
- if (reg == PCIR_BAR(0) && bytes == 4) {
- cmd = (ar71xx_soc == AR71XX_SOC_AR7240) ?
- 0xffff : 0x1000ffff;
- ar724x_pci_write(AR724X_PCI_CFG_BASE, reg, cmd, bytes);
- }
- } else
+ else
data = -1;
/* Get request bytes from 32-bit word */
@@ -158,14 +148,14 @@ ar724x_pci_write_config(device_t dev, u_
if ((bus != 0) || (slot != 0) || (func != 0))
return;
- ar724x_pci_write(AR724X_PCI_CFG_BASE, reg, data, bytes);
/*
- * WAR for BAR issue - We are unable to access the PCI device space
- * if we set the BAR with proper base address.
- * Force a flush here (at register writing).
+ * WAR for BAR issue on AR7240 - We are unable to access the PCI device
+ * space if we set the BAR with proper base address.
*/
- if (reg == PCIR_BAR(0) && bytes == 4)
- (void)ar724x_pci_read_config(dev, bus, slot, func, reg, bytes);
+ if (reg == PCIR_BAR(0) && bytes == 4 && ar71xx_soc == AR71XX_SOC_AR7240)
+ ar724x_pci_write(AR724X_PCI_CFG_BASE, reg, 0xffff, bytes);
+ else
+ ar724x_pci_write(AR724X_PCI_CFG_BASE, reg, data, bytes);
}
static void
@@ -232,6 +222,9 @@ ar724x_pci_setup(device_t dev)
else
reg = 0x1ffc1;
ATH_WRITE_REG(AR724X_PCI_APP, reg);
+ /* Flush write */
+ (void) ATH_READ_REG(AR724X_PCI_APP);
+
DELAY(1000);
reg = ATH_READ_REG(AR724X_PCI_RESET);
@@ -457,10 +450,7 @@ ar724x_pci_activate_resource(device_t bu
case SYS_RES_MEMORY:
case SYS_RES_IOPORT:
- /* XXX */
- //rman_set_bustag(r, ar71xx_bus_space_pcimem);
- //rman_set_bustag(r, mips_bus_space_generic);
- rman_set_bustag(r, ar71xx_bus_space_reversed);
+ rman_set_bustag(r, ar71xx_bus_space_pcimem);
break;
}
}
Modified: projects/largeSMP/sys/mips/conf/PB92.hints
==============================================================================
--- projects/largeSMP/sys/mips/conf/PB92.hints Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/mips/conf/PB92.hints Mon May 2 14:23:36 2011 (r221325)
@@ -30,7 +30,11 @@ hint.arge.0.at="nexus0"
hint.arge.0.maddr=0x19000000
hint.arge.0.msize=0x1000
hint.arge.0.irq=2
-hint.arge.0.phymask=0x1
+
+# AR8316 workaround for now
+hint.arge.0.media=1000
+hint.arge.0.fduplex=1
+hint.arge.0.phymask=0x3
# GPIO
hint.gpio.0.at="apb0"
Modified: projects/largeSMP/sys/nfs/nfssvc.h
==============================================================================
--- projects/largeSMP/sys/nfs/nfssvc.h Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/nfs/nfssvc.h Mon May 2 14:23:36 2011 (r221325)
@@ -64,5 +64,6 @@
#define NFSSVC_CBADDSOCK 0x00200000
#define NFSSVC_GETSTATS 0x00400000
#define NFSSVC_BACKUPSTABLE 0x00800000
+#define NFSSVC_ZEROSTATS 0x01000000 /* modifier for GETSTATS */
#endif /* _NFS_NFSSVC_H */
Modified: projects/largeSMP/sys/x86/x86/mptable_pci.c
==============================================================================
--- projects/largeSMP/sys/x86/x86/mptable_pci.c Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/x86/x86/mptable_pci.c Mon May 2 14:23:36 2011 (r221325)
@@ -116,6 +116,7 @@ static device_method_t mptable_hostb_met
DEVMETHOD(bus_read_ivar, legacy_pcib_read_ivar),
DEVMETHOD(bus_write_ivar, legacy_pcib_write_ivar),
DEVMETHOD(bus_alloc_resource, legacy_pcib_alloc_resource),
+ DEVMETHOD(bus_adjust_resource, bus_generic_adjust_resource),
DEVMETHOD(bus_release_resource, bus_generic_release_resource),
DEVMETHOD(bus_activate_resource, bus_generic_activate_resource),
DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource),
Modified: projects/largeSMP/sys/x86/x86/nexus.c
==============================================================================
--- projects/largeSMP/sys/x86/x86/nexus.c Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/sys/x86/x86/nexus.c Mon May 2 14:23:36 2011 (r221325)
@@ -100,6 +100,8 @@ static device_t nexus_add_child(device_t
int unit);
static struct resource *nexus_alloc_resource(device_t, device_t, int, int *,
u_long, u_long, u_long, u_int);
+static int nexus_adjust_resource(device_t, device_t, int, struct resource *,
+ u_long, u_long);
#ifdef SMP
static int nexus_bind_intr(device_t, device_t, struct resource *, int);
#endif
@@ -144,6 +146,7 @@ static device_method_t nexus_methods[] =
DEVMETHOD(bus_print_child, nexus_print_child),
DEVMETHOD(bus_add_child, nexus_add_child),
DEVMETHOD(bus_alloc_resource, nexus_alloc_resource),
+ DEVMETHOD(bus_adjust_resource, nexus_adjust_resource),
DEVMETHOD(bus_release_resource, nexus_release_resource),
DEVMETHOD(bus_activate_resource, nexus_activate_resource),
DEVMETHOD(bus_deactivate_resource, nexus_deactivate_resource),
@@ -332,6 +335,23 @@ nexus_add_child(device_t bus, u_int orde
return(child);
}
+static struct rman *
+nexus_rman(int type)
+{
+ switch (type) {
+ case SYS_RES_IRQ:
+ return (&irq_rman);
+ case SYS_RES_DRQ:
+ return (&drq_rman);
+ case SYS_RES_IOPORT:
+ return (&port_rman);
+ case SYS_RES_MEMORY:
+ return (&mem_rman);
+ default:
+ return (NULL);
+ }
+}
+
/*
* Allocate a resource on behalf of child. NB: child is usually going to be a
* child of one of our descendants, not a direct child of nexus0.
@@ -364,27 +384,9 @@ nexus_alloc_resource(device_t bus, devic
}
flags &= ~RF_ACTIVE;
-
- switch (type) {
- case SYS_RES_IRQ:
- rm = &irq_rman;
- break;
-
- case SYS_RES_DRQ:
- rm = &drq_rman;
- break;
-
- case SYS_RES_IOPORT:
- rm = &port_rman;
- break;
-
- case SYS_RES_MEMORY:
- rm = &mem_rman;
- break;
-
- default:
- return 0;
- }
+ rm = nexus_rman(type);
+ if (rm == NULL)
+ return (NULL);
rv = rman_reserve_resource(rm, start, end, count, flags, child);
if (rv == 0)
@@ -402,6 +404,20 @@ nexus_alloc_resource(device_t bus, devic
}
static int
+nexus_adjust_resource(device_t bus, device_t child, int type,
+ struct resource *r, u_long start, u_long end)
+{
+ struct rman *rm;
+
+ rm = nexus_rman(type);
+ if (rm == NULL)
+ return (ENXIO);
+ if (!rman_is_region_manager(r, rm))
+ return (EINVAL);
+ return (rman_adjust_resource(r, start, end));
+}
+
+static int
nexus_activate_resource(device_t bus, device_t child, int type, int rid,
struct resource *r)
{
Modified: projects/largeSMP/usr.bin/man/man.sh
==============================================================================
--- projects/largeSMP/usr.bin/man/man.sh Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/usr.bin/man/man.sh Mon May 2 14:23:36 2011 (r221325)
@@ -889,16 +889,18 @@ do_whatis() {
search_whatis whatis "$@"
}
-EQN=/usr/bin/eqn
+# User's PATH setting decides on the groff-suite to pick up.
+EQN=eqn
+NROFF='groff -S -P-c -Wall -mtty-char -man'
+PIC=pic
+REFER=refer
+TBL=tbl
+TROFF='groff -S -P-c -man'
+VGRIND=vgrind
+
COL=/usr/bin/col
LOCALE=/usr/bin/locale
-NROFF='/usr/bin/groff -S -Wall -mtty-char -man'
-PIC=/usr/bin/pic
SYSCTL=/sbin/sysctl
-TBL=/usr/bin/tbl
-TROFF='/usr/bin/groff -S -man'
-REFER=/usr/bin/refer
-VGRIND=/usr/bin/vgrind
debug=0
man_default_sections='1:1aout:8:2:3:n:4:5:6:7:9:l'
Modified: projects/largeSMP/usr.bin/nfsstat/nfsstat.1
==============================================================================
--- projects/largeSMP/usr.bin/nfsstat/nfsstat.1 Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/usr.bin/nfsstat/nfsstat.1 Mon May 2 14:23:36 2011 (r221325)
@@ -28,7 +28,7 @@
.\" From: @(#)nfsstat.1 8.1 (Berkeley) 6/6/93
.\" $FreeBSD$
.\"
-.Dd October 18, 2007
+.Dd May 1, 2011
.Dt NFSSTAT 1
.Os
.Sh NAME
@@ -78,7 +78,6 @@ activity for both the client and server
second intervals.
.It Fl z
Reset statistics after displaying them.
-(Not currently supported by the experimental nfs subsystem.)
.It Fl e
Gather statistics from the experimental nfs subsystem that includes
support for NFSv4 instead of the regular nfs subsystem.
Modified: projects/largeSMP/usr.bin/nfsstat/nfsstat.c
==============================================================================
--- projects/largeSMP/usr.bin/nfsstat/nfsstat.c Mon May 2 14:13:12 2011 (r221324)
+++ projects/largeSMP/usr.bin/nfsstat/nfsstat.c Mon May 2 14:23:36 2011 (r221325)
@@ -85,6 +85,7 @@ static int zflag = 0;
static int run_v4 = 0;
static int printtitle = 1;
static struct ext_nfsstats ext_nfsstats;
+static int nfssvc_flag;
void intpr(int, int);
void printhdr(int, int);
@@ -107,6 +108,7 @@ main(int argc, char **argv)
char *memf, *nlistf;
char errbuf[_POSIX2_LINE_MAX];
+ nfssvc_flag = NFSSVC_GETSTATS;
interval = 0;
memf = nlistf = NULL;
while ((ch = getopt(argc, argv, "cesWM:N:w:z")) != -1)
@@ -135,6 +137,7 @@ main(int argc, char **argv)
break;
case 'z':
zflag = 1;
+ nfssvc_flag |= NFSSVC_ZEROSTATS;
break;
case 'e':
run_v4 = 1;
@@ -161,7 +164,7 @@ main(int argc, char **argv)
errx(1, "experimental client/server not loaded");
if (run_v4 != 0) {
- if (nfssvc(NFSSVC_GETSTATS, &ext_nfsstats) < 0)
+ if (nfssvc(nfssvc_flag, &ext_nfsstats) < 0)
err(1, "Can't get stats");
} else if (nlistf != NULL || memf != NULL) {
deadkernel = 1;
@@ -793,13 +796,13 @@ exp_sidewaysintpr(u_int interval, int cl
int hdrcnt = 1;
ext_nfsstatsp = &lastst;
- if (nfssvc(NFSSVC_GETSTATS, ext_nfsstatsp) < 0)
+ if (nfssvc(nfssvc_flag, ext_nfsstatsp) < 0)
err(1, "Can't get stats");
sleep(interval);
for (;;) {
ext_nfsstatsp = &nfsstats;
- if (nfssvc(NFSSVC_GETSTATS, ext_nfsstatsp) < 0)
+ if (nfssvc(nfssvc_flag, ext_nfsstatsp) < 0)
err(1, "Can't get stats");
if (--hdrcnt == 0) {
More information about the svn-src-projects
mailing list