Merge OpenSSL 1.0.1f.

Approved by:	so (delphij), benl (silence)
Implement generic support for early printf. Thought I can't find the
paper trail now, this patch is similar to one posted for one of the
preliminary versions of a new armv6 port. I took them and made them
more generic. Option not enabled by default since each board/port has
to provide its own eputc, and possibly do other things as well...
Add support for mapping a small range of the SoC devices for debugging
purposes early in boot.
Implement support for early printf. You need to define SOCDEV_{PA,VA}
as described in the comments for the eputc function in your config file.
Clean up HL201 config (for the hot-e 201 and 101 models from thinlinx).
Make comments match parameters
Add options for early printf so we get regression build testing on it.
Add preview of options for FDT support coming soon (I hope)
Mostly revert r260267 and hopefully really fix the original problem.

The latest draft of SBC-3 tells: "A MAXIMUM UNMAP LBA COUNT field set to
a non-zero value indicates the maximum number of LBAs that may be unmapped
by an UNMAP command."  To me it does not sound like that limit is set per
single descriptor, but rather per all command.  And I have at least one
device that behaves exactly that way.  This patch fixes the problem there.

MFC after:	1 week
Document EARLY_PRINTF
Disable output about duplicate services, which were not output during
testing.

MFC after:	1 month
X-MFC-After:	r261031
Sponsored by:	The FreeBSD Foundation
Properly sort the arguments to mtx_init(9).

PR:		misc/186020
Submitted by:	alfred
MFC after:	1 week
Update jemalloc to version 3.5.0.
Remove WITHOUT_ATF as it has been replaced by WITH_TESTS

PR:		conf/185326
Reported by:	Igor Mozolevsky <igor@hybrid-lab.co.uk>
Approved by:	hrs (mentor)
OpenSSL has been updated to version 1.0.1.f

Approved by:	hrs (mentor)
Set "Interrupt Window Exiting" in the case where there is a vector to be
injected into the vcpu but the VM-entry interruption information field
already has the valid bit set.

Pointed out by:	David Reed (david.reed@tidalscale.com)
Update EINVAL description.
This matches current POSIX standards and actual FreeBSD behavior.

MFC after:	1 week
Revert r261014. Let Kevin fix it.

MFC after:	1 week
jemalloc has been updated to version 3.5.0.

Approved by:	hrs (mentor)
The posix_fallocate(2) syscall should return error number on error,
without modifying errno.

Reported and tested by:	Gennady Proskurin <gpr@mail.ru>
Reviewed by:	mdf
PR:	standards/186028
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
Replace the old unix_seqpacket and unix_seqpacket_exercise tests, which
were a little broken and not automatable, with unix_seqpacket_test.
It's coverage is a superset of the old tests and it uses ATF.  It
includes test cases for bugs kern/185813 and kern/185812.

PR:		kern/185812
PR:		kern/185813
Sponsored by:	Spectra Logic
MFC after:	2 weeks
Add Atmel serial drivers.
malloc() with M_WAITOK doesn't return NULL.

MFC after:	1 week