summaryrefslogtreecommitdiffstats
path: root/sys/arm
diff options
context:
space:
mode:
authormckusick <mckusick@FreeBSD.org>2002-02-02 01:49:18 +0000
committermckusick <mckusick@FreeBSD.org>2002-02-02 01:49:18 +0000
commitca79facdf4005810aaa1b757a00e3a8428d8cfd8 (patch)
tree4b9bff2b22a1824b424f5f96db6c16813f5dceeb /sys/arm
parenta7a7cb3eff86ba390846478e2d9618a87dc8dcb3 (diff)
downloadFreeBSD-src-ca79facdf4005810aaa1b757a00e3a8428d8cfd8.zip
FreeBSD-src-ca79facdf4005810aaa1b757a00e3a8428d8cfd8.tar.gz
In the routines vrele() and vput(), we must lock the vnode and
call VOP_INACTIVE before placing the vnode back on the free list. Otherwise there is a race condition on SMP machines between getnewvnode() locking the vnode to reclaim it and vrele() locking the vnode to inactivate it. This window of vulnerability becomes exaggerated in the presence of filesystems that have been suspended as the inactive routine may need to temporarily release the lock on the vnode to avoid deadlock with the syncer process.
Diffstat (limited to 'sys/arm')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud