git: 7755a406a6ae - main - fusefs: remove the obsolete rename_lock
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 22 Feb 2026 17:20:05 UTC
The branch main has been updated by asomers:
URL: https://cgit.FreeBSD.org/src/commit/?id=7755a406a6ae3801e885a79f714155f97c4d2bc6
commit 7755a406a6ae3801e885a79f714155f97c4d2bc6
Author: Alan Somers <asomers@FreeBSD.org>
AuthorDate: 2026-02-10 20:45:23 +0000
Commit: Alan Somers <asomers@FreeBSD.org>
CommitDate: 2026-02-22 17:08:27 +0000
fusefs: remove the obsolete rename_lock
This lock was included in the original GSoC submission. Its purpose
seems to have been to prevent concurrent FUSE_RENAME operations for the
current mountpoint, as well as to synchronize FUSE_RENAME with
fuse_vnode_setparent. But it's obsolete, now that ef6ea91593e added
mnt_renamelock .
MFC after: 2 weeks
Sponsored by: ConnectWise
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D55231
---
sys/fs/fuse/fuse_ipc.c | 2 --
sys/fs/fuse/fuse_ipc.h | 2 --
sys/fs/fuse/fuse_vnops.c | 2 --
3 files changed, 6 deletions(-)
diff --git a/sys/fs/fuse/fuse_ipc.c b/sys/fs/fuse/fuse_ipc.c
index f3d92d861352..c24e11a7ff2f 100644
--- a/sys/fs/fuse/fuse_ipc.c
+++ b/sys/fs/fuse/fuse_ipc.c
@@ -550,7 +550,6 @@ fdata_alloc(struct cdev *fdev, struct ucred *cred)
TAILQ_INIT(&data->aw_head);
data->daemoncred = crhold(cred);
data->daemon_timeout = FUSE_DEFAULT_DAEMON_TIMEOUT;
- sx_init(&data->rename_lock, "fuse rename lock");
data->ref = 1;
return data;
@@ -565,7 +564,6 @@ fdata_trydestroy(struct fuse_data *data)
return;
/* Driving off stage all that stuff thrown at device... */
- sx_destroy(&data->rename_lock);
crfree(data->daemoncred);
mtx_destroy(&data->aw_mtx);
knlist_delete(&data->ks_rsel.si_note, curthread, 0);
diff --git a/sys/fs/fuse/fuse_ipc.h b/sys/fs/fuse/fuse_ipc.h
index 6fb04fd4ee25..8ceb6bb1fb1a 100644
--- a/sys/fs/fuse/fuse_ipc.h
+++ b/sys/fs/fuse/fuse_ipc.h
@@ -194,8 +194,6 @@ struct fuse_data {
*/
u_long ticketer;
- struct sx rename_lock;
-
uint32_t fuse_libabi_major;
uint32_t fuse_libabi_minor;
diff --git a/sys/fs/fuse/fuse_vnops.c b/sys/fs/fuse/fuse_vnops.c
index 22d5893d4fbc..49014a1cdd35 100644
--- a/sys/fs/fuse/fuse_vnops.c
+++ b/sys/fs/fuse/fuse_vnops.c
@@ -2272,7 +2272,6 @@ fuse_vnop_rename(struct vop_rename_args *ap)
if (err)
goto out;
}
- sx_xlock(&data->rename_lock);
err = fuse_internal_rename(fdvp, fcnp, tdvp, tcnp);
if (err == 0) {
if (tdvp != fdvp)
@@ -2280,7 +2279,6 @@ fuse_vnop_rename(struct vop_rename_args *ap)
if (tvp != NULL)
fuse_vnode_setparent(tvp, NULL);
}
- sx_unlock(&data->rename_lock);
if (tvp != NULL && tvp != fvp) {
cache_purge(tvp);