Commit graph

170452 commits

Author SHA1 Message Date
Adrian Chadd c7551b8b46 Remove duplicate config bits.
Submitted by:	juli
2012-05-12 19:43:22 +00:00
Marius Strobl 0a7ac239c9 Add glue/support for the SAM9XE512-based Ethernut 5 boards. Currently,
all integrated and on-board peripherals except the DataFlash (at91_spi(4)
and at45d(4) still need to be unb0rken) and NAND Flash (missing NAND
framework) are working.
AFAICT, this makes FreeBSD the first operating system besides Nut/OS
supporting Ethernut 5 out of tree.
2012-05-12 18:11:26 +00:00
Glen Barber e18a29ac35 Docuement requirement to alter some sysctls when using igb(4) with
jumbo frames.

PR:		153738
Submitted by:	Tom Judge (tom!tomjudge.com)
Discussed with:	jfv (in part, a long time ago...)
MFC after:	1 week
2012-05-12 18:10:27 +00:00
Adrian Chadd 0d96099845 Revert this - I disabled it whilst hwpmc is/was broken. 2012-05-12 17:42:22 +00:00
Adrian Chadd 1111c8313a Flip on WN1043ND switch PHY support.
* Add the i2c bitbang bus;
* Add the etherswitch/rtl8366rb drivers;
* "fix" the USB GPIO configuration so USB actually works.

Submitted by:	Stefan Bethke <stb@lassitu.de>
2012-05-12 17:41:42 +00:00
Joel Dahl 5da4420931 mdoc: use Po and Pc macros instead of parens. Also avoid starting a line
with Ns.
2012-05-12 17:14:55 +00:00
Andriy Gapon 9da75f3a36 add a zfs spa_t change missed in r235329
sys/cddl/boot is obviously not under sys/boot...

Pointed out by:	Jan Beich <jbeich@tormail.org>
Pointyhat to:	avg
MFC after:	1 month
2012-05-12 16:36:54 +00:00
Glen Barber a5e4c905ee Regenerate src.conf(5) for mdoc(7) and typo corrections.
PR:		167804
Submitted by:	Nobuyuki Koganemaru (kogane!jp.freebsd.org)
MFC after:	3 days
2012-05-12 16:12:36 +00:00
Joel Dahl 9650117163 Remove tab from kernel configuration option. This is consistent with the rest
of our manual pages.
2012-05-12 16:08:05 +00:00
Adrian Chadd 60807f5b81 Add opt_wlan.h includes, so IEEE80211_* configuration changes are
correctly picked up.

Noticed by:	Justin Hibbits, whilst debugging @ BSDCan
2012-05-12 15:11:53 +00:00
Glen Barber 7b1d17a1bc General mdoc(7) and typo fixes.
PR:		167804
Submitted by:	Nobuyuki Koganemaru (kogane!jp.freebsd.org)
MFC after:	3 days
2012-05-12 15:08:22 +00:00
Joel Dahl cd92c96215 mdoc: remove redundant paragraph macro. 2012-05-12 14:46:49 +00:00
Joel Dahl 70c8684f0b mdoc: remove redundant Pp and end a display block with Ed. 2012-05-12 14:43:52 +00:00
Rui Paulo 82f98de5fe Convert the if_vr(4) driver model to the interrupt filter model and use
a taskqueue.

This gives a 16% performance improvement under high load on slow systems,
especially when vr shares an interrupt with another device, which is
common with the Alix x86 boards.
Contrary to the other devices, I left the interrupt processing for loop
in because there was no significant difference in performance and this
should avoid enqueuing more taskqueues unnecessarily.
We also decided to move the vr_start_locked() call inside the for loop
because we found out that it helps performance since TCP ACKs now have a
chance to go out quicker.

Reviewed by:	yongari (older version, same idea)
Discussed with:	yongari, jhb
2012-05-12 14:37:25 +00:00
Alexander Motin 711f661393 Add two functions xpt_batch_start() and xpt_batch_done() to the CAM SIM KPI
to allow drivers to handle request completion directly without passing
them to the CAM SWI thread removing extra context switch.
Modify all ATA/SATA drivers to use them.

Reviewed by:	gibbs, ken
MFC after:	2 weeks
2012-05-12 13:55:36 +00:00
Rick Macklem 7af1242a34 PR# 165923 reported intermittent write failures for dirty
memory mapped pages being written back on an NFS mount.
Since any thread can call VOP_PUTPAGES() to write back a
dirty page, the credentials of that thread may not have
write access to the file on an NFS server. (Often the uid
is 0, which may be mapped to "nobody" in the NFS server.)
Although there is no completely correct fix for this
(NFS servers check access on every write RPC instead of at
open/mmap time), this patch avoids the common cases by
holding onto a credential that recently opened the file
for writing and uses that credential for the write RPCs
being done by VOP_PUTPAGES() for both NFS clients.

Tested by:	Joel Ray Holveck (joelh at juniper.net)
PR:		kern/165923
Reviewed by:	kib
MFC after:	2 weeks
2012-05-12 12:02:51 +00:00
Antoine Brodin 2963a15591 Add more obsolete files. 2012-05-12 10:53:49 +00:00
Andriy Gapon 0da23ac99d zfs boot: try to set vfs.root.mountfrom from currdev as a fallback
This way with the new zfsloader there is no need to explicitly set zfs
root filesystem either via vfs.root.mountfrom or fstab.
It should be automatically picked up from currdev which is by default
is set from bootfs.

Tested by:	Florian Wagner <florian@wagner-flo.net> (x86)
MFC after:	1 month
2012-05-12 09:07:41 +00:00
Andriy Gapon 1702e62f67 zfsboot/zfsloader: support accessing filesystems within a pool
In zfs loader zfs device name format now is "zfs:pool/fs",
fully qualified file path is "zfs:pool/fs:/path/to/file"
loader allows accessing files from various pools and filesystems as well
as changing currdev to a different pool/filesystem.

zfsboot accepts kernel/loader name in a format pool:fs:path/to/file or,
as before, pool:path/to/file; in the latter case a default filesystem
is used (pool root or bootfs).  zfsboot passes guids of the selected
pool and dataset to zfsloader to be used as its defaults.

zfs support should be architecture independent and is provided
in a separate library, but architectures wishing to use this zfs support
still have to provide some glue code and their devdesc should be
compatible with zfs_devdesc.
arch_zfs_probe method is used to discover all disk devices that may
be part of ZFS pool(s).

libi386 unconditionally includes zfs support, but some zfs-specific
functions are stubbed out as weak symbols.  The strong definitions
are provided in libzfsboot.
This change mean that the size of i386_devspec becomes larger
to match zfs_devspec.

Backward-compatibility shims are provided for recently added sparc64
zfs boot support.  Currently that architecture still works the old
way and does not support the new features.

TODO:
- clear up pool root filesystem vs pool bootfs filesystem distinction
- update sparc64 support
- set vfs.root.mountfrom based on currdev (for zfs)

Mid-future TODO:
- loader sub-menu for selecting alternative boot environment

Distant future TODO:
- support accessing snapshots, using a snapshot as readonly root

Reviewed by:	marius (sparc64),
		Gavin Mu <gavin.mu@gmail.com> (sparc64)
Tested by:	Florian Wagner <florian@wagner-flo.net> (x86),
		marius (sparc64)
No objections:	fs@, hackers@
MFC after:	1 month
2012-05-12 09:03:30 +00:00
Joel Dahl 8521fde5fc mdoc: end list context with El. 2012-05-12 07:52:45 +00:00
Joel Dahl 86d2025588 mdoc: list items should be specified with the It macro. 2012-05-12 07:01:21 +00:00
Adrian Chadd 67a8db4dba * Remove the AR7240 register defines and reuse the AR8x16 defines.
* Include a new register define to represent "disable port mirroring
  to CPU port".

Obtained from:	Patrick Kelsey <kelsey@ieee.org>
2012-05-12 06:24:21 +00:00
Adrian Chadd 9d9690e93b Now that there's a hint for it, add a "I'm an AR7240 switch!" hint. 2012-05-12 05:27:14 +00:00
Adrian Chadd 27a2ecaa9a Further arswitch work:
* Add in the AR724x support.  It probes the same as an AR8216/AR8316, so
  just add in a hint to force the probe success rather than auto-detecting
  it.

* Add in the missing entries from conf/files, lacking in the previous
  commit.

The register values and CPU port / mirror port initialisation value was
obtained from Linux OpenWRT ag71xx_ar7240.c.

The DELAY(1000) to let things settle is my local workaround.  For some
reason, PHY4 doesn't seem to probe very reliably without it.  It's quite
possible that we're missing some MDIO bus initialisation code in if_arge
for the AR724x case.  As I dislike DELAY() workarounds in general, it's
definitely worth trying to figure out why this is the case.

Tested on:	AP93 (AR7240) reference design

Obtained from:	Linux OpenWRT
2012-05-12 05:26:49 +00:00
Jason Evans 35dad07381 Import jemalloc 3.0.0. This fixes memory zeroing bugs that manifested as
jemalloc assertion failures for debug builds, or as calloc() sometimes
returning non-zeroed memory for production builds.
2012-05-12 05:26:49 +00:00
Sean Bruno 9a4e738a44 Pointy hat to sleep deprived committer.
Use a *real* variable type instead of one I made up.

Background Music:  Queen -- Bicycle Race

Reviewed by:    BSDCAN 2012 Hacker Lounge Audience
2012-05-12 05:05:22 +00:00
Adrian Chadd f7c03fa47d Add in the AP93 configuration file.
The AP93 has:

* AR7240 - mips24k processor with integrated 10/100 switch and
  various other peripherals;
* AR9283 - 2x2 2.4GHz 802.11n (with calibration data in flash);
* 64MB RAM;
* 16MB SPI flash.

The switch code detects as an AR8216 at the present moment, which isn't
_entirely_ strictly true.  However, the MII/MDIO routing in AP93.hints
works - the arge0 MAC connects to PHY4 in the switch, but via the
switch internal MDIO bus.  The switch connects to arge0's MDIO bus,
but only to export the switch registers.

Thanks to stb and ray for the switch work, and ray for helping determine
what the correct switch hints should be for this thing.
2012-05-12 04:52:59 +00:00
Glen Barber 0dded3391e Remove duplicate words in mdoc(7) pages.
PR:		167810
Submitted by:	Bryan Drewery {bryan!shatow%net} (hackers lounge)
Found with:	textproc/igor
MFC after:	3 days
2012-05-12 03:46:43 +00:00
Sean Bruno 7d96f12c8c Fix inappropriate data type for two bus_dmamap_t variables that were causing
PAE to insta-panic on startup.  Remove one unused variable that was
commented out.

Reviewed by:	ambrisko@
Obtained from:	jhb@ peter@ bz@ and countless others during BSDCAN
MFC after:	3 days
2012-05-12 03:30:50 +00:00
Glen Barber 50d922a02e General mdoc(7) and typo fixes.
PR:		167776
Submitted by:	Nobuyuki Koganemaru (kogane!jp.freebsd.org)
MFC after:	3 days
2012-05-12 03:25:46 +00:00
Matthew D Fleming 64afb51ccd I forgot to bump the manpage date.
Reminded by:	Garrett Cooper
MFC after:	3 days
X-MFC-with:	r235297
2012-05-12 02:49:40 +00:00
Glen Barber 608100e2f2 Bump .Dd 2012-05-12 00:30:54 +00:00
Xin LI 9aa97da69e Revert previous revision, misunderstood the code :( 2012-05-11 23:43:32 +00:00
Xin LI 259e101831 Release proc lock after setting signal queue.
PR:		kern/167727
Submitted by:	Jinjun Gao <gjinjun gmail com>
MFC after:	2 weeks
2012-05-11 23:41:52 +00:00
Matthew D Fleming af68c71a5e Add a -v and -N option to kenv(1), so it can be more easily used in
scripts the way sysctl(8) is.  The -N option, like in sysctl(8),
displays only the kenv names, not their values.  The -v option prints an
individual kenv variable name with its value as name="value".  This is
the inverse of sysctl(8)'s -n flag, since the default behaviour of
kenv(1) is already like sysctl(8) -n.

Submitted by:	Garrett Cooper < yanegomi AT gmail DOT com >
MFC after:	1 week
2012-05-11 23:05:14 +00:00
Joel Dahl 7f4211ddb9 Fix .Pp macro. 2012-05-11 22:05:30 +00:00
Xin LI 65c4dcd311 Fix the case where the utility is being used to run a command directly,
this is a regression introduced with r228917.

PR:		bin/154042
Submitted by:	Bugs Beastie <bugsbeastie gmail.com>
MFC after:	1 week
2012-05-11 21:52:05 +00:00
Warner Losh a20f92a206 Add pointers for how to setup debugging over firewire. 2012-05-11 21:25:59 +00:00
Jamie Gritton fb8d1d4f19 The linker isn't consistent in the ordering of dynamic sysctls, so don't
assume that the unnamed final component of "security.jail.param.foo." is
one less than the "foo" component.  It might be one greater instead.
2012-05-11 21:22:52 +00:00
Adrian Chadd 411477c533 Add switch support to AP96. 2012-05-11 21:13:43 +00:00
Adrian Chadd 270069b756 Add etherswitchcfg.
Submitted by:	Stefan Bethke <stb@lassitu.de>
2012-05-11 20:56:04 +00:00
Adrian Chadd a043e8c76b Commit the first pass of the etherswitch support.
This is designed to support the very basic ethernet switch chip behaviour,
specifically:

* accessing switch register space;
* accessing per-PHY registers (for switches that actually expose PHYs);
* basic vlan group support, which applies for the rtl8366 driver but not
  for the atheros switches.

This also includes initial support for:

* rtl8366rb support - which is a 10/100/1000 switch which supports
  vlan groups;
* Initial Atheros AR8316 switch support - which is a 10/100/1000 switch
  which supports an alternate vlan configuration (so the vlan group
  methods are stubbed.)

The general idea here is that the switch driver may speak to a variety of
backend busses (mdio, i2c, spi, whatever) and expose:

* If applicable, one or more MDIO busses which ethernet interfaces can
  then attach PHYs to via miiproxy/mdioproxy;

* exposes miibusses, one for each port at the moment, so ..

* .. a PHY can be exposed on each miibus, for each switch port, with all
  of the existing MII/ifnet framework.

However:

* The ifnet is manually created for now, and it isn't linked into the
  interface list, nor can you (currently) send/receive frames on this ifnet.
  At some point in the future there may be _some_ support for this, for
  switches with a multi-port, isolated mode.

* I'm still in the process of sorting out correct(er) locking.

TODO:

* ray's switch code in zrouter (zrouter.org) includes a much more developed
  newbus API that covers the various switch methods, as well as a
  capability API so drivers, the switch layer and the userland utility
  can properly control the subset of supported features.

  The plan is to sort that out later, once the rest of ray's switch drivers
  are brought over and extended to export MII busses and PHYs.

Submitted by:	Stefan Bethke <stb@lassitu.de>
Reviewed by:	ray
2012-05-11 20:53:20 +00:00
Glen Barber a3fb6da9ba General mdoc(7) and typo fixes.
PR:		167734
Submitted by:	Nobuyuki Koganemaru (kogane!jp.freebsd.org)
MFC after:	3 days
2012-05-11 20:06:46 +00:00
Hiroki Sato 8a3beec66e Skip nd6 line with no warning message when the system does not support
INET6.

Spotted by:	flo
2012-05-11 20:01:45 +00:00
Michael Tuexen ce228dab70 Fix a bug in the handling of association reset request.
MFC after: 3 days
2012-05-11 19:15:33 +00:00
Michael Tuexen c5b5675d10 Only provide the supported features in the SCTP_ASSOC_CHANGE notif
if the state is SCTP_COMM_UP or SCTP_RESTART.
While there, do some cleanups.

MFC after: 3 days
2012-05-11 18:07:36 +00:00
Dimitry Andric d681f8bf6c Fix sys/boot/i386/cdboot/cdboot.S compilation with clang after r235219.
This file uses .code16 directives, which are not yet supported by
clang's integrated assembler.

MFC after:	1 month
2012-05-11 18:07:23 +00:00
Michael Tuexen 07d249d661 Remove a constant which is only used on non-FreeBSD platform.
(The actual code for the socket option handling has been #ifdefed
out forever...)

MFC after: 3 days.
2012-05-11 17:50:51 +00:00
Warner Losh 8a921edc20 Remove unused cruft. We call through memcpy more directly when we
need to move the kernel, so we no longer need this.
2012-05-11 17:49:00 +00:00
Warner Losh 556af95adb This comment has become unmoored from the code to which it applies.
Move it back.
2012-05-11 17:40:13 +00:00