aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMateusz Guzik <mjg@FreeBSD.org>2021-01-25 20:15:19 +0000
committerMateusz Guzik <mjg@FreeBSD.org>2021-02-01 12:39:16 +0000
commit7ba12ba0a2df573d055c7f088e666d86e4fea898 (patch)
tree65117b7fb71c6e47f286282c4aaed0277f1e7fe6
parente8d3e38845697ae831a472870d0bddd991e9041b (diff)
downloadsrc-7ba12ba0a2df573d055c7f088e666d86e4fea898.tar.gz
src-7ba12ba0a2df573d055c7f088e666d86e4fea898.zip
zfs: use atomic_load_consume_ptr for z_cached_symlink
(cherry picked from commit 7af02ef0b222eebad4827a264454e85134692e94)
-rw-r--r--sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops_os.c5
1 files changed, 1 insertions, 4 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 1ee0895625a6..42f5786ce5c7 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
@@ -4476,10 +4476,7 @@ zfs_freebsd_fplookup_symlink(struct vop_fplookup_symlink_args *v)
return (EAGAIN);
}
- /*
- * FIXME: Load consume would be sufficient but there is no primitive to do it.
- */
- target = (char *)atomic_load_acq_ptr((uintptr_t *)&zp->z_cached_symlink);
+ target = atomic_load_consume_ptr(&zp->z_cached_symlink);
if (target == NULL) {
return (EAGAIN);
}