Date: Thu, 10 Jul 2025 14:35:38 GMT From: Konstantin Belousov <kib@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: 63389aea24f1 - main - inotify: do not call into namei() with a locked vnode Message-ID: <202507101435.56AEZckU096455@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=63389aea24f15fe823c775960d77017f1a35f54b commit 63389aea24f15fe823c775960d77017f1a35f54b Author: Konstantin Belousov <kib@FreeBSD.org> AuthorDate: 2025-07-10 07:15:13 +0000 Commit: Konstantin Belousov <kib@FreeBSD.org> CommitDate: 2025-07-10 14:34:45 +0000 inotify: do not call into namei() with a locked vnode PR: 288127 Reviewed by: markj Fixes: f1f230439fa48581f40a57f095627f667a9713c3 Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D51233 --- sys/kern/vfs_inotify.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/kern/vfs_inotify.c b/sys/kern/vfs_inotify.c index 41e73bb41a49..2b42228465a4 100644 --- a/sys/kern/vfs_inotify.c +++ b/sys/kern/vfs_inotify.c @@ -760,9 +760,11 @@ vn_inotify_add_watch(struct vnode *vp, struct inotify_softc *sc, uint32_t mask, * directory if it's specified as a vnode. */ vrefact(vp); + VOP_UNLOCK(vp); NDINIT_ATVP(&nd, LOOKUP, NOFOLLOW, UIO_SYSSPACE, dp->d_name, vp); error = namei(&nd); + vn_lock(vp, LK_SHARED | LK_RETRY); if (error != 0) break; vn_irflag_set_cond(nd.ni_vp, VIRF_INOTIFY_PARENT);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202507101435.56AEZckU096455>