freebsd-nq/sys
John Baldwin e89d5f43da Threads holding a read lock of a sleepable rm lock are not permitted
to sleep.  The rmlock implementation enforces this by disabling
sleeping when a read lock is acquired. To simplify the implementation,
sleeping is disabled for most of the duration of rm_rlock.  However,
it doesn't need to be disabled until the lock is acquired.  If a
sleepable rm lock is contested, then rm_rlock may need to acquire the
backing sx lock.  This tripped the overly-broad assertion.  Fix by
relaxing the assertion around the call to sx_xlock().

Reported by:	mjg
Reviewed by:	kib, mjg
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D3324
2015-09-15 22:16:21 +00:00
..
amd64 Add stack_save_td_running(), a function to trace the kernel stack of a 2015-09-11 03:54:37 +00:00
arm Add stack_save_td_running(), a function to trace the kernel stack of a 2015-09-11 03:54:37 +00:00
arm64 arm64: add xhci driver and umass/ukbd to GENERIC for Cavium ThunderX 2015-09-15 19:59:35 +00:00
boot Add missing file to build. 2015-09-14 07:11:53 +00:00
bsm
cam Make CAM log errors that make it wait. 2015-09-15 10:57:16 +00:00
cddl MFV r287623: 5997 FRU field not set during pool creation and never 2015-09-13 07:15:14 +00:00
compat Fixes a panic triggered by threaded Linux applications when running 2015-09-02 14:04:13 +00:00
conf - Factor out the common and generic parts of the sparc64 host-PCI-bridge 2015-09-12 22:49:32 +00:00
contrib Revert ip_fil_freebsd.c -r287674. This should not have gone in yet. 2015-09-11 16:52:13 +00:00
crypto
ddb
dev Add support for Sierra MC7355 card 2015-09-15 18:21:56 +00:00
fs Fix an NFS server bug that manifested in "ls -al" displaying a plus 2015-08-28 14:26:11 +00:00
gdb
geom Add a way to specify stripesize and stripeoffset to gnop(8). This makes 2015-09-15 18:01:59 +00:00
gnu Fixing a memory leak on module unloading. 2015-09-11 22:43:35 +00:00
i386 Add stack_save_td_running(), a function to trace the kernel stack of a 2015-09-11 03:54:37 +00:00
isa
kern Threads holding a read lock of a sleepable rm lock are not permitted 2015-09-15 22:16:21 +00:00
kgssapi
libkern
mips Add stack_save_td_running(), a function to trace the kernel stack of a 2015-09-11 03:54:37 +00:00
modules Reimplement CTL High Availability. 2015-09-10 12:40:31 +00:00
net * Require explicitl lle unlink prior to calling llentry_delete(). 2015-09-15 06:48:19 +00:00
net80211 Replay r286410. Change KPI of how device drivers that provide wireless 2015-08-27 08:56:39 +00:00
netgraph Add support for PPP-Max-Payload PPPoE tag (RFC4638). 2015-09-11 09:15:27 +00:00
netinet Remove redundant 'man page' 2015-09-15 21:16:45 +00:00
netinet6 Simplify nd6_cache_lladdr: 2015-09-15 17:16:31 +00:00
netipsec
netnatm
netpfil pf: Fix misdetection of forwarding when net.link.bridge.pfil_bridge is set 2015-09-01 19:04:04 +00:00
netsmb
nfs
nfsclient
nfsserver
nlm
ofed Currently the Linux character device mmap handling only supports mmap 2015-09-03 18:27:39 +00:00
opencrypto
pc98 Add missing ofw_machdep.h. Make x86 ofw_machdep.h work pc98 too. 2015-08-28 15:41:09 +00:00
powerpc Add stack_save_td_running(), a function to trace the kernel stack of a 2015-09-11 03:54:37 +00:00
rpc
security
sparc64 - Sanity check that the parent ranges given in the "ranges" property 2015-09-13 21:59:56 +00:00
sys kevent(2): Note DOOMED vnodes with NOTE_REVOKE 2015-09-15 20:22:30 +00:00
teken
tools
ufs Do not consume extra reference. This is a bug in r287479. 2015-09-05 12:28:18 +00:00
vm Remove the v_cache_min and v_cache_max sysctls. They are unused and have 2015-09-11 03:00:20 +00:00
x86 Add stack_save_td_running(), a function to trace the kernel stack of a 2015-09-11 03:54:37 +00:00
xdr
xen
Makefile