linux/fs/btrfs
Linus Torvalds 55ab7e1422 for-7.3/block-20260819
-----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCAAuFiEEwPw5LcreJtl1+l5K99NY+ylx4KYFAmqGD2AQHGF4Ym9lQGtl
 cm5lbC5kawAKCRD301j7KXHgpomLD/9rr3SIQvdQRTnSCJlw1cFypSrnRhGAx1g8
 v1F7UXuf4Abt4GIerbdXmBTx9zZRctpcOC41ReQk3YKkYuukuvna+Z6tBGf5I5+e
 3SR3Zkrj2k4zyNC49g0/QkUJkTTS4tlsBFhNJtY3Q5BBIRMRd/sPvZ+cLnD7g/wH
 3zM9IaEMk9xu9mF1nGI7LRl1qY0IOr4ynQpqohl5sEL3TQWgIa0r2B0jhGacBAvC
 GGDwIwGDrM6oGwCn6mLN78O5odhLyTufIMNy3EnVw7BcDpLApcnJzYYjGzv+ElCM
 WLBJwWYj+PYeoenuJuFhbRihbOPg5gZT3Mn8CUhLxUYzwZvIdFGWOjcGffD9sVu/
 JO4nB6A+2AG/wgsb2YVKefhN86FoD0F/2hhdEdgZPJE6a+7+xeyyp9IzyQEWd0cg
 Seo06fxE4pwF+dczXT3jzU3LXSZb/Jbh9hzu163VMSWbGYDCpDzfipqZGeN6DWE7
 nG2NssAQtjtZrgdggYbZXtwecLZhu3cMj3jbhS4wSUzhQFW42yceJstCx4wpRhW9
 m9EXjHQnRFMAb2TjUC3FzEncjbxL+uACjcKhTetd1hLbTI5I8KArZXjam1OdJOHV
 urdtsru79LanQLAgRwWYPeKCZGNhX7I2o3OsmVDLQgHIDaZguTcPUVQs3wVui7Dk
 IDmmrtwzpg==
 =G1l4
 -----END PGP SIGNATURE-----

Merge tag 'for-7.3/block-20260819' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux

Pull block updates from Jens Axboe:

 - NVMe updates via Keith:
     - Enable Clang context analysis for the nvme host driver, adding
       context annotations across core, fabrics, rdma, tcp and pci
     - nvmet reservation state exposed through a new namespace-level
       debugfs directory, plus ABI documentation for the host sysfs and
       target configfs interfaces
     - nvme-tcp host memory disclosure fixes on the read path: reject a
       read that transferred too few bytes, don't accept C2HData based
       on blk_rq_payload_bytes() alone, and fix the R2T case for a read
       command
     - Parallelize nvme-rdma I/O queue allocation and startup (Surabhi)
     - Apple nvme fixes and quirks: page aligned admin queue buffers,
       destroy the admin queue on removal, and various DMA/NVMMU
       correctness fixes
     - A large pile of nvmet and host fixes for out-of-bounds reads,
       refcount/resource leaks, and NULL derefs across auth, zns,
       passthru, pci-epf, rdma and configfs
     - Various other fixes and cleanups

 - MD updates via Yu Kuai:
     - llbitmap reshape support, the large series wiring exact bitmap
       mapping and reshape lifecycle through raid5 and raid10, growing
       the page cache in place, and remapping checkpointed bits as
       reshape progresses
     - raid5 fixes for lockless max_nr_stripes and recovery_offset
       accesses, a reshape deadlock with more failed devices than max
       degraded, and bitmap batch counter consistency
     - Atomic write handling for raid1/raid10, and removal of the
       REQ_NOWAIT support from raid1/10/456
     - raid5-ppl use-after-free fix in ppl_do_flush()
     - A batch of smaller fixes across md core and the bitmap code

 - s390/dasd ESE full-track write support and the surrounding
   infrastructure, plus enabling CONTEXT_ANALYSIS for s390/block

 - RWF_DONTCACHE support for block devices, built on new task-context
   bio completion infrastructure, and wiring it up for the iomap and
   buffer dropbehind writeback paths

 - Async io_uring zone reset all, plus zone management command cleanups
   allowing REQ_NOWAIT and tightening conventional zone rejection

 - Block integrity refactoring: lift BIP_CHECK_FLAGS to the shared
   header, handle nogenerate/noverify properly in fs-integrity, and drop
   the blk-integrity.h include from bdev.c

 - Split out a new blk_plug.h header

 - ublk improvements: add UBLK_F_IO_DESC_SIZE, split request validation
   from io_desc init, reject non-power-of-2 zone sizes in SET_PARAMS,
   and a series of hardening fixes around map/unmap and auto buf reg

 - null_blk cleanups and configfs serialization fixes

 - nbd queue freeze removal on the setup paths, and a new
   pre_defined_connections module parameter for pre-created devices

 - blk-cgroup fixes for the race between policy activation and blkg
   destruction, and accounting per-cpu stats over possible CPUs across
   blk-stat, iolatency, iocost and kyber

 - Various dio fixes: leak on metadata mapping error, validate user
   space vectors during extraction, and set dma_alignment from the
   backing file for loop and zloop direct I/O

 - bio cleanups

 - Various other fixes and cleanups all over

* tag 'for-7.3/block-20260819' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux: (241 commits)
  nbd: add pre_defined_connections module parameter for pre-created devices
  nbd: remove queue freeze for newly created nbd from netlink path
  nbd: factor out a nbd_genl_foreach_sock
  nbd: skip queue freeze when setting size at device startup
  nbd: remove queue freeze in nbd_add_socket
  nbd: clear queue limits on disconnect
  nbd: disallow NBD_SET_SOCK on an active device
  nbd: simplify find_fallback() by removing redundant logic
  blk-mq: add missing call to srcu_barrier() in blk_mq_free_tag_set()
  block: mtip32xx: synchronize ioctls with device removal
  ublk: avoid teardown retry loop on xarray allocation failure
  null_blk: fix UBSAN shift-out-of-bounds when zone_size is 0 or overflows
  block: don't include blk-integrity.h in bdev.c
  xfs: avoid double deferrals for RWF_DONTCACHE writes
  loop: Fix recently introduced lock inversion
  block: set QUEUE_FLAG_DYING unconditionally in blk_mark_disk_dead()
  swim3: Add missing MODULE_DESCRIPTION
  selftests: ublk: add SET_PARAMS validation test
  selftests: ublk: add helper for SET_PARAMS
  ublk: reject non-power-of-2 zone sizes in SET_PARAMS
  ...
2026-08-20 13:55:16 -07:00
..
tests btrfs: remove op field from struct btrfs_free_space_ctl 2026-06-08 15:53:29 +02:00
accessors.c btrfs: fix typos in comments and strings 2025-09-23 08:49:16 +02:00
accessors.h btrfs: allow mounting filesystems with remap-tree incompat flag 2026-02-03 07:54:35 +01:00
acl.c btrfs: check if root is readonly when setting posix acl 2026-08-07 19:17:17 +02:00
acl.h btrfs: update include and forward declarations in headers 2025-03-18 20:35:43 +01:00
async-thread.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
async-thread.h
backref.c btrfs: fix NULL pointer deref during assertion in btrfs_backref_free_node() 2026-07-14 07:04:10 +02:00
backref.h btrfs: use on stack backref iterator in build_backref_tree() 2026-06-08 15:53:32 +02:00
bio.c btrfs: btrfs_log_dev_io_error() on all bio errors 2026-04-07 20:00:29 +02:00
bio.h btrfs: move existing remaps before relocating block group 2026-02-03 07:54:35 +01:00
block-group.c btrfs: disguise single-data-RAID56 as RAID1/RAID1C3 2026-08-07 19:17:17 +02:00
block-group.h btrfs: change block group reclaim_mark to bool 2026-08-07 19:17:17 +02:00
block-rsv.c btrfs: skip global block reserve accounting for rescue mounts 2026-07-21 06:40:18 +02:00
block-rsv.h btrfs: add METADATA_REMAP chunk type 2026-02-03 07:54:27 +01:00
btrfs_inode.h btrfs: trigger cow fixup via dirty_folio() 2026-07-30 19:28:36 +02:00
compression.c btrfs: compression: allocate heuristic buckets with workspace 2026-08-07 19:17:17 +02:00
compression.h btrfs: prevent direct reclaim during compressed readahead 2026-04-07 18:56:08 +02:00
ctree.c btrfs: enable unlocked NOFAIL retry for eb allocations 2026-08-07 19:17:19 +02:00
ctree.h btrfs: use simple booleans for log_commit field in struct btrfs_root 2026-08-07 19:17:18 +02:00
defrag.c btrfs: defrag: remove pointless list_del_init() in defrag_one_cluster() 2026-08-07 19:17:16 +02:00
defrag.h btrfs: pass struct btrfs_inode to btrfs_defrag_file() 2025-03-18 20:35:43 +01:00
delalloc-space.c btrfs: use shifts for sectorsize and nodesize 2026-06-09 18:22:45 +02:00
delalloc-space.h btrfs: pass struct btrfs_inode to btrfs_free_reserved_data_space_noquota() 2025-05-15 14:30:52 +02:00
delayed-inode.c btrfs: use %pe for error code output 2026-08-07 19:17:17 +02:00
delayed-inode.h btrfs: embed delayed root to struct btrfs_fs_info 2026-02-03 07:56:20 +01:00
delayed-ref.c btrfs: lift assertions to beginning of insert_delayed_ref() 2026-06-08 15:53:28 +02:00
delayed-ref.h btrfs: move ref-verify under CONFIG_BTRFS_DEBUG 2025-09-22 10:54:32 +02:00
dev-replace.c btrfs: deny freezing devices undergoing a replace 2026-06-29 10:31:49 +02:00
dev-replace.h btrfs: trivial conversion to return bool instead of int 2025-05-15 14:30:49 +02:00
dir-item.c btrfs: remove pointless error check in btrfs_check_dir_item_collision() 2026-04-07 18:56:00 +02:00
dir-item.h btrfs: rename inode number parameter passed to btrfs_check_dir_item_collision() 2025-07-22 00:05:00 +02:00
direct-io.c for-7.3-tag 2026-08-20 13:00:40 -07:00
direct-io.h btrfs: update include and forward declarations in headers 2025-03-18 20:35:43 +01:00
discard.c btrfs: handle discarding fully-remapped block groups 2026-02-03 07:54:36 +01:00
discard.h btrfs: update include and forward declarations in headers 2025-03-18 20:35:43 +01:00
disk-io.c btrfs: add struct btrfs_eb_prealloc 2026-08-07 19:17:19 +02:00
disk-io.h btrfs: add struct btrfs_eb_prealloc 2026-08-07 19:17:19 +02:00
export.c btrfs: avoid potential out-of-bounds in btrfs_encode_fh() 2025-09-26 08:48:30 +02:00
export.h
extent_io.c btrfs: add extra ASSERT()s to make sure the folio size is correct 2026-08-07 19:17:19 +02:00
extent_io.h btrfs: enable unlocked NOFAIL retry for eb allocations 2026-08-07 19:17:19 +02:00
extent_map.c btrfs: don't propagate EXTENT_FLAG_LOGGING to split extent maps 2026-07-14 07:04:22 +02:00
extent_map.h btrfs: headers cleanup to remove unnecessary local includes 2025-11-24 22:34:52 +01:00
extent-io-tree.c btrfs: add validation for extent states 2026-08-07 19:17:18 +02:00
extent-io-tree.h btrfs: convert several int parameters to bool 2025-09-22 10:54:32 +02:00
extent-tree.c btrfs: add struct btrfs_eb_prealloc 2026-08-07 19:17:19 +02:00
extent-tree.h btrfs: add do_remap parameter to btrfs_discard_extent() 2026-02-03 07:54:35 +01:00
fiemap.c btrfs: use aligned range for locking in extent_fiemap() 2026-08-07 19:17:18 +02:00
fiemap.h
file-item.c btrfs: fallback to transaction csum tree on a commit root csum miss 2026-06-30 01:59:20 +02:00
file-item.h btrfs: rename btrfs_csum_file_blocks() to btrfs_insert_data_csums() 2026-04-07 18:55:56 +02:00
file.c btrfs: remove log batch counter use for fsync 2026-08-07 19:17:18 +02:00
file.h btrfs: update include and forward declarations in headers 2025-03-18 20:35:43 +01:00
free-space-cache.c btrfs: reject free space cache with more entries than pages 2026-06-30 01:59:04 +02:00
free-space-cache.h btrfs: remove op field from struct btrfs_free_space_ctl 2026-06-08 15:53:29 +02:00
free-space-tree.c btrfs: switch local indicator variables to bools 2026-06-09 18:22:46 +02:00
free-space-tree.h btrfs: handle setting up relocation of block group with remap-tree 2026-02-03 07:54:35 +01:00
fs.c btrfs: allow any block size that is no larger than page size 2026-08-07 19:16:28 +02:00
fs.h btrfs: open code BTRFS_BYTES_TO_BLKS() 2026-08-07 19:17:17 +02:00
inode-item.c btrfs: merge setting ret and return ret 2026-02-03 06:38:33 +01:00
inode-item.h btrfs: remove unused parameters from btrfs_lookup_inode_extref() 2025-07-21 23:58:03 +02:00
inode.c for-7.3-tag 2026-08-20 13:00:40 -07:00
ioctl.c for-7.3-tag 2026-08-20 13:00:40 -07:00
ioctl.h tree-wide: s/struct fileattr/struct file_kattr/g 2025-07-04 16:14:39 +02:00
Kconfig btrfs: disable bs > ps support if no transparent hugepage support 2026-07-31 16:55:50 +02:00
locking.c btrfs: add definitions and constants for remap-tree 2026-02-03 07:54:02 +01:00
locking.h btrfs: fix typos in comments and strings 2025-09-23 08:49:16 +02:00
lru_cache.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
lru_cache.h
lzo.c btrfs: lzo: reject inline extents without valid headers 2026-07-31 16:54:58 +02:00
Makefile btrfs: tests: zoned: add tests cases for zoned code 2026-04-07 18:55:52 +02:00
messages.c btrfs: use %pe for error code output 2026-08-07 19:17:17 +02:00
messages.h btrfs: stop printing condition result in assertion failure messages 2026-04-07 18:55:58 +02:00
misc.h block: rename bi_bvec_done 2026-08-06 06:47:33 -06:00
ordered-data.c btrfs: fix false IO failure after falling back to buffered write 2026-06-09 18:22:46 +02:00
ordered-data.h btrfs: fix false IO failure after falling back to buffered write 2026-06-09 18:22:46 +02:00
orphan.c btrfs: BTRFS_PATH_AUTO_FREE in orphan.c 2024-09-10 16:51:22 +02:00
orphan.h
print-tree.c btrfs: print-tree: print header owner as signed 2026-06-30 02:02:03 +02:00
print-tree.h btrfs: update include and forward declarations in headers 2025-03-18 20:35:43 +01:00
props.c btrfs: validate properties before setting them 2026-06-30 01:58:43 +02:00
props.h btrfs: pass struct btrfs_inode to btrfs_inode_inherit_props() 2025-03-18 20:35:44 +01:00
qgroup.c btrfs: qgroup: fix a wrong length calculation in qgroup_free_reserved_data() 2026-08-07 19:17:18 +02:00
qgroup.h btrfs: unexport btrfs_qgroup_reserve_meta() 2026-04-07 18:56:05 +02:00
raid-stripe-tree.c btrfs: report missing raid stripe tree root during lookup 2026-07-21 06:41:11 +02:00
raid-stripe-tree.h btrfs: update include and forward declarations in headers 2025-03-18 20:35:43 +01:00
raid56.c btrfs: use kvmalloc() for stripe buffer of scrub_stripe 2026-08-07 19:17:16 +02:00
raid56.h btrfs: use kvmalloc() for stripe buffer of scrub_stripe 2026-08-07 19:17:16 +02:00
ref-verify.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
ref-verify.h btrfs: move ref-verify under CONFIG_BTRFS_DEBUG 2025-09-22 10:54:32 +02:00
reflink.c btrfs: use aligned range for locking in reflink 2026-08-07 19:17:18 +02:00
reflink.h
relocation.c btrfs: drop recovered reloc root refs on recovery failure 2026-08-07 19:17:17 +02:00
relocation.h btrfs: move locking into btrfs_get_reloc_bg_bytenr() 2026-06-09 18:22:47 +02:00
root-tree.c btrfs: use %pe for error code output 2026-08-07 19:17:17 +02:00
root-tree.h
scrub.c btrfs: use kvmalloc() for stripe buffer of scrub_stripe 2026-08-07 19:17:16 +02:00
scrub.h btrfs: convert several int parameters to bool 2025-09-22 10:54:32 +02:00
send.c btrfs: add missing sctx check in cleanup path in btrfs_ioctl_send() 2026-08-07 19:17:17 +02:00
send.h btrfs: pass btrfs_root pointers to send ioctl parameters 2025-03-18 20:35:49 +01:00
space-info.c btrfs: change block group reclaim_mark to bool 2026-08-07 19:17:17 +02:00
space-info.h btrfs: zoned: fix deadlock waiting for ticket during data relocation 2026-06-09 18:22:44 +02:00
subpage.c btrfs: enable unlocked NOFAIL retry for eb allocations 2026-08-07 19:17:19 +02:00
subpage.h btrfs: enable unlocked NOFAIL retry for eb allocations 2026-08-07 19:17:19 +02:00
super.c btrfs: use %pe for error code output 2026-08-07 19:17:17 +02:00
super.h btrfs: constify arguments of some functions 2026-04-07 18:55:58 +02:00
sysfs.c btrfs: sysfs: fix path of the "read_policy" module parameter in comment 2026-08-07 19:17:18 +02:00
sysfs.h btrfs: remove fs_info argument from btrfs_sysfs_add_space_info_type() 2025-11-24 22:02:30 +01:00
transaction.c btrfs: use simple booleans for log_commit field in struct btrfs_root 2026-08-07 19:17:18 +02:00
transaction.h btrfs: replace writeback inhibition xarray with a fixed inline buffer 2026-08-07 19:17:17 +02:00
tree-checker.c btrfs: tree-checker: validate INODE_REF's namelen 2026-06-30 02:02:02 +02:00
tree-checker.h btrfs: add definitions and constants for remap-tree 2026-02-03 07:54:02 +01:00
tree-log.c btrfs: skip hole detection during full fsync for files without holes 2026-08-07 19:17:19 +02:00
tree-log.h btrfs: use a named enum for the log mode in inode log functions 2026-06-08 15:53:34 +02:00
tree-mod-log.c btrfs: remove redundant extent_buffer_uptodate() checks after read_tree_block() 2026-04-07 18:55:55 +02:00
tree-mod-log.h btrfs: drop unused parameter path from btrfs_tree_mod_log_rewind() 2024-11-11 14:34:15 +01:00
ulist.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
ulist.h
uuid-tree.c btrfs: prefer IS_ERR_OR_NULL() over manual NULL check 2026-04-07 18:56:02 +02:00
uuid-tree.h btrfs: fix transaction abort on set received ioctl due to item overflow 2026-03-03 17:03:59 +01:00
verity.c btrfs: retry verity reads for not-uptodate Merkle folios 2026-08-07 19:17:18 +02:00
verity.h
volumes.c for-7.3-tag 2026-08-20 13:00:40 -07:00
volumes.h for-7.3-tag 2026-08-20 13:00:40 -07:00
xattr.c btrfs: remaining BTRFS_PATH_AUTO_FREE conversions 2025-11-25 01:53:33 +01:00
xattr.h btrfs: update include and forward declarations in headers 2025-03-18 20:35:43 +01:00
zlib.c btrfs: prevent direct reclaim during compressed readahead 2026-04-07 18:56:08 +02:00
zoned.c btrfs: zoned: skip fully truncated ordered extents at zone finish 2026-07-21 06:43:46 +02:00
zoned.h btrfs: zoned: factor out the zone loading part into a testable function 2026-02-03 07:59:06 +01:00
zstd.c btrfs: prevent direct reclaim during compressed readahead 2026-04-07 18:56:08 +02:00