r303803 stevek Aug. 6, 2016, 6:48 p.m.
Make FDT blob available via opaque hw.fdt.dtb sysctl, if a DTB has been
installed by the time sysctls are registered.

Reviewed by:	andrew
Approved by:	sjg (mentor)
Sponsored by:	Juniper Networks, Inc.
Differential Revision:	https://reviews.freebsd.org/D7411
r303802 bcr Aug. 6, 2016, 5:53 p.m.
r303801 bjk Aug. 6, 2016, 5:27 p.m.
macros from sys/queue.h

Submitted by:	akshay1994.leo_gmail.com (for STAILQ)
Differential Revision:	https://reviews.freebsd.org/D7428
r303800 pfg Aug. 6, 2016, 5:24 p.m.
These are currently unused in our implementation and some even appear to
have not been implemented yet on linux but it is good to keep them for

Obtained from:	NetBSD (CVS Rev. 1.41)
MFC after:	1 month
r303799 pfg Aug. 6, 2016, 4:48 p.m.
These are currently unused in out implementation but it is good to keep
them for reference.

Obtained from:	NetBSD (CVS Rev. 1.35)
MFC after:	1 month
r303798 tuexen Aug. 6, 2016, 3:29 p.m.
MFC after:	3 days
r303797 jhibbits Aug. 6, 2016, 3:10 p.m.
The partition_name field is an array, so can never be NULL itself.  Check only
the first byte instead.

This was found when test building with clang, but I'm not sure how it passes
gcc's warnings either.
r303796 jhibbits Aug. 6, 2016, 3:06 p.m.
* Use the right incantation to get the next stack pointer.  Since powerpc uses
  special frames for traps, dereferencing the stack pointer straight up won't
  get us the next stack pointer in every case.
* Clear EE using the correct instruction sequence.  The PowerISA states that
  'andi.' ANDs the register with 0||<imm>, instead of sign extending or filling
  out the unavailable bits with 1.  Even if it did sign extend, PSL_EE is
  0x8000, so ~PSL_EE is 0x7fff, and the upper bits would be cleared.  Use rlwinm
  in the 32-bit case, and a two-rotate sequence in the 64-bit case, the latter
  chosen to follow the output generated by gcc.

MFC after:	1 week
r303795 kib Aug. 6, 2016, 1:32 p.m.
This is the backing feature to implement C++11 thread storage duration
specified by the thread_local keyword.  A destructor for given
thread-local object is registered to be executed at the thread
termination time using __cxa_thread_atexit().  Libc calls the
__cxa_thread_calls_dtors() during exit(3), before finalizers and
atexit functions, and libthr calls the function at the thread
termination time, after the stack unwinding and thread-specific key

There are several uncertainties in the API which lacks a formal
specification.  Among them:
- is it allowed to register destructors during destructing;
	we allow, but limiting the nesting level.  If too many iterations
	detected, a diagnostic is issued to stderr and thread forcibly
	terminates for now.
- how to handle destructors which belong to an unloading dso;
	for now, we ignore destructor calls for such entries, and
	issue a diagnostic.  Linux does prevent dso unload until all
	threads with destructors from the dso terminated.
It is supposed that the diagnostics allow to detect real-world
applications relying on the above details and possibly adjust
our implementation.  Right now the choices were to provide the slim
API (but that rarely stands the practice test).

Tests are added to check generic functionality and to specify some of
the above implementation choices.

Submitted by:	Mahdi Mokhtari <mokhi64_gmail.com>
Reviewed by:	theraven
Discussed with:	dim (detection of -std=c++11 supoort for tests)
Sponsored by:	The FreeBSD Foundation (my involvement)
MFC after:	2 weeks
Differential revisions:	https://reviews.freebsd.org/D7224,
r303794 kib Aug. 6, 2016, 1:28 p.m.
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
r303793 tuexen Aug. 6, 2016, 12:51 p.m.
MFC after:	3 days
r303792 tuexen Aug. 6, 2016, 12:33 p.m.
This is joint work with rrs.

MFC after:	3 days
r303791 avg Aug. 6, 2016, 11:02 a.m.
The problem is that the special .zfs nodes are not represented by
znodes but by special gfs-based nodes.
r303763 changed interface of zfs_dirlook such that started operating on
znodes rather than on vnodes and, thus, the function became unsuitable
for handling .zfs entities.
The solution is to move the handling of the special cases to zfs_lookup,
the only consumer of zfs_dirlook.
I already had this solution applied in D7421, but for different reasons.

Reported by:	asomers
MFC after:	3 days
X-MFC with:	r303763
r303788 vangyzen Aug. 5, 2016, 11:23 p.m.
The interpretation of the Electromechanical Interlock Status was
inverted, so we disengaged the EI if a card was inserted.
Fix it to engage the EI if a card is inserted.

When displaying the slot capabilites/status with pciconf:

- We inverted the sense of the Power Controller Control bit,
  saying the power was off when it was really on (according to
  this bit).  Fix that.

- Display the status of the Electromechanical Interlock:

Reviewed by:	jhb
MFC after:	3 days
Sponsored by:	Dell Inc.
Differential Revision:	https://reviews.freebsd.org/D7426
r303786 markj Aug. 5, 2016, 9:34 p.m.
MFC after:	1 week
Sponsored by:	EMC / Isilon Storage Division