opnsense-src/sys/cddl/compat/opensolaris/sys
Attilio Rao 1ae1c2a3bd Reverse the logic for ADAPTIVE_SX option and enable it by default.
Introduce for this operation the reverse NO_ADAPTIVE_SX option.
The flag SX_ADAPTIVESPIN to be passed to sx_init_flags(9) gets suppressed
and the new flag, offering the reversed logic, SX_NOADAPTIVE is added.

Additively implements adaptive spininning for sx held in shared mode.
The spinning limit can be handled through sysctls in order to be tuned
while the code doesn't reach the release, after which time they should
be dropped probabilly.

This change has made been necessary by recent benchmarks where it does
improve concurrency of workloads in presence of high contention
(ie. ZFS).

KPI breakage is documented by __FreeBSD_version bumping, manpage and
UPDATING updates.

Requested by:	jeff, kmacy
Reviewed by:	jeff
Tested by:	pho
2009-05-29 01:49:27 +00:00
..
acl.h Change license to more bori^Wadul^Wcanonical. 2009-05-26 11:42:06 +00:00
atomic.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
bitmap.h Add FreeBSD IDs to files that originate in FreeBSD. 2008-04-22 07:43:00 +00:00
byteorder.h Add FreeBSD IDs to files that originate in FreeBSD. 2008-04-22 07:43:00 +00:00
cmn_err.h Compatibility stuff for DTrace. 2008-05-22 08:33:24 +00:00
cpupart.h Add FreeBSD IDs to files that originate in FreeBSD. 2008-04-22 07:43:00 +00:00
cpuvar.h Ensure that the padding calcualtion doesn't return a negative value. 2008-08-29 15:55:49 +00:00
cpuvar_defs.h Additional compatibility headers. 2008-05-22 08:35:03 +00:00
cred.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
cyclic.h Compatibility stuff for DTrace. 2008-05-22 08:33:24 +00:00
cyclic_impl.h Additional compatibility headers. 2008-05-22 08:35:03 +00:00
debug.h
dirent.h
dkio.h Add FreeBSD IDs to files that originate in FreeBSD. 2008-04-22 07:43:00 +00:00
dnlc.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
elf.h Add more OpenSolaris compatibility headers. 2007-11-28 21:50:40 +00:00
feature_tests.h A 'special' compatibility header to plug OpenSolaris code. 2008-05-22 09:08:41 +00:00
file.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
kcondvar.h Remove "zfs:" prefix from lock and condvar names and also skip non-letter 2007-11-05 18:40:55 +00:00
kidmap.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
kmem.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
kobj.h Extend kobj compatibility KPI to support operating on files before and 2007-04-08 23:57:08 +00:00
kstat.h
lock.h LO_ENROLLPEND is no more existing so just axe it (it was left out by the 2008-05-16 02:09:13 +00:00
misc.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
mman.h Add more OpenSolaris compatibility headers. 2007-11-28 21:50:40 +00:00
mntent.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
mnttab.h
modctl.h Add more OpenSolaris compatibility headers. 2007-11-28 21:50:40 +00:00
mount.h
mutex.h Reverse the logic for ADAPTIVE_SX option and enable it by default. 2009-05-29 01:49:27 +00:00
objfs.h Add FreeBSD IDs to files that originate in FreeBSD. 2008-04-22 07:43:00 +00:00
param.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
pathname.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
pcpu.h Compatibility stuff for DTrace. 2008-05-22 08:33:24 +00:00
policy.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
proc.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
random.h
refstr.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
rwlock.h Reverse the logic for ADAPTIVE_SX option and enable it by default. 2009-05-29 01:49:27 +00:00
sdt.h
sema.h Additional compatibility headers. 2008-05-22 08:35:03 +00:00
sid.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
sig.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
stat.h Add more OpenSolaris compatibility headers. 2007-11-28 21:50:40 +00:00
string.h strchr() and strrchr() are already present in the kernel, but with less 2007-04-10 21:42:12 +00:00
sunddi.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
sysmacros.h Add memmove() to the kernel, making the kernel compile with Clang. 2009-02-28 16:21:25 +00:00
systm.h
taskq.h Add FreeBSD IDs to files that originate in FreeBSD. 2008-04-22 07:43:00 +00:00
taskq_impl.h Add FreeBSD IDs to files that originate in FreeBSD. 2008-04-22 07:43:00 +00:00
time.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
types.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
uio.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
varargs.h
vfs.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00
vnode.h move VN_RELE_ASYNC to the compatibility layer with the rest of the VN_* defines 2009-05-07 23:02:15 +00:00
zone.h Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes. 2008-11-17 20:49:29 +00:00