[PATCH 0/2] ksmbd: exclude metadata-only opens from sharing checks
From: Ian Bridges
Date: Wed Nov 04 2026 - 14:05:43 EST
A metadata-only open holds none of FILE_EXECUTE, FILE_READ_DATA,
FILE_WRITE_DATA, FILE_APPEND_DATA and DELETE. An open for READ_CONTROL
is one example. ksmbd still counts such opens in sharing checks. Held
without sharing, one blocks later reads, writes and deletes of the file.
Held on a stream without FILE_SHARE_DELETE, one blocks deleting the
file.
Patch 1 fixes the general sharing check. Patch 2 fixes the stream
delete check added in v7.2. They are split so that patch 1 can be
backported without the v7.2 stream helper.
This series was developed with LLM assistance.
Ian Bridges (2):
ksmbd: skip metadata-only opens in sharing checks
ksmbd: skip metadata-only stream opens in the delete check
fs/smb/server/smb_common.c | 9 +++++++++
fs/smb/server/smb_common.h | 4 ++++
fs/smb/server/vfs_cache.c | 7 ++++++-
3 files changed, 19 insertions(+), 1 deletion(-)
base-commit: e49296d51ccbf2ad0ed0484db1382f1d7217bd6e
--
2.47.3