diff options
author | kan <kan@FreeBSD.org> | 2003-10-30 16:22:51 +0000 |
---|---|---|
committer | kan <kan@FreeBSD.org> | 2003-10-30 16:22:51 +0000 |
commit | ddb3e24c6c345d942ba57266da10067582be7651 (patch) | |
tree | 596a6d847eb2c87d0bcce8f7119cd521b927cd09 /sys/kern/vfs_default.c | |
parent | 981771fa4bea53d61d0e6c43e3588c73ef1d1253 (diff) | |
download | FreeBSD-src-ddb3e24c6c345d942ba57266da10067582be7651.zip FreeBSD-src-ddb3e24c6c345d942ba57266da10067582be7651.tar.gz |
Relock mntvnode_mtx if vget fails in vfs_stdsync. The loop is
always shoould entered with mutex locked.
Diffstat (limited to 'sys/kern/vfs_default.c')
-rw-r--r-- | sys/kern/vfs_default.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/kern/vfs_default.c b/sys/kern/vfs_default.c index 41c4040..e89654f 100644 --- a/sys/kern/vfs_default.c +++ b/sys/kern/vfs_default.c @@ -899,6 +899,7 @@ loop: mtx_unlock(&mntvnode_mtx); if ((error = vget(vp, lockreq, td)) != 0) { + mtx_lock(&mntvnode_mtx); if (error == ENOENT) goto loop; continue; |