summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2026-02-21 20:11:32 +0300
committerLinus Torvalds <torvalds@linux-foundation.org>2026-02-21 20:11:32 +0300
commit8eb604d4ee8bf6183b00b8a96f0007b1be28ca9d (patch)
treebf87c95b5cd230c442c62a9897f3075ffc2b8f5f
parentd79526b89571ae447c1a5cfd3d627efa07098348 (diff)
parenta09dc10d1353f0e92c21eae2a79af1c2b1ddcde8 (diff)
downloadlinux-8eb604d4ee8bf6183b00b8a96f0007b1be28ca9d.tar.xz
Merge tag 'v7.0-rc-part2-ksmbd-server-fixes' of git://git.samba.org/ksmbd
Pull smb server fixes from Steve French: "Two small fixes: - fix potential deadlock - minor cleanup" * tag 'v7.0-rc-part2-ksmbd-server-fixes' of git://git.samba.org/ksmbd: ksmbd: call ksmbd_vfs_kern_path_end_removing() on some error paths smb: server: Remove duplicate include of misc.h
-rw-r--r--fs/smb/server/server.c1
-rw-r--r--fs/smb/server/smb2pdu.c4
2 files changed, 2 insertions, 3 deletions
diff --git a/fs/smb/server/server.c b/fs/smb/server/server.c
index c2c074346da1..f7db120c92e1 100644
--- a/fs/smb/server/server.c
+++ b/fs/smb/server/server.c
@@ -21,7 +21,6 @@
#include "mgmt/user_session.h"
#include "crypto_ctx.h"
#include "auth.h"
-#include "misc.h"
#include "stats.h"
int ksmbd_debug_types;
diff --git a/fs/smb/server/smb2pdu.c b/fs/smb/server/smb2pdu.c
index cbb31efdbaa2..2782eea214d0 100644
--- a/fs/smb/server/smb2pdu.c
+++ b/fs/smb/server/smb2pdu.c
@@ -6115,14 +6115,14 @@ static int smb2_create_link(struct ksmbd_work *work,
rc = -EINVAL;
ksmbd_debug(SMB, "cannot delete %s\n",
link_name);
- goto out;
}
} else {
rc = -EEXIST;
ksmbd_debug(SMB, "link already exists\n");
- goto out;
}
ksmbd_vfs_kern_path_end_removing(&path);
+ if (rc)
+ goto out;
}
rc = ksmbd_vfs_link(work, target_name, link_name);
if (rc)