git: a7b4a54d2c02 - main - getblk(): do not require devvp vnodes to be locked
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 12 Nov 2021 23:04:14 UTC
The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=a7b4a54d2c02822d36bb51b1e4450e1bc14ba73a commit a7b4a54d2c02822d36bb51b1e4450e1bc14ba73a Author: Konstantin Belousov <kib@FreeBSD.org> AuthorDate: 2021-11-01 07:14:01 +0000 Commit: Konstantin Belousov <kib@FreeBSD.org> CommitDate: 2021-11-12 23:00:24 +0000 getblk(): do not require devvp vnodes to be locked Reported and tested by: pho Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D32761 --- sys/kern/vfs_bio.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c index 034bbccc437d..2b89490ce618 100644 --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -3911,7 +3911,8 @@ getblkx(struct vnode *vp, daddr_t blkno, daddr_t dblkno, int size, int slpflag, CTR3(KTR_BUF, "getblk(%p, %ld, %d)", vp, (long)blkno, size); KASSERT((flags & (GB_UNMAPPED | GB_KVAALLOC)) != GB_KVAALLOC, ("GB_KVAALLOC only makes sense with GB_UNMAPPED")); - ASSERT_VOP_LOCKED(vp, "getblk"); + if (vp->v_type != VCHR) + ASSERT_VOP_LOCKED(vp, "getblk"); if (size > maxbcachebuf) panic("getblk: size(%d) > maxbcachebuf(%d)\n", size, maxbcachebuf);