diff options
author | Mateusz Guzik <mjg@FreeBSD.org> | 2021-04-22 13:18:39 +0000 |
---|---|---|
committer | Mateusz Guzik <mjg@FreeBSD.org> | 2021-05-22 18:30:50 +0000 |
commit | a9d418fbb843927fe193d19616ddef48c50ae206 (patch) | |
tree | 04809a5f848b374affc3fba8f000867d54ac5fb6 | |
parent | d2e0a3bb2194f1d938aacbd48afbab758f9f2314 (diff) | |
download | src-a9d418fbb843927fe193d19616ddef48c50ae206.tar.gz src-a9d418fbb843927fe193d19616ddef48c50ae206.zip |
zfs: use vn_seqc_read_notmodify for racing .. lookups
Catching an in-flight unlocked vnode is fine here.
Reported by; pho
(cherry picked from commit 7ea3223c7822d20acfc907683fd0153d623185b3)
-rw-r--r-- | sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops_os.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops_os.c b/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops_os.c index a1e9c359b893..50454cad2468 100644 --- a/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops_os.c +++ b/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops_os.c @@ -807,7 +807,7 @@ zfs_lookup(vnode_t *dvp, const char *nm, vnode_t **vpp, ZFS_ENTER(zfsvfs); ZFS_VERIFY_ZP(zdp); - dvp_seqc = vn_seqc_read_any(dvp); + dvp_seqc = vn_seqc_read_notmodify(dvp); *vpp = NULL; |