HomeFreeBSD

unionfs: allow lock recursion when reclaiming the root vnode

Description

unionfs: allow lock recursion when reclaiming the root vnode

The unionfs root vnode will always share a lock with its lower vnode.
If unionfs was mounted with the 'below' option, this will also be the
vnode covered by the unionfs mount. During unmount, the covered vnode
will be locked by dounmount() while the unionfs root vnode will be
locked by vgone(). This effectively requires recursion on the same
underlying like, albeit through two different vnodes.

Reported by: pho
Reviewed by: kib, markj, pho
Differential Revision: https://reviews.freebsd.org/D34109

Details

Provenance
jahAuthored on Jan 30 2022, 8:52 PM
Reviewer
kib
Differential Revision
D34109: assorted small fixes to unionfs_lock()
Parents
rG0cd8f3e958a5: unionfs: fix assertion order in unionfs_lock()
Branches
Unknown
Tags
Unknown