em: Switch from device_polling to ifpoll
em: Clear status polling count during interrupt disable handling
ifpoll: Factor out code for devices which does not support multiple queues

Mainly avoid code duplication.

While I'm here, fix a typo in em(4) which always enable interrupt during
interface initialization.
Random makefile cleanup prior to bmake import

Bmake does not like to encounter "exit 0" or "exit 1".  It fails using the
exec command.  Replace instances of "exit 1" with /usr/bin/false.  There
was one instance of "exit 0" but it was at the end the target and thus
unnecessary.

The groff/tmac makefile was improved by providing a cd command for
every installed file.

Finally, one of the test makefiles was missing a single quote in one of
the targets.
Replace legacy make with bmake

The proper way to detect which make is building the makefile is to check
for .PARSEDIR.  If present, bmake is processing the makefile.  For the
time being, both make will be supported for bootstrapping purposes, but
in time the check can be removed, say for the DragonFly 3.6 release.

The abundance of .ORDER commands in bsd.dep.mk caused a breakage when
building world in parallel with bmake.  Likely some order constraints
were impossible to achieve, and bmake just stopped while legacy did the
best it could.  In any case, the majority of the .ORDER commands were
replaced by a single .ORDER command which solved the problem.

The legacy make is disconnected in this commit set, but the source files
will be removed soon.
usr.bin/make: Remove legacy make files

usr.bin/make has been replaced with usr.bin/bmake, retaining the program
name "make".  usr.bin/make was previously disconnected from the build,
so these files were not longer used.
Import OpenSSH-6.1p1.

Features:

 * ssh-keygen(1): Add optional checkpoints for moduli screening
 * ssh-add(1): new -k option to load plain keys (skipping certificates)
 * sshd(8): Add wildcard support to PermitOpen, allowing things like
   "PermitOpen localhost:*".  bz #1857
 * ssh(1): support for cancelling local and remote port forwards via the
   multiplex socket. Use ssh -O cancel -L xx:xx:xx -R yy:yy:yy user@host"
   to request the cancellation of the specified forwardings
 * support cancellation of local/dynamic forwardings from ~C commandline
 * sshd(8): This release turns on pre-auth sandboxing sshd by default for
   new installs, by setting UsePrivilegeSeparation=sandbox in sshd_config.
 * ssh-keygen(1): Add options to specify starting line number and number of
   lines to process when screening moduli candidates, allowing processing
   of different parts of a candidate moduli file in parallel
 * sshd(8): The Match directive now supports matching on the local (listen)
   address and port upon which the incoming connection was received via
   LocalAddress and LocalPort clauses.
 * sshd(8): Extend sshd_config Match directive to allow setting AcceptEnv
   and {Allow,Deny}{Users,Groups}
 * Add support for RFC6594 SSHFP DNS records for ECDSA key types. bz#1978
 * ssh-keygen(1): Allow conversion of RSA1 keys to public PEM and PKCS8
 * sshd(8): Allow the sshd_config PermitOpen directive to accept "none" as
   an argument to refuse all port-forwarding requests.
 * sshd(8): Support "none" as an argument for AuthorizedPrincipalsFile
 * ssh-keyscan(1): Look for ECDSA keys by default. bz#1971
 * sshd(8): Add "VersionAddendum" to sshd_config to allow server operators
   to append some arbitrary text to the server SSH protocol banner.

Bugfixes:

 * ssh(1): ensure that $DISPLAY contains only valid characters before
   using it to extract xauth data so that it can't be used to play local
   shell metacharacter games.
 * ssh(1): unbreak remote portforwarding with dynamic allocated listen ports
 * scp(1): uppress adding '--' to remote commandlines when the first
   argument does not start with '-'. saves breakage on some
   difficult-to-upgrade embedded/router platforms
 * ssh(1)/sshd(8): fix typo in IPQoS parsing: there is no "AF14" class,
   but there is an "AF21" class
 * ssh(1)/sshd(8): do not permit SSH2_MSG_SERVICE_REQUEST/ACCEPT during
   rekeying
 * ssh(1): skip attempting to create ~/.ssh when -F is passed
 * sshd(8): unbreak stdio forwarding when ControlPersist is in use; bz#1943
 * sshd(1): send tty break to pty master instead of (probably already
   closed) slave side; bz#1859
 * sftp(1): silence error spam for "ls */foo" in directory with files;
   bz#1683
 * Fixed a number of memory and file descriptor leaks
 * ssh(1)/sshd(8): Don't spin in accept() in situations of file
   descriptor exhaustion. Instead back off for a while.
 * ssh(1)/sshd(8): Remove hmac-sha2-256-96 and hmac-sha2-512-96 MACs as
   they were removed from the specification. bz#2023,
 * sshd(8): Handle long comments in config files better. bz#2025
 * ssh(1): Delay setting tty_flag so RequestTTY options are correctly
   picked up. bz#1995
 * sshd(8): Fix handling of /etc/nologin incorrectly being applied to root
   on platforms that use login_cap.
Merge branch 'vendor/OPENSSH'
Update files for OpenSSH-6.1p1 import.
Merge branch 'master' into gsocdrm_merger
Fix cross-build

The introduction of BTOOLMAKE and BTOOLCONFIG did not work when
cross-building.  The value of BTOOLSDEST and CTOOLSDEST change when
starting stage 2 of the crossworld.  This was never detected before
because these variables were only used in stage 1.

However, the absolute path to these tools aren't needed.  The PATH
is defined in the environment to ensure the bootstrap tools are
used when appropriate.  Previous errors leading me to think the host
tool was being used may have been caused by other things.

At the same time, all the "${MAKE}" variables were replaced with "make".
The make program defines "MAKE" as whatever was used to invoke it,
including paths.  Since we are controlling the path, we don't want any
surprises.  In any cases, we want "${MAKE}" to equal "make", so just
hardcode it that way.

Tested on cross-build, bmake-equipped system, and legacy make equipped
system.
Merge branch 'master' into gsocdrm_merger
ioapic/x86_64: Allow GSI > 191

Some BIOSes seem to assume that all 256 IDT vectors could be used,
while we limit the available IDT vectors percpu to 192.   Find an
unused IRQ for these GSIs, if this ever happens.

Reported-by: thowe on EFnet #dragonflybsd
bug #2442: Fix bmake regression of kernel build

Kernel modules such as acpi.ko didn't load due to missing symbols after
bmake replaced legacy make.  The cause was traced back to a badly
generated header which in turn was caused by the file kern.fwd.mk.  That
file contained ":U" modifiers that should have been converted to ":tu"
modifiers.

The actual cause of the missing symbols were due to atomic.h not getting
included into atomic.c twice.  Case sensitivity prevented a macro from
being properly unset.  The modifiers in question turn everything to
upper case.

A full kernel build is required to fix the module loading.
Merge branch 'master' into gsocdrm_merger
Implement eaccess

It's just like access, but uses AT_EACCESS to check effective user ID
instead of the real user ID.
Merge branch 'master' into gsocdrm_jfree