[GIT PULL] smb client fixes for 7.3-rc2
From: Paulo Alcantara
Date: Tue Sep 01 2026 - 16:18:45 EST
Linus,
Please consider pulling these SMB client fixes for v7.3-rc2. They
address data corruption in fallocate range operations and O_TRUNC with
concurrent writes, heap overflows in SMB1 extended attribute and ACL
handling, a krb5 multiuser mount regression and a minor debug print
fix. All fixes are for stable.
Thanks,
Paulo
----------------------------------------------------------------
The following changes since commit 45c13f3f9e3bb15fd89ff2864c6f627a3b4b4229:
Merge tag 'hwlock-v7.3' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux (2026-08-25 14:21:47 -0700)
are available in the Git repository at:
https://git.manguebit.org/linux.git tags/cifs-fixes-7.3-rc2
for you to fetch changes up to 4aa2c106aef4bf3dfd97c30842db0767b26e8428:
smb: client: reject SetEA requests that do not fit the request buffer (2026-08-31 12:01:07 -0300)
----------------------------------------------------------------
SMB client fixes for v7.3-rc2
A batch of bug fixes for the SMB client:
- Fixes for fallocate range operations (insert, collapse, zero, punch
hole): the insert range implementation copied overlapping chunks in
the wrong direction, corrupting file data on every server except
Windows. Several related issues in the same area are also
addressed — stale page cache and FS-Cache readback, an integer
truncation on large files, missing RLIMIT_FSIZE validation and
missing sparse file marking.
- Data corruption fixes in the O_TRUNC open path: one where i_size
was zeroed before the server confirmed the truncate and another
where the lack of locking allowed concurrent buffered writes to be
silently discarded.
- Heap overflow fixes in legacy SMB1 paths: one in extended attribute
writes and one in POSIX ACL handling, both exploitable via
unprivileged setxattr(2).
- Fix for multiuser mount with krb5 failing because the username
option was not propagated to new per-user connections.
- Fix for split debug message in __release_mid() after a printk
conversion.
----------------------------------------------------------------
Andy Shevchenko (1):
smb: client: transport: Fix debug printing in __release_mid()
Frank Sorenson (3):
cifs: add revalidation on FSCTL failure in smb2_duplicate_extents()
smb: client: fix heap overflow in cifs_do_set_acl()
cifs: don't update i_size in cifs_do_truncate without a cached handle
Huiwen He (7):
smb/client: validate new EOF for insert range
smb/client: validate new EOF for zero range
smb/client: mark file sparse before emulating insert range
smb/client: fix data corruption in emulated insert range
smb/client: fix integer truncation in collapse range
smb/client: fix stale page cache in insert/collapse range
smb/client: invalidate fscache for fallocate range operations
Paulo Alcantara (2):
smb: client: fix multiuser mount with krb5
smb: client: fix data corruption with concurrent writes and O_TRUNC
Yunpeng Tian (1):
smb: client: reject SetEA requests that do not fit the request buffer
fs/smb/client/cifssmb.c | 24 +++++-
fs/smb/client/connect.c | 21 +++--
fs/smb/client/file.c | 36 +++++++--
fs/smb/client/smb2ops.c | 195 +++++++++++++++++++++++++++++++++++++---------
fs/smb/client/transport.c | 11 ++-
5 files changed, 231 insertions(+), 56 deletions(-)