ksmbd: fix rename failure
authorNamjae Jeon <linkinjeon@kernel.org>
Wed, 21 May 2025 08:07:36 +0000 (17:07 +0900)
committerSteve French <stfrench@microsoft.com>
Thu, 22 May 2025 03:30:30 +0000 (22:30 -0500)
commit68477b5dc57108d4306c56b3842d6f80a8161f30
tree21806e8d9f628895c2028b5bfddfd1da6ace4ca6
parent1f4bbedd4e5a69b01cde2cc21d01151ab2d0884f
ksmbd: fix rename failure

I found that rename fails after cifs mount due to update of
lookup_one_qstr_excl().

 mv a/c b/
mv: cannot move 'a/c' to 'b/c': No such file or directory

In order to rename to a new name regardless of whether the dentry is
negative, we need to get the dentry through lookup_one_qstr_excl().
So It will not return error if the name doesn't exist.

Fixes: 204a575e91f3 ("VFS: add common error checks to lookup_one_qstr_excl()")
Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/smb/server/vfs.c