linux/include
Linus Torvalds ff47652a4b smb client fixes for v7.3-rc6
- Stop data dirtied past EOF through an mmap from reappearing as file
    content once the file is extended by a write, truncate, zero range,
    copy range or clone range
 
  - Flush dirty data and drain in-flight I/O before operations that
    assume the pagecache and the server agree on the file: querying
    allocated ranges, the O_TRUNC open, interior zero range, and
    server-side copy/clone
 
  - Stop a genuine size-extending zero range or preallocate from being
    refused with -EOPNOTSUPP when the inode is not read caching, by
    querying the server's authoritative EOF instead of trusting a stale
    cached i_size
 
  - Zero the untransferred tail of a short read, both in the netfs
    read-gaps path (where stale folio content could otherwise be written
    back to the server) and in the DIO/unbuffered read collector, and
    tell a real EOF apart from a stale cached remote_i_size after a lease
    downgrade
 
  - Require stable pages on signed connections so a buffered write can't
    modify a folio whose signature has already been computed and is in
    flight, which the server rejected with STATUS_ACCESS_DENIED and the
    client surfaced as -EIO
 
  - Split several cifsFileInfo flags out of a shared bitfield byte so
    concurrent updates taken under different locks no longer clobber each
    other through a byte-level RMW
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQTcqRusfSdYROJQwGkpVtNKoQNdYwUCasAVCQAKCRApVtNKoQNd
 YxLEAQDBsM7NZk2+hUlPZMDq/NK+8C12Vm8WnN8nqb3Dpt8jCwEA2JJGMeO+p9/L
 /hwKubpM6CuWiG2yMbqyUHWVZSkOFwQ=
 =8v7I
 -----END PGP SIGNATURE-----

Merge tag 'cifs-fixes-7.3-rc6' of https://git.manguebit.org/linux

Pull smb client fixes from Paulo Alcantara:
 "Fix a series of data corruption and I/O error bugs found by running
  generic/363 (fsx) in a loop against Windows Server 2022 and Samba.

   - Stop data dirtied past EOF through an mmap from reappearing as file
     content once the file is extended by a write, truncate, zero range,
     copy range or clone range

   - Flush dirty data and drain in-flight I/O before operations that
     assume the pagecache and the server agree on the file: querying
     allocated ranges, the O_TRUNC open, interior zero range, and
     server-side copy/clone

   - Stop a genuine size-extending zero range or preallocate from being
     refused with -EOPNOTSUPP when the inode is not read caching, by
     querying the server's authoritative EOF instead of trusting a stale
     cached i_size

   - Zero the untransferred tail of a short read, both in the netfs
     read-gaps path (where stale folio content could otherwise be
     written back to the server) and in the DIO/unbuffered read
     collector, and tell a real EOF apart from a stale cached
     remote_i_size after a lease downgrade

   - Require stable pages on signed connections so a buffered write
     can't modify a folio whose signature has already been computed and
     is in flight, which the server rejected with STATUS_ACCESS_DENIED
     and the client surfaced as -EIO

   - Split several cifsFileInfo flags out of a shared bitfield byte so
     concurrent updates taken under different locks no longer clobber
     each other through a byte-level RMW"

* tag 'cifs-fixes-7.3-rc6' of https://git.manguebit.org/linux:
  smb: client: split cifsFileInfo bitfields to avoid shared-byte RMW races
  smb: client: require stable pages for signed connections
  smb: client: distinguish real EOF from a stale remote_i_size on read
  netfs: zero the tail of a short DIO/unbuffered read
  smb: client: only require read lease for size-extending preallocate
  netfs: zero gaps in read-gaps folio to avoid writing back stale data
  smb: client: only require read lease for size-extending zero range
  smb: client: drain and invalidate before server-side copy/clone
  smb: client: flush dirty data before zeroing a range
  smb: client: drain outstanding I/O before truncating on O_TRUNC open
  smb: client: flush and commit data before querying allocated ranges
  smb: client: discard post-EOF pagecache when extending a file via clone range
  smb: client: discard post-EOF pagecache when extending a file via copy range
  smb: client: discard post-EOF pagecache when extending a file via zero range
  smb: client: clear post-EOF pagecache when extending a file via truncate
  netfs: clear post-EOF pagecache when extending a file via write
2026-10-02 14:04:11 -07:00
..
acpi ACPI: bus: Drop two fields from struct acpi_device_pnp 2026-09-01 21:45:50 +02:00
asm-generic kho: make boot time huge page allocation work nicely with KHO 2026-08-23 09:17:38 -07:00
clocksource hyperv-next for v7.3-rc1 2026-08-26 16:47:40 -07:00
crypto
cxl
drm Merge drm/drm-fixes into drm-misc-fixes 2026-09-01 09:38:51 +02:00
dt-bindings sound fixes for 7.3-rc1 2026-08-28 10:01:02 -07:00
hyperv
keys keys: translate request_key_auth pid for the reading procfs instance 2026-09-12 00:43:45 +03:00
kunit
kvm KVM/arm64 changes for 7.3 2026-08-24 12:42:07 -04:00
linux smb client fixes for v7.3-rc6 2026-10-02 14:04:11 -07:00
math-emu
media media: hevc: add bounded tile-count helpers 2026-09-07 09:01:05 +02:00
memory
misc
net netfilter pull request 26-09-30 2026-10-01 12:00:40 +02:00
pcmcia
ras
rdma RDMA/uverbs: Fix mmap_lock/disassociation_lock circular dependency 2026-09-01 10:03:08 -04:00
rv mm.git review status for linus..mm-stable 2026-08-27 09:17:06 -07:00
scsi SCSI updates for 7.3 2026-08-29 11:55:36 -07:00
soc Mostly the usual clk driver updates and new SoC additions plus non-critical 2026-08-26 11:14:30 -07:00
sound ALSA: core: Define auto-cleanup for snd_card_free() 2026-10-01 17:23:37 +02:00
target
trace Landlock fix for v7.3-rc5 2026-09-24 10:53:59 -07:00
uapi Random number generator fixes for Linux 7.3-rc6. 2026-10-02 11:28:45 -07:00
ufs
vdso random: vDSO: fix repeated word 'to' in comment 2026-09-16 11:51:39 +02:00
video fbdev: maxine: fix 64-bit build error 2026-08-20 23:45:07 +02:00
xen
Kbuild