Add f_isset() utility subroutine for checking if a variable is set but in
a more readable fashion.


git-svn-id: svn://svn.freebsd.org/base/head@250317 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Re-organize and add missing installVarDefaults and mediaSetDirectory.


git-svn-id: svn://svn.freebsd.org/base/head@250318 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Alphabetize strings by variable names.


git-svn-id: svn://svn.freebsd.org/base/head@250319 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Remove unused variables.


git-svn-id: svn://svn.freebsd.org/base/head@250320 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Recursively calculate includes. This solves the problem of some includes
missing from the graph, but it also unfortunately forces yet another bug
in graphviz dot(1) to appear. When edge labels are enabled (using '\T')
with this many edges, dot(1) will do bad things in init_rank() and often
crash. So while we're here, let's disable edge labels for the include-
relationship graph feature.


git-svn-id: svn://svn.freebsd.org/base/head@250321 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Explicitly track "script.subr" which wasn't showing up in the graph because
it's not used by anything within bsdconfig nor any modules (rather, the
script.subr include is designed to be used externally -- nonetheless we
want to track it in the modular graph outputs showing includes).


git-svn-id: svn://svn.freebsd.org/base/head@250322 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Commit first portion of package module -- this includes the ability to view
categories, view packages, mark packages for installation, de-installation,
or re-installation, calculate and track dependencies, as well as ability to
review selections.

Still to come is the actual processing of selections (performing the
various actions associated with the user's selections, such as installing
dependencies first, then selections, etc.).


git-svn-id: svn://svn.freebsd.org/base/head@250323 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
decode_win_sdram_fixup() function should be declared, defined and used
only by Armada XP

Obtained from:	Semihalf


git-svn-id: svn://svn.freebsd.org/base/head@250324 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Simplify this bit of code!


git-svn-id: svn://svn.freebsd.org/base/head@250325 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Re-work how transmit buffer limits are enforced - partly to fix the PR,
but partly to just tidy up things.

The problem here - there are too many TX buffers in the queue! By the
time one needs to transmit an EAPOL frame (for this PR, it's the response
to the group rekey notification from the AP) there are no ath_buf entries
free and the EAPOL frame doesn't go out.

Now, the problem!

* Enforcing the TX buffer limitation _before_ we dequeue the frame?
  Bad idea. Because..
* .. it means I can't check whether the mbuf has M_EAPOL set.

The solution(s):

* De-queue the frame first
* Don't bother doing the TX buffer minimum free check until after
  we know whether it's an EAPOL frame or not.
* If it's an EAPOL frame, allocate the buffer from the mgmt pool
  rather than the default pool.

Whilst I'm here:

* Add a tweak to limit how many buffers a single node can acquire.
* Don't enforce that for EAPOL frames.
* .. set that to default to 1/4 of the available buffers, or 32,
  whichever is more sane.

This doesn't fix issues due to a sleeping node or a very poor performing
node; but this doesn't make it worse.

Tested:

* AR5416 STA, TX'ing 100+ mbit UDP to an AP, but only 50mbit being received
  (thus the TX queue fills up.)
* .. with CCMP / WPA2 encryption configured
* .. and the group rekey time set to 10 seconds, just to elicit the
  behaviour very quickly.

PR:		kern/138379


git-svn-id: svn://svn.freebsd.org/base/head@250326 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Add a sysctl vfs.read_min to complement the exiting vfs.read_max.  It
defaults to 1, meaning that it's off.

When read-ahead is enabled on a file, the vfs cluster code deliberately
breaks a read into 2 I/O transactions; one to satisfy the actual read,
and one to perform read-ahead.  This makes sense in low-latency
circumstances, but often produces unbalanced i/o transactions that
penalize disks.  By setting vfs.read_min, we can tell the algorithm to
fetch a larger transaction that what we asked for, achieving the same
effect as the read-ahead but without the doubled, unbalanced transaction
and the slightly lower latency.  This significantly helps our workloads
with video streaming.

Submitted by:	emax
Reviewed by:	kib
Obtained from:	Netflix


git-svn-id: svn://svn.freebsd.org/base/head@250327 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
By request, add an arrow from NetBSD-0.8 to FreeBSD-1.0.

While here, add a few more NetBSD versions to the tree itself.

Submitted by:	Alan Barrett <apb@cequrux.com>
Submitted by:	Thomas Klausner <wiz@netbsd.org>


git-svn-id: svn://svn.freebsd.org/base/head@250330 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Don't pad disk partition sizes with leading zeros.  This was already
fixed in a different way by the new disk code used for other
platforms.

MFC after:	1 week


git-svn-id: svn://svn.freebsd.org/base/head@250333 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Remove a redundant call to panic() from vm_radix_keydiff().  The assertion
before the loop accomplishes the same thing.

Sponsored by:	EMC / Isilon Storage Division


git-svn-id: svn://svn.freebsd.org/base/head@250334 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Constify libusb_get_pollfds return

The correct return type, per our libusb(3) man page and the libusb.org
and libusbx projects (whose interface we intend to follow for our libusb),
is const struct libusb_pollfd **.

Unfortunately the doxygen-generated libusbx API documentation[1] omits[2]
the const for some reason.

[1] http://libusbx.sourceforge.net/api-1.0/group__poll.html#gab1a72869a926552b27a6c667695df3a2

[2] http://sourceforge.net/mailarchive/forum.php?thread_name=497D10BE.8090007%40n-dimensional.de&forum_name=libusb-devel

Reviewed by: hselasky@


git-svn-id: svn://svn.freebsd.org/base/head@250335 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Work around the implementation of LIBRARIES_ONLY.  It causes drti.o to
not be installed in /usr/lib32 on systems with compat-32 support.

This fix has two parts.  First, the build is forced by linking drti.o
into a dummy internal library.  Second, the object file is installed
manually in the LIBRARIES_ONLY case.

MFC after:	3 days


git-svn-id: svn://svn.freebsd.org/base/head@250337 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Rename VM_NDOMAIN into MAXMEMDOM and move it into machine/param.h in
order to match the MAXCPU concept.  The change should also be useful
for consolidation and consistency.

Sponsored by:	EMC / Isilon storage division
Obtained from:	jeff
Reviewed by:	alc


git-svn-id: svn://svn.freebsd.org/base/head@250338 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Add functions to do ACPI System Locality Information Table parsing
and printing at boot.
For reference on table informations and purposes please review ACPI specs.

Sponsored by:	EMC / Isilon storage division
Obtained from:	jeff
Reviewed by:	jhb (earlier version)


git-svn-id: svn://svn.freebsd.org/base/head@250339 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
1. Updated Copyright Information
2. Added Flash Read/Update Support
3. Fixed TSO Handling

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


git-svn-id: svn://svn.freebsd.org/base/head@250340 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Merge remote-tracking branch 'upstream/master'