freebsd-nq/include
Brian Behlendorf d503b971f4 Optimize spl_rwsem_is_locked()
The spl_rwsem_is_locked() compatibility function has been observed
to be a hot spot.  The root cause of this is that we must check the
rwsem activity under the rwsem->wait_lock to avoid a race.  When
the lock is busy significant contention can occur.

The upstream kernel fix for this race had the insight that by using
spin_trylock_irqsave() this contention could be avoided.  When the
lock is contended it's reasonable to return that it is locked.

This change updates the SPLs implemention to be like the upstream
kernel.  Since the kernel code has been in use for years now this
a low risk change.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2012-07-13 13:07:39 -07:00
..
fs
linux Optimize spl_rwsem_is_locked() 2012-07-13 13:07:39 -07:00
rpc
sharefs
sys Constify memory management functions 2012-07-03 16:07:27 -07:00
util
vm
.gitignore
Makefile.am Add the release component to headers 2012-01-18 11:06:26 -08:00
Makefile.in Cleanly support debug packages 2012-02-27 14:24:22 -08:00
spl-ctl.h
spl-debug.h Add missing spl_debug_* helpers 2012-02-09 16:41:46 -08:00
spl-device.h
spl-trace.h
splat-ctl.h Add linux compatibility tests 2011-06-21 14:02:46 -07:00
strings.h
unistd.h