The branch main has been updated by asomers:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=7755a406a6ae3801e885a79f714155f97c4d2bc6

commit 7755a406a6ae3801e885a79f714155f97c4d2bc6
Author:     Alan Somers <[email protected]>
AuthorDate: 2026-02-10 20:45:23 +0000
Commit:     Alan Somers <[email protected]>
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);

Reply via email to