arm: fixup ramdisk kernel kernel addresses

ok drahn@
Add SPLAY_{GENERATE,PROTOTYPE}_STATIC.

"go ahead" oga@
sync
arm: virtio board support

This commit consists of a bunch of changes which improve our FDT
support and add support for the virtio board type from qemu.

FDT changes:
 * Add a struct for returning memory address/size pairs.
 * Add code to find out how big the address/size properties are.
 * Add code to return data.
 * Use this API in ampintc and virtio.
 * Implement a way to get the interrupt controller of a device.
 * Implement a way to find out the cell size, so that we can
   read the interrupt number.
 * Add API to get interrupt number.
 * Use this API in virtio.

Virtio:
 * Implement basic construct for virtio board virt.
 * Have virt use it's own device attaching mechanism.
 * Iterate through fdt nodes and try to attach all nodes.
 * Add Virtio MMIO driver.
 * Make virt board use virtio drivers and attach to the MMIO driver.
 * Write a small driver for the virtio pl011 uart, based on the
   i.MX6 driver.

ok drahn@
Revise hardlink handling.

Allow the code to handle hardlinks to non-regular files correctly.

Track whether the file content has already been dumped to the snapshot.
Stop relying on tn_dirent_hint, which is not guaranteed to be set at all.
This change also allows us to rely on the behaviour that the file &
content is always before the zero-sized hardlinks to resolve ambiguities
during the streaming read of a snapshot.

with input from and ok pedro@
libcrypto: create manpages for Bitrig, not OpenBSD

found by drahn@ ok natano@
missing argument; found by mfriedl@genua.de

ok haesbaert@ patrick@ natano@
Fix cut-and-paste error message.

Imported from FreeBSD by patrick@
The, currently undocumented, -i option takes an argument.

Imported from FreeBSD by patrick@
dtc: don't crash if the argument is a directory.

Imported from FreeBSD by patrick@
dtc: ignore lines starting with #.

This is necessary because we use the C pre-processor to parse #include lines
and cpp adds line markings that start with #.

Imported from FreeBSD by patrick@
Remove unused SIZEOF_INT #define.

ok pedro@
Replace various macros with nitems() from <sys/param.h>.

ok pedro@
Revert a part of r1.98 if_run.c which caused a regression on older gen
run(4) devices.

ok stsp@

imported to Bitrig by patrick@, ok'd by pedro@
Add the -d flag (limit display depth) for compatibility with FreeBSD,
DragonFly, NetBSD and GNU coreutils, even though it's not POSIX.
Actually, this simplifies the code rather than complicating it.

Because -a and -d need not be mutually exclusive (as observed by
millert@) and -s is identical to -d 0, -a and -s are no longer
mutually exclusive, but -as and -sa are now the same as -s.
That is explicitly allowed by POSIX.

Based on a patch from William Orr <will at worrbase dot com>,
but extensively massaged and HISTORY added by me.

feedback and ok millert@

imported to Bitrig by patrick@, ok'd by pedro@
Don't assume that ep_taddr and ep_daddr are page-aligned.  It is possible to
construct ELF executables for which ep_daddr ends up not being properly
aligned.  Sanitize the addresses before setting up the address space for the
new executable.  Should fix the panic discovered by Alejandro Hernandez.

ok miod@

imported to Bitrig by patrick@, ok'd by pedro@
Disable SSLv3 in response to POODLE attack.

ok pedro@