[GIT PULL] ntfs3: changes for 7.2
From: Konstantin Komarov
Date: Wed Jun 24 2026 - 02:52:38 EST
Hello, please pull this branch containing ntfs3 code for 7.2.
Regards,
Konstantin
----------------------------------------------------------------
The following changes since commit 254f49634ee16a731174d2ae34bc50bd5f45e731:
Linux 7.1-rc1 (2026-04-26 14:19:00 -0700)
are available in the Git repository at:
https://github.com/Paragon-Software-Group/linux-ntfs3.git tags/ntfs3_for_7.2
for you to fetch changes up to 5b08dccecf825cbf905f348bc6ccb497507e28e2:
ntfs3: reject direct userspace writes to reserved $LX* xattrs (2026-06-10 12:37:10 +0200)
----------------------------------------------------------------
Changes for 7.2-rc1
Added:
depth limit to indx_find_buffer() to prevent stack overflow
validate split-point offset in indx_insert_into_buffer()
bounds check to run_get_highest_vcn()
fileattr_get() and fileattr_set() support
zero stale pagecache beyond valid data length
handle delayed allocation overlap in run lookup
validate lcns_follow in log_replay() conversion
cap RESTART_TABLE free-chain walker at rt->used
resize log->one_page_buf when adopting on-disk page size
reject direct userspace writes to reserved $LX* xattrs
Fixed:
out-of-bounds read in decompress_lznt()
avoid -Wmaybe-uninitialized warnings
hold ni_lock across readdir metadata walk
preserve non-DOS attribute bits in system.dos_attrib
validate index entry key bounds
syncing wrong inode on DIRSYNC cross-directory rename
validate Dirty Page Table capacity in log_replay() copy_lcns
wrong LCN in run_remove_range() when splitting a run
allocate iomap inline_data using alloc_page
mount failure on 64K page-size kernels
out-of-bounds read in ntfs_dir_emit() and hdr_find_e()
bound attr_off in UpdateResidentValue against data_off
bound DeleteIndexEntryAllocation memmove length
bound copy_lcns dp->page_lcns[] index in analysis pass
bound NTFS_DE view.data_off in UpdateRecordData{Root,Allocation}
prevent potential lcn remains uninitialized
Changed:
bound to_move in indx_insert_into_root() before hdr_insert_head()
call _ntfs_bad_inode() when failing to rename
fold resident writeback into writepages loop
force waiting for direct I/O completion
fold file size handling into ntfs_set_size()
reject SEEK_DATA and SEEK_HOLE past EOF early
format code, add descriptive comments and remove non-useful
----------------------------------------------------------------
Alessandro Schino (1):
ntfs3: fix out-of-bounds read in ntfs_dir_emit() and hdr_find_e()
Arnd Bergmann (2):
ntfs3: avoid -Wmaybe-uninitialized warning
ntfs3: avoid another -Wmaybe-uninitialized warning
Edward Adam Davis (1):
fs/ntfs3: prevent potential lcn remains uninitialized
Helen Koike (1):
fs/ntfs3: call _ntfs_bad_inode() when failing to rename
Jamie Nguyen (2):
fs/ntfs3: fix mount failure on 64K page-size kernels
fs/ntfs3: resize log->one_page_buf when adopting on-disk page size
Konstantin Komarov (13):
fs/ntfs3: add bounds check to run_get_highest_vcn()
fs/ntfs3: add fileattr support
fs/ntfs3: zero stale pagecache beyond valid data length
fs/ntfs3: handle delayed allocation overlap in run lookup
fs/ntfs3: fold resident writeback into writepages loop
fs/ntfs3: force waiting for direct I/O completion
fs/ntfs3: fold file size handling into ntfs_set_size()
fs/ntfs3: reject SEEK_DATA and SEEK_HOLE past EOF early
fs/ntfs3: format code, deal with comments
fs/ntfs3: bound attr_off in UpdateResidentValue against data_off
fs/ntfs3: bound DeleteIndexEntryAllocation memmove length
fs/ntfs3: validate lcns_follow in log_replay conversion
ntfs3: reject direct userspace writes to reserved $LX* xattrs
Michael Bommarito (6):
fs/ntfs3: add depth limit to indx_find_buffer to prevent stack overflow
ntfs3: bound to_move in indx_insert_into_root before hdr_insert_head
ntfs3: validate split-point offset in indx_insert_into_buffer
fs/ntfs3: bound copy_lcns dp->page_lcns[] index in analysis pass
fs/ntfs3: bound NTFS_DE view.data_off in UpdateRecordData{Root,Allocation}
ntfs3: cap RESTART_TABLE free-chain walker at rt->used
Mihai Brodschi (1):
ntfs3: Allocate iomap inline_data using alloc_page
Tristan Madani (1):
ntfs3: fix out-of-bounds read in decompress_lznt
Yunpeng Tian (1):
fs/ntfs3: validate Dirty Page Table capacity in log_replay copy_lcns
Zhan Xusheng (2):
fs/ntfs3: fix syncing wrong inode on DIRSYNC cross-directory rename
fs/ntfs3: fix wrong LCN in run_remove_range() when splitting a run
ZhengYuan Huang (3):
fs/ntfs3: hold ni_lock across readdir metadata walk
fs/ntfs3: preserve non-DOS attribute bits in system.dos_attrib
fs/ntfs3: validate index entry key bounds
fs/ntfs3/attrib.c | 29 +++--
fs/ntfs3/dir.c | 26 +++--
fs/ntfs3/file.c | 304 +++++++++++++++++++++++++++--------------------------
fs/ntfs3/frecord.c | 38 ++++---
fs/ntfs3/fslog.c | 157 +++++++++++++++++++++++----
fs/ntfs3/fsntfs.c | 1 -
fs/ntfs3/index.c | 119 +++++++++++++++++----
fs/ntfs3/inode.c | 78 ++++++--------
fs/ntfs3/lznt.c | 2 +-
fs/ntfs3/namei.c | 6 +-
fs/ntfs3/ntfs_fs.h | 12 ++-
fs/ntfs3/run.c | 75 ++++++++++++-
fs/ntfs3/xattr.c | 16 ++-
13 files changed, 589 insertions(+), 274 deletions(-)