Linux block layer
 help / color / mirror / Atom feed
From: Jens Axboe <axboe@kernel.dk>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: "linux-block@vger.kernel.org" <linux-block@vger.kernel.org>
Subject: [GIT PULL] Block updates for 7.2
Date: Mon, 15 Jun 2026 09:24:22 -0600	[thread overview]
Message-ID: <28f00610-4a45-47f5-9e08-468c31736090@kernel.dk> (raw)

Hi Linus,

Here are the block updates queued up for the 7.2 merge window. This
contains:

- NVMe pull request via Keith:
       - Per-controller admin and IO timeout sysfs attributes, and
         letting the block layer set request timeouts (Maurizio,
         Maximilian)
       - Multipath passthrough iostats, and PCI P2PDMA enablement for
         multipath devices (Keith, Kiran)
       - A new diag sysfs attribute group exporting per-controller
         counters (retries, multipath failover, error counters, requeue
         and failure counts, reset and reconnect events) (Nilay)
       - FDP configuration validation and bounds check fixes (liuxixin)
       - Various nvmet fixes, including a pre-auth out-of-bounds read in
         the Discovery Get Log Page handler, auth payload bounds
         validation, and tcp error-path leak fixes (Bryam, Tianchu,
         Geliang)
       - nvme-tcp lockdep and workqueue fixes (Shin'ichiro, Kuniyuki,
         Eric)
       - Assorted other fixes and cleanups (John, Yao, Chao, Mateusz,
         Achkinazi, Wentao)

- MD pull request via Yu Kuai:
       - raid1/raid10 fixes for a deadlock in the read error recovery
         path, error-path detection and bio accounting with cloned bios,
         and an nr_pending leak in the REQ_ATOMIC bad-block error path
         (Abd-Alrhman)
       - PCI P2PDMA propagation from member devices to the RAID device
         (Kiran)
       - dm-raid bio requeue fix, and various smaller fixes and cleanups
         (Benjamin, Chen, Li, Thorsten)

- Enable Clang lock context analysis for the block layer, with the
  accompanying annotations across queue limits, the blk_holder_ops
  callbacks, crypto, cgroup, iocost, kyber and mq-deadline (Bart)

- Block status code infrastructure work: a tagged status table, a
  str_to_blk_op() helper, a bio_endio_status() helper, and on top of
  that a new configurable block-layer error injection facility (Christoph)

- DRBD netlink rework, replacing the genl_magic machinery with explicit
  netlink serialization and moving the DRBD UAPI headers to
  include/uapi/linux/ (Christoph Böhmwalder)

- bvec improvements: a bvec_folio() helper and making the bvec_iter
  helpers proper inline functions (Willy, Christoph)

- ublk cleanups and a canceling-flag fix for the disk-not-allocated
  case (Caleb, Ming)

- Partition handling fixes: bound the AIX pp_count scan, fix an of_node
  refcount leak, and replace __get_free_page() with kmalloc() (Bryam,
  Wentao, Mike)

- Convert numa_node to int in blk_mq_hw_ctx and ->init_request, and add
  WQ_PERCPU to the block workqueue users (Mateusz, Marco)

- Block statistics and tracing: propagate in-flight to the whole disk
  on partition IO, export passthrough stats, and a new
  block_rq_tag_wait tracepoint (Tang, Keith, Aaron)

- A round of removals, unexports and cleanups across bio, direct-io and
  the bvec helpers (Christoph)

- Various driver fixes (mtip32xx use-after-free, rbd snap_count
  validation and strscpy conversion, nbd socket lockdep reclassify,
  virtio-blk zone report clamp, floppy) and a batch of MAINTAINERS
  email/list updates (Coly, Li, Yu, Christoph Böhmwalder)

- Other little fixes and cleanups all over

Please pull!


The following changes since commit 7fd2df204f342fc17d1a0bfcd474b24232fb0f32:

  Linux 7.1-rc2 (2026-05-03 14:21:25 -0700)

are available in the Git repository at:

  https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux.git tags/for-7.2/block-20260615

for you to fetch changes up to c7c76f9232bd34835d821f14abdc5fafc17bc938:

  MAINTAINERS: Update Coly Li's email address (2026-06-13 09:29:02 -0600)

----------------------------------------------------------------
for-7.2/block-20260615

----------------------------------------------------------------
Aaron Tomlin (1):
      blk-mq: add tracepoint block_rq_tag_wait

Abd-Alrhman Masalkhi (5):
      md: skip redundant raid_disks update when value is unchanged
      md/raid1,raid10: fix deadlock in read error recovery path
      md/raid1,raid10: fix error-path detection with md_cloned_bio()
      md/raid1,raid10: fix bio accounting for split md cloned bios
      raid1: fix nr_pending leak in REQ_ATOMIC bad-block error path

Achkinazi, Igor (1):
      nvme-multipath: set BIO_REMAPPED on bios remapped to per-path namespace disks

Andreas Hindborg (1):
      rust: block: mq: align init_request numa_node arg with C signature

Bart Van Assche (14):
      block: Annotate the queue limits functions
      block/bdev: Annotate the blk_holder_ops callback functions
      block/cgroup: Split blkg_conf_prep()
      block/cgroup: Split blkg_conf_exit()
      block/cgroup: Improve lock context annotations
      block/blk-iocost: Combine two error paths in ioc_qos_write()
      block/cgroup: Inline blkg_conf_{open,close}_bdev_frozen()
      block/crypto: Annotate the crypto functions
      block/blk-iocost: Split ioc_rqos_throttle()
      block/blk-iocost: Inline iocg_lock() and iocg_unlock()
      block/blk-mq-debugfs: Improve lock context annotations
      block/Kyber: Make the lock context annotations compatible with Clang
      block/mq-deadline: Make the lock context annotations compatible with Clang
      block: Enable lock context analysis

Benjamin Marzinski (1):
      dm-raid: only requeue bios when dm is suspending

Bryam Vargas (2):
      nvmet: fix pre-auth out-of-bounds heap read in Discovery Get Log Page
      partitions: aix: bound the pp_count scan to the ppe array

Caleb Sander Mateos (4):
      blk-mq: introduce blk_rq_has_data()
      ublk: optimize ublk_rq_has_data()
      ublk: move ublk_req_build_flags() earlier
      ublk: factor out ublk_init_iod() helper

Chaitanya Kulkarni (1):
      block: clear BLK_FEAT_PCI_P2PDMA in blk_stack_limits() for non-supporting devices

Chao Shi (2):
      nvme: core: reject invalid LBA data size from Identify Namespace
      block: skip sync_blockdev() on surprise removal in bdev_mark_dead()

Chen Cheng (1):
      md/raid10: reset read_slot when reusing r10bio for discard

Christoph Böhmwalder (4):
      drbd: move UAPI headers to include/uapi/linux/
      drbd: replace genl_magic with explicit netlink serialization
      drbd: clean up UAPI headers
      MAINTAINERS: use new drbd-dev mailing list

Christoph Hellwig (18):
      block: remove zero_fill_bio_iter
      block: remove bio_copy_data_iter
      block: unexport blk_io_schedule
      block: unexport blk_status_to_str
      block: unexport bio_{set,check}_pages_dirty
      direct-io: remove IOCB_NOWAIT support
      block: don't set BIO_QUIET for BLK_STS_AGAIN
      block: mark biovec_init_pool static
      loop: cleanup lo_rw_aio
      nvme-tcp: cleanup nvme_tcp_init_iter
      bvec: make the bvec_iter helpers inline functions
      block: add a bio_endio_status helper
      md/raid1: cleanup handle_read_error
      md/raid1: move the exceed_read_errors condition out of fix_read_error
      block: add a macro to initialize the status table
      block: add a "tag" for block status codes
      block: add a str_to_blk_op helper
      block: add configurable error injection

Coly Li (1):
      MAINTAINERS: Update Coly Li's email address

David Laight (1):
      drivers/block/rbd: Use strscpy() to copy strings into arrays

Denis Arefev (1):
      block: Avoid mounting the bdev pseudo-filesystem in userspace

Eric Dumazet (1):
      nbd: Reclassify sockets to avoid lockdep circular dependency

Geliang Tang (2):
      nvmet-tcp: fix page fragment cache leak in error path
      nvmet-tcp: check return value of nvmet_tcp_set_queue_sock

Haoze Xie (1):
      rust: block: fix GenDisk cleanup paths

Jens Axboe (2):
      Merge tag 'md-7.2-20260531' of https://git.kernel.org/pub/scm/linux/kernel/git/mdraid/linux into for-7.2/block
      Merge tag 'nvme-7.2-2026-06-04' of git://git.infradead.org/nvme into for-7.2/block

John Garry (2):
      nvme: use DEFINE_SIMPLE_SYSFS_GROUP_VISIBLE for multipath_sysfs
      nvme-multipath: pass NS head to nvme_mpath_revalidate_paths()

Keith Busch (3):
      block: export passthrough stats enabled
      nvme: add support multipath passthrough iostats
      block: check bio split for unaligned bvec

Kiran Kumar Modukuri (2):
      md: propagate BLK_FEAT_PCI_P2PDMA from member devices to RAID device
      nvme-multipath: enable PCI P2PDMA for multipath devices

Kuniyuki Iwashima (1):
      nvme-tcp: Use WQ_PERCPU explicitly if wq_unbound is false.

Li Nan (1):
      MAINTAINERS: Update Li Nan's E-mail address

Marco Crivellari (1):
      block: Add WQ_PERCPU to alloc_workqueue users

Mateusz Nowicki (2):
      block: switch numa_node to int in blk_mq_hw_ctx and init_request
      nvme-pci: fix out-of-bounds access in nvme_setup_descriptor_pools

Matthew Wilcox (Oracle) (2):
      block: Add bvec_folio()
      block: Include bvec.h kernel-doc in the htmldocs

Maurizio Lombardi (7):
      nvme: remove redundant timeout argument from nvme_wait_freeze_timeout
      nvme: add sysfs attribute to change admin timeout per nvme controller
      nvme: add sysfs attribute to change IO timeout per controller
      nvme-core: align fabrics_q teardown with admin_q in nvme_free_ctrl
      nvmet-loop: do not alloc admin tag set during reset
      nvme-core: warn on allocating admin tag set with existing queue
      nvme-core: fix unsigned comparison warning in nvme_wait_freeze_timeout

Maximilian Heyne (1):
      nvme: Let the blocklayer set timeouts for requests

Michael Bommarito (1):
      virtio-blk: clamp zone report to the report buffer capacity

Mike Rapoport (Microsoft) (1):
      block: partitions: replace __get_free_page() with kmalloc()

Ming Lei (1):
      ublk: set canceling flag even when disk is not allocated

Nilay Shroff (9):
      nvme-multipath: fix flex array size in struct nvme_ns_head
      nvme: add diag attribute group under sysfs
      nvme: export command retry count via sysfs
      nvme: export multipath failover count via sysfs
      nvme: export command error counters via sysfs
      nvme: export I/O requeue count when no path is usable via sysfs
      nvme: export I/O failure count when no path is available via sysfs
      nvme: export controller reset event count via sysfs
      nvme: export controller reconnect event count via sysfs

Rosen Penev (1):
      rbd: check snap_count against RBD_MAX_SNAP_COUNT

Shin'ichiro Kawasaki (2):
      nvme-tcp: move nvme_tcp_reclassify_socket()
      nvme-tcp: lockdep: use dynamic lockdep keys per socket instance

Steven Feng (1):
      block: optimize I/O merge hot path with unlikely() hints

Tal Zussman (1):
      block: remove blkdev_write_begin() and blkdev_write_end()

Tang Yizhou (1):
      block: propagate in_flight to whole disk on partition I/O

Tao Cui (1):
      blk-throttle: schedule parent dispatch in tg_flush_bios()

Thorsten Blum (3):
      md/raid0: use str_plural helper in dump_zones
      block/partitions/acorn: use min in {riscix,linux}_partition
      n64cart: use strscpy in n64cart_probe

Tianchu Chen (1):
      nvmet-auth: validate reply message payload bounds against transfer length

Uwe Kleine-König (The Capable Hub) (1):
      floppy: Drop unused pnp driver data

Wentao Liang (2):
      block: partitions: fix of_node refcount leak in of_partition()
      nvme: target: rdma: fix ndev refcount leak on queue connect

Yao Sang (1):
      nvme: refresh multipath head zoned limits from path limits

Yu Kuai (2):
      MAINTAINERS: update Yu Kuai's email address
      block, bfq: release cgroup stats with bfq_group

Yuho Choi (1):
      mtip32xx: fix use-after-free on service thread failure

liuxixin (2):
      nvme: fix FDP fdpcidx bounds check
      nvme: validate FDP configuration descriptor sizes

liyouhong (1):
      nvme-multipath: require exact iopolicy names for module parameter

 Documentation/block/error-injection.rst            |   59 +
 Documentation/block/index.rst                      |    1 +
 Documentation/core-api/kernel-api.rst              |    1 +
 MAINTAINERS                                        |   10 +-
 block/Kconfig                                      |    8 +
 block/Makefile                                     |    3 +
 block/bdev.c                                       |   13 +-
 block/bfq-cgroup.c                                 |   54 +-
 block/bio.c                                        |   52 +-
 block/blk-cgroup.c                                 |   98 +-
 block/blk-cgroup.h                                 |   13 +-
 block/blk-core.c                                   |  104 +-
 block/blk-crypto-fallback.c                        |    9 +-
 block/blk-crypto-profile.c                         |    2 +
 block/blk-crypto.c                                 |    3 +-
 block/blk-iocost.c                                 |  306 ++-
 block/blk-iolatency.c                              |   19 +-
 block/blk-merge.c                                  |   17 +-
 block/blk-mq-debugfs.c                             |   24 +-
 block/blk-mq-tag.c                                 |    6 +
 block/blk-mq.c                                     |   43 +-
 block/blk-settings.c                               |    2 +
 block/blk-sysfs.c                                  |    5 +
 block/blk-throttle.c                               |   85 +-
 block/blk-zoned.c                                  |    2 +-
 block/blk.h                                        |   32 +
 block/bsg-lib.c                                    |    2 +-
 block/error-injection.c                            |  315 +++
 block/error-injection.h                            |   21 +
 block/fops.c                                       |   27 +-
 block/genhd.c                                      |    4 +
 block/kyber-iosched.c                              |    7 +-
 block/mq-deadline.c                                |   12 +-
 block/partitions/acorn.c                           |    5 +-
 block/partitions/aix.c                             |    9 +
 block/partitions/core.c                            |    6 +-
 block/partitions/of.c                              |    5 +-
 drivers/block/drbd/Makefile                        |    1 +
 drivers/block/drbd/drbd_buildtag.c                 |    2 +-
 .../linux => drivers/block/drbd}/drbd_config.h     |    0
 drivers/block/drbd/drbd_debugfs.c                  |    2 +-
 drivers/block/drbd/drbd_int.h                      |    6 +-
 drivers/block/drbd/drbd_main.c                     |    6 +-
 drivers/block/drbd/drbd_nl.c                       |  416 ++--
 drivers/block/drbd/drbd_nl_gen.c                   | 2606 ++++++++++++++++++++
 drivers/block/drbd/drbd_nl_gen.h                   |  395 +++
 drivers/block/drbd/drbd_proc.c                     |    2 +-
 drivers/block/floppy.c                             |    4 +-
 drivers/block/loop.c                               |   24 +-
 drivers/block/mtip32xx/mtip32xx.c                  |   19 +-
 drivers/block/n64cart.c                            |    3 +-
 drivers/block/nbd.c                                |   39 +-
 drivers/block/rbd.c                                |    9 +-
 drivers/block/ublk_drv.c                           |  174 +-
 drivers/block/virtio_blk.c                         |    2 +
 drivers/md/dm-raid.c                               |    6 +
 drivers/md/dm-rq.c                                 |    2 +-
 drivers/md/md.c                                    |   32 +-
 drivers/md/md.h                                    |    7 +
 drivers/md/raid0.c                                 |    4 +-
 drivers/md/raid1.c                                 |   64 +-
 drivers/md/raid10.c                                |   30 +-
 drivers/md/raid5.c                                 |    7 +-
 drivers/mmc/core/queue.c                           |    2 +-
 drivers/mtd/ubi/block.c                            |    2 +-
 drivers/nvme/host/apple.c                          |    4 +-
 drivers/nvme/host/core.c                           |   74 +-
 drivers/nvme/host/fc.c                             |    5 +-
 drivers/nvme/host/ioctl.c                          |    9 +
 drivers/nvme/host/multipath.c                      |  144 +-
 drivers/nvme/host/nvme.h                           |   21 +-
 drivers/nvme/host/pci.c                            |   16 +-
 drivers/nvme/host/rdma.c                           |    6 +-
 drivers/nvme/host/sysfs.c                          |  311 ++-
 drivers/nvme/host/tcp.c                            |  127 +-
 drivers/nvme/target/discovery.c                    |   23 +-
 drivers/nvme/target/fabrics-cmd-auth.c             |   15 +-
 drivers/nvme/target/loop.c                         |   33 +-
 drivers/nvme/target/rdma.c                         |    6 +-
 drivers/nvme/target/tcp.c                          |   11 +-
 drivers/scsi/scsi_lib.c                            |    2 +-
 fs/direct-io.c                                     |   15 +-
 include/linux/bio.h                                |   32 +-
 include/linux/blk-mq.h                             |   53 +-
 include/linux/blkdev.h                             |   28 +-
 include/linux/bvec.h                               |  112 +-
 include/linux/drbd_genl.h                          |  536 ----
 include/linux/drbd_genl_api.h                      |   56 -
 include/linux/genl_magic_func.h                    |  413 ----
 include/linux/genl_magic_struct.h                  |  272 --
 include/trace/events/block.h                       |   59 +
 include/{ => uapi}/linux/drbd.h                    |   73 +-
 include/uapi/linux/drbd_genl.h                     |  359 +++
 include/{ => uapi}/linux/drbd_limits.h             |   10 +-
 io_uring/rsrc.c                                    |    2 +-
 mm/page_io.c                                       |    4 +-
 rust/kernel/block/mq/gen_disk.rs                   |   20 +-
 rust/kernel/block/mq/operations.rs                 |    2 +-
 98 files changed, 5781 insertions(+), 2322 deletions(-)
 create mode 100644 Documentation/block/error-injection.rst
 create mode 100644 block/error-injection.c
 create mode 100644 block/error-injection.h
 rename {include/linux => drivers/block/drbd}/drbd_config.h (100%)
 create mode 100644 drivers/block/drbd/drbd_nl_gen.c
 create mode 100644 drivers/block/drbd/drbd_nl_gen.h
 delete mode 100644 include/linux/drbd_genl.h
 delete mode 100644 include/linux/drbd_genl_api.h
 delete mode 100644 include/linux/genl_magic_func.h
 delete mode 100644 include/linux/genl_magic_struct.h
 rename include/{ => uapi}/linux/drbd.h (85%)
 create mode 100644 include/uapi/linux/drbd_genl.h
 rename include/{ => uapi}/linux/drbd_limits.h (97%)

-- 
Jens Axboe


             reply	other threads:[~2026-06-15 15:24 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-15 15:24 Jens Axboe [this message]
2026-06-16  7:54 ` [GIT PULL] Block updates for 7.2 pr-tracker-bot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=28f00610-4a45-47f5-9e08-468c31736090@kernel.dk \
    --to=axboe@kernel.dk \
    --cc=linux-block@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox