Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Feb 2022 09:51:00 GMT
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Subject:   git: 7a3e533acb99 - stable/13 - ffs_read(): lock buffers after snaplk with LK_NOWITNESS
Message-ID:  <202202070951.2179p0FK059181@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch stable/13 has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=7a3e533acb99bd5cbe663654a0bb6a6ad0af7883

commit 7a3e533acb99bd5cbe663654a0bb6a6ad0af7883
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2022-02-05 02:03:47 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2022-02-07 09:38:50 +0000

    ffs_read(): lock buffers after snaplk with LK_NOWITNESS
    
    (cherry picked from commit 0af463e6619cf9f7386129d427c244d3da30fa3a)
---
 sys/ufs/ffs/ffs_vnops.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/sys/ufs/ffs/ffs_vnops.c b/sys/ufs/ffs/ffs_vnops.c
index c2d6948dd140..1cfa6a91918f 100644
--- a/sys/ufs/ffs/ffs_vnops.c
+++ b/sys/ufs/ffs/ffs_vnops.c
@@ -695,6 +695,9 @@ ffs_read(ap)
 		return (EOVERFLOW);
 
 	bflag = GB_UNMAPPED | (uio->uio_segflg == UIO_NOCOPY ? 0 : GB_NOSPARSE);
+#ifdef WITNESS
+	bflag |= IS_SNAPSHOT(ip) ? GB_NOWITNESS : 0;
+#endif
 	for (error = 0, bp = NULL; uio->uio_resid > 0; bp = NULL) {
 		if ((bytesinfile = ip->i_size - uio->uio_offset) <= 0)
 			break;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202202070951.2179p0FK059181>