Use "file -s", so that we can run vmrun.sh against special devices such
as /dev/md memory file systems

Reviewed by: neel
Add XL710 device entries to NOTES, and directories to the module
Makefile so they will be built.

MFC after: 1 day
In r253839 the default behaviour of ld(1) was changed such that all
libraries that need to be linked into an executable or library have to be
listed on the command line explicitly.  This commit fixes a bug in ld(1)
where it would scan dependencies of the libraries on the command line and
link them if needed if they were also found in ld.so.cache.

The important bit of the patch is the initialisation of needed.by such that
libraries found by scanning dependencies are marked as such and not used in
the link.

The patch is a backport of binutils git commit
d5c8b1f8561426b41aa5330ed60f578178fe6be2

The author gave permission to use it under GPLv2 terms.

PR:		192062
Exp-run by:	antoine
MFC after:	1 week
Fix build breakage caused by ixl driver

Fix missing includes and invalid vars in ixl / ixlv driver added by r270346
which caused build failures for GENERIC kernel after it was made default
by r270755.

X-MFC-With: r270346 / r270755
Sponsored by:	Multiplay
Refactor ZFS ARC reclaim logic to be more VM cooperative

Prior to this change we triggered ARC reclaim when kmem usage passed 3/4
of the total available, as indicated by vmem_size(kmem_arena, VMEM_ALLOC).

This could lead large amounts of unused RAM e.g. on a 192GB machine with
ARC the only major RAM consumer, 40GB of RAM would remain unused.

The old method has also been seen to result in extreme RAM usage under
certain loads, causing poor performance and stalls.

We now trigger ARC reclaim when the number of free pages drops below the
value defined by the new sysctl vfs.zfs.arc_free_target, which defaults
to the value of vm.v_free_target.

Credit to Karl Denninger for the original patch on which this update was
based.

PR:		191510 and 187594
Tested by:	dteske
MFC after:	1 week
Relnotes:	yes
Sponsored by:	Multiplay
SMAP AMD64: added stac() and clac() to cpufunc.h

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
SMAP AMD64: added CR4_SMAP to sys/x86/include/specialreg.h

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
SMAP AMD64: updated PSL_AC's comment in sys/x86/include/psl.h

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
SMAP AMD64: disable SMAP when running in hypervisor (like SMEP)

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
SMAP AMD64: postpone enabling of SMAP, same like in SMEP case

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
SMAP AMD64: added related trap handler

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
SMAP AMD64: enable SMAP at boot time

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
SMAP AMD64: clear SMAP state in PUSH_FRAME asmacro

PUSH_FRAME used in function are in sys/amd64/amd64/apic_vector.S
These function called on external interrupt.

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
SMAP AMD64: clear SMAP state on exceptions

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
AMD64 SMAP: clear SMAP state on exceptions in ia32 case

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
SMAP AMD64: trim whitespaces in amd64/support.S

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
SMAP AMD64: added stac and clac to funtions which live in support.S and interacted with user-space

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
SMAP AMD64: clear SMAP state in NMI handler, as soon as possible

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
SMAP i386: added stac and clac to i386/i386/db_disasm.c

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>
SMAP i386: added related trap handler

Signed-off-by: Oliver Pinter <oliver.pntr@gmail.com>