HomeFreeBSD

vn_fullpath1() checked VV_ROOT and then unreferenced

Description

vn_fullpath1() checked VV_ROOT and then unreferenced
vp->v_mount->mnt_vnodecovered unlocked. This allowed unmount to race.
Lock vnode after we noticed the VV_ROOT flag. See comments for
explanation why unlocked check for the flag is considered safe.

Reported and tested by: avg
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

Details

Provenance
kibAuthored on
Parents
rS308406: Only include sys/boot.h if LINUX_BOOT_ABI is defined
Branches
Unknown
Tags
Unknown