Date: Thu, 9 Nov 2023 20:22:01 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: ede4c412b3ea - main - vfs_domount_update(): ensure that 'goto end' works Message-ID: <202311092022.3A9KM13G049066@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=ede4c412b3ea9289ef42c664b01b6b5ff7eac434 commit ede4c412b3ea9289ef42c664b01b6b5ff7eac434 Author: Konstantin Belousov <kib@FreeBSD.org> AuthorDate: 2023-11-09 20:18:47 +0000 Commit: Konstantin Belousov <kib@FreeBSD.org> CommitDate: 2023-11-09 20:18:47 +0000 vfs_domount_update(): ensure that 'goto end' works We need to vfs_op_enter()/vn_seqc_write_start() before jumping to cleanup. PR: 274992 Reported by: trasz Sponsored by: The FreeBSD Foundation MFC after: 3 days Fixes: 9ef7a491a4236810e50f0a2ee8d52f5c4bb02c64 --- sys/kern/vfs_mount.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/sys/kern/vfs_mount.c b/sys/kern/vfs_mount.c index aa4642c0ba8c..1a559bfd998e 100644 --- a/sys/kern/vfs_mount.c +++ b/sys/kern/vfs_mount.c @@ -1380,6 +1380,8 @@ vfs_domount_update( VOP_UNLOCK(vp); rootvp = NULL; + vfs_op_enter(mp); + vn_seqc_write_begin(vp); if (vfs_getopt(*optlist, "fsid", (void **)&fsid_up, &fsid_up_len) == 0) { @@ -1394,9 +1396,6 @@ vfs_domount_update( vfs_deleteopt(*optlist, "fsid"); } - vfs_op_enter(mp); - vn_seqc_write_begin(vp); - MNT_ILOCK(mp); if ((mp->mnt_kern_flag & MNTK_UNMOUNT) != 0) { MNT_IUNLOCK(mp);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202311092022.3A9KM13G049066>