linux/fs/ext4
Linus Torvalds 5e1287972b vfs-7.3-rc3.fixes
Please consider pulling these changes from the signed vfs-7.3-rc3.fixes tag.
 
 Thanks!
 Christian
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQRAhzRXHqcMeLMyaSiRxhvAZXjcogUCaqFWOQAKCRCRxhvAZXjc
 otLlAP9X02ybdUt9NndBK8LjslDWwB9hOXzPgYsOKYODEqODjQD/aLpbXVEsA1yy
 SLdSDtbtpf+01z4KHorvAakBzk/jrw4=
 =OzBX
 -----END PGP SIGNATURE-----

Merge tag 'vfs-7.3-rc3.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs

Pull vfs fixes from Christian Brauner:

 - netfs:

     - Fix an uninitialized return value in netfs_unbuffered_write()
       when preparing the first subrequest fails

     - For partial unbuffered/DIO writes return the amount transferred
       rather than an error

     - Update i_size with the amount actually written when a partial
       transfer ends in an error

     - Fix a subrequest reference leak when the io_iter ends up empty

     - Handle netfs_alloc_subrequest() failure during unbuffered writes

     - Load all readahead folios into the rolling buffer upfront and
       drop the readahead references once the first subrequest is
       dispatched

     - Mark folios for copy-to-cache while issuing subrequests

     - Fix read progress reporting

 - afs:

     - Add the missing kunmap in the error path of afs_dir_search_bucket()

     - Fix a double kunmap in afs_edit_dir_remove()

     - Don't free an existing server's endpoint state when cleaning up a
       candidate server in afs_lookup_server()

     - Unbind peers removed from a server's address list

 - ufs:

     - Load the cylinder group metadata before creating the root dentry

     - Validate the cylinder group index and rotor positions before
       caching them

     - Treat an unreadable directory block as not empty

 - exec:

     - Close the close-on-exec files before taking exec_update_lock

       Closing a file can block on the filesystem, so a hung filesystem
       blocked everything that takes exec_update_lock and a FUSE server
       inspecting the calling process could deadlock

     - Drop the bprm loader before closing bprm->file in free_bprm()

 - exit: Hold a reference to thread_pid across proc_flush_pid()

 - reboot: Fix a use-after-free on cad_pid

 - nsfs: Keep the namespace tree fields out of the rcu_head used by
   kfree_rcu()

 - nstree: Check listing permission before taking a namespace
   reference in listns()

 - super: Return 0 when a nested thaw drops its hold while other
   freezers remain

 - ext4: Don't set I_METADATA_WRITEBACK during fastcommit replay

 - adfs: Free s_fs_info in ->kill_sb()

 - autofs: Free the inode info allocated in autofs_fill_super() when
   the root inode allocation fails

 - ovl: Return EINVAL instead of EIO on a user namespace mismatch now
   that it's a plain refusal and not an internal error

 - cachefiles: Don't cast the variable-length coherency data to a
   __be64 in the coherency tracepoint

* tag 'vfs-7.3-rc3.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs: (28 commits)
  nstree: check listing permission before taking a namespace reference
  exec: do_close_on_exec() before taking exec_update_lock
  exit: hold a reference to thread_pid across proc_flush_pid
  fs: autofs: fix memory leak in autofs_fill_super()
  exec: Drop bprm loader before closing bprm->file
  afs: Clear stale peer app data after address list changes
  afs: Fix incorrect free in candidate cleanup in afs_lookup_server()
  afs: Fix double-unmap of directory block
  afs: Fix missing kunmap in afs_dir_search_bucket()
  ovl: return EINVAL instead of EIO in case of mismatched user_ns
  reboot: fix cad_pid use-after-free race
  cachefiles: Fix potential UAF/KASAN warning
  netfs: Fix read progress reporting
  netfs: Mark folios with COPY_TO_CACHE whilst issuing subreqs
  netfs: Fix readahead synchronisation issues by loading all folios upfront
  netfs: break unbuffered write when netfs_alloc_subrequest() fails
  netfs: Fix subreq ref leak
  netfs: Fix i_size update for partial transfer
  netfs: Fix error vs transferred passed to ->ki_complete()
  netfs: Fix unbuffered/DIO write partial transfer error return
  ...
2026-09-09 09:38:03 -07:00
..
.kunitconfig
acl.c ext4: convert to ctime accessor functions 2023-07-24 10:29:54 +02:00
acl.h Revert "ext4: apply umask if ACL support is disabled" 2024-05-02 18:25:39 -04:00
balloc.c ext4: guard against NULL s_group_info in ext4_get_group_info 2026-08-06 10:34:27 -04:00
bitmap.c ext4: remove sbi argument from ext4_chksum() 2025-05-20 10:31:12 -04:00
block_validity.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
crypto.c Various ext4 updates for 7.3-rc1, including: 2026-08-20 13:17:11 -07:00
dir.c ext4: validate readdir offset before accessing dirent 2026-07-22 11:49:33 -04:00
ext4_extents.h ext4: fix extents-test.c is not compiled when EXT4_KUNIT_TESTS=M 2026-03-27 23:36:06 -04:00
ext4_jbd2.c Various ext4 updates for 7.3-rc1, including: 2026-08-20 13:17:11 -07:00
ext4_jbd2.h ext4: enable scoped NOFS when starting a handle in nojournal mode 2026-07-22 23:47:06 -04:00
ext4.h Various ext4 updates for 7.3-rc1, including: 2026-08-20 13:17:11 -07:00
extents_status.c treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
extents_status.h ext4: make ext4_es_lookup_extent() pass out the extent seq counter 2025-11-06 10:44:39 -05:00
extents-test.c ext4: use anonymous devices for KUnit test superblocks 2026-06-29 10:31:52 +02:00
extents.c Various ext4 updates for 7.3-rc1, including: 2026-08-20 13:17:11 -07:00
fast_commit.c treewide: refresh kmalloc_obj() conversions 2026-09-04 21:37:00 -07:00
fast_commit.h ext4: mark move extents fast-commit ineligible 2026-01-19 19:26:35 -05:00
file.c Various ext4 updates for 7.3-rc1, including: 2026-08-20 13:17:11 -07:00
fsmap.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
fsmap.h
fsync.c ext4: Fix data integrity writeout issues in nojournal mode 2026-07-27 16:25:33 +02:00
hash-test.c ext4: add Kunit coverage for directory hash computation 2026-06-03 10:30:15 -04:00
hash.c ext4: improve str2hashbuf by processing 4-byte chunks and removing function pointers 2026-06-03 10:30:15 -04:00
ialloc.c ext4: don't enable DAX on new encrypted files 2026-08-06 10:21:52 -04:00
indirect.c treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
inline.c ext4: cleanup unused CONVERT_INLINE_DATA flag 2026-07-22 11:49:33 -04:00
inode-test.c ext4: add missing MODULE_DESCRIPTION() 2024-07-05 16:07:24 -04:00
inode.c ext4: Avoid entering writeback paths during fastcommit replay 2026-08-21 13:57:44 +02:00
ioctl.c ext4: validate donor file superblock early in EXT4_IOC_MOVE_EXT 2026-06-10 10:53:50 -04:00
Kconfig ext4: remove obsolete EXT3 config options 2025-09-25 14:47:05 -04:00
Makefile ext4: add Kunit coverage for directory hash computation 2026-06-03 10:30:15 -04:00
mballoc-test.c ext4: use anonymous devices for KUnit test superblocks 2026-06-29 10:31:52 +02:00
mballoc.c ext4: get ext4_group_desc in ext4_mb_prefetch only when necessary 2026-07-21 11:26:39 -04:00
mballoc.h ext4: fix mballoc-test.c is not compiled when EXT4_KUNIT_TESTS=M 2026-03-27 23:36:02 -04:00
migrate.c ext4: fix circular lock dependency in ext4_ext_migrate 2026-07-21 11:26:39 -04:00
mmp.c ext4: Convert write_mmp_block_thawed() to bh_submit() 2026-06-04 10:28:08 +02:00
move_extent.c Various clean ups and bug fixes in ext4 for 7.1: 2026-04-17 17:08:31 -07:00
namei.c Various ext4 updates for 7.3-rc1, including: 2026-08-20 13:17:11 -07:00
orphan.c ext4: fix spurious message about orphan cleanup on RO fs 2026-08-06 10:24:31 -04:00
page-io.c ext4: Make ext4_bio_write_folio() return void 2026-07-20 10:39:25 -07:00
readpage.c ext4: Further de-generalize the bio postprocessing code 2026-07-20 10:39:25 -07:00
resize.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
super.c Various ext4 updates for 7.3-rc1, including: 2026-08-20 13:17:11 -07:00
symlink.c ext4: prefer IS_ERR_OR_NULL over manual NULL check 2026-04-09 21:27:24 -04:00
sysfs.c ext4: fix use-after-free in update_super_work when racing with umount 2026-03-27 23:37:39 -04:00
truncate.h
verity.c fsverity updates for 7.0 2026-02-12 10:41:34 -08:00
xattr_hurd.c fs: port xattr to mnt_idmap 2023-01-19 09:24:28 +01:00
xattr_security.c fs: port xattr to mnt_idmap 2023-01-19 09:24:28 +01:00
xattr_trusted.c fs: port xattr to mnt_idmap 2023-01-19 09:24:28 +01:00
xattr_user.c fs: port xattr to mnt_idmap 2023-01-19 09:24:28 +01:00
xattr.c ext4: stop retrying saturated xattr cache entries 2026-08-06 10:23:48 -04:00
xattr.h ext4: remove ea_inode_array mechanism in favor of ext4_put_ea_inode() 2026-07-22 12:27:43 -04:00