NetBSD/sys
perseant c716c3d307 Make LFS dirops get their vnode first, before incrementing the dirop count,
to prevent a deadlock trying to call VOP_PUTPAGES() on a VDIROP vnode.
This can happen when a stacked filesystem is mounted on top of an LFS: an
LFS dirop needs to get a vnode, which is available from the upper layer.
The corresponding lower layer vnode, however, is VDIROP, so the upper layer
can't be cleaned out since its VOP_PUTPAGES() is passed through to the lower
layer, which waits for dirops to drain before it can proceed.  Deadlock.

Tweak ufs_makeinode() and ufs_mkdir() to pass the a_vpp argument through
to VOP_VALLOC().

Partially addresses PR # 26043, though it probably does not completely fix
the problem described there.
2005-03-23 00:12:51 +00:00
..
altq
arch pcppi at acpi needs some more work. Leave it commented out for now. 2005-03-21 18:10:15 +00:00
coda
compat
conf add agr(4), a pseudo network device driver for link aggregation. 2005-03-18 11:11:50 +00:00
crypto
ddb
dev This needs <machine/bus.h> now. 2005-03-21 18:27:32 +00:00
dist Fix a GCC warning when compiling on evbppc. 2005-03-15 18:08:59 +00:00
fs
gdbscripts
ipkdb
kern Keep track and limit the number of locks per uid. From OpenBSD 2005-03-20 19:16:33 +00:00
lib
lkm
miscfs
net Fix the spelling of Bill Studenmund's name - noticed from the licences 2005-03-20 07:47:29 +00:00
net80211
netatalk
netccitt
netinet TCP/SACK changes from FreeBSD. 2005-03-18 21:25:09 +00:00
netinet6
netipsec
netisdn
netiso
netkey
netnatm
netns
netsmb
nfs
opencrypto
stand
sys Keep track of who the lock belongs to (from OpenBSD) 2005-03-20 19:13:57 +00:00
ufs Make LFS dirops get their vnode first, before incrementing the dirop count, 2005-03-23 00:12:51 +00:00
uvm
Makefile