[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