]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
smb/server: use end_removing_noperm for for target of smb2_create_link()
authorNeilBrown <neil@brown.name>
Thu, 13 Nov 2025 00:18:30 +0000 (11:18 +1100)
committerChristian Brauner <brauner@kernel.org>
Fri, 14 Nov 2025 12:15:56 +0000 (13:15 +0100)
commit1ead2213dd7d14fecad7414e9dbeb2161cfcf8c3
tree5d225176f77d67640d97b7527eb08b568d92503e
parentc9ba789dad15ba65662bba17595c0aeaa0cfcf1c
smb/server: use end_removing_noperm for for target of smb2_create_link()

Sometimes smb2_create_link() needs to remove the target before creating
the link.
It uses ksmbd_vfs_kern_locked(), and is the only user of that interface.

To match the new naming, that function is changed to
ksmbd_vfs_kern_start_removing(), and related functions or flags are also
renamed.

The lock actually happens in ksmbd_vfs_path_lookup() and that is changed
to use start_removing_noperm() - permission to perform lookup in the
parent was already checked in vfs_path_parent_lookup().

Signed-off-by: NeilBrown <neil@brown.name>
Link: https://patch.msgid.link/20251113002050.676694-8-neilb@ownmail.net
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/smb/server/smb2pdu.c
fs/smb/server/vfs.c
fs/smb/server/vfs.h