diff --git a/sys/fs/tmpfs/tmpfs_subr.c b/sys/fs/tmpfs/tmpfs_subr.c index d247fbf713b..bbfabb074cc 100644 --- a/sys/fs/tmpfs/tmpfs_subr.c +++ b/sys/fs/tmpfs/tmpfs_subr.c @@ -543,7 +543,8 @@ loop: goto loop; } TMPFS_NODE_UNLOCK(node); - error = vget(vp, lkflag | LK_INTERLOCK, curthread); + error = vget(vp, lkflag | LK_INTERLOCK | LK_CANRECURSE, + curthread); if (error == ENOENT) { TMPFS_NODE_LOCK(node); goto loop;