git: ad5e1f9c2d78 - main - devfs: stop taking the interlock in devfs_delete
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 14 Sep 2022 22:52:14 UTC
The branch main has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=ad5e1f9c2d78e75419b10e2f871c186d772ac728 commit ad5e1f9c2d78e75419b10e2f871c186d772ac728 Author: Mateusz Guzik <mjg@FreeBSD.org> AuthorDate: 2022-09-14 22:51:42 +0000 Commit: Mateusz Guzik <mjg@FreeBSD.org> CommitDate: 2022-09-14 22:51:42 +0000 devfs: stop taking the interlock in devfs_delete It buys nothing now that vhold does not require it. --- sys/fs/devfs/devfs_devs.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/sys/fs/devfs/devfs_devs.c b/sys/fs/devfs/devfs_devs.c index e8786e965500..71950291bf97 100644 --- a/sys/fs/devfs/devfs_devs.c +++ b/sys/fs/devfs/devfs_devs.c @@ -397,11 +397,10 @@ devfs_delete(struct devfs_mount *dm, struct devfs_dirent *de, int flags) mtx_lock(&devfs_de_interlock); vp = de->de_vnode; if (vp != NULL) { - VI_LOCK(vp); + vhold(vp); mtx_unlock(&devfs_de_interlock); - vholdl(vp); sx_unlock(&dm->dm_lock); - vn_lock(vp, LK_EXCLUSIVE | LK_INTERLOCK | LK_RETRY); + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); vgone(vp); VOP_UNLOCK(vp); vdrop(vp);