[GIT PULL] Block updates for 6.15-rc1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Linus,

Here are the block related updates for the 6.15-rc1 merge window. This
pull request contains:

- Fixes for integrity handling.

- NVMe pull request via Keith
	- Secure concatenation for TCP transport (Hannes)
	- Multipath sysfs visibility (Nilay)
	- Various cleanups (Qasim, Baruch, Wang, Chen, Mike, Damien, Li)
	- Correct use of 64-bit BARs for pci-epf target (Niklas)
	- Socket fix for selinux when used in containers (Peijie)

- MD pull request via Yu:
	- fix recovery can preempt resync (Li Nan)
	- fix md-bitmap IO limit (Su Yue)
	- fix raid10 discard with REQ_NOWAIT (Xiao Ni)
	- fix raid1 memory leak (Zheng Qixing)
	- fix mddev uaf (Yu Kuai)
	- fix raid1,raid10 IO flags (Yu Kuai)
	- some refactor and cleanup (Yu Kuai)

- Series cleaning up and fixing bugs in the bad block handling code.

- Improve support for write failure simulation in null_blk.

- Various lock ordering fixes.

- Fixes for locking for debugfs attributes.

- Various ublk related fixes and improvements.

- Cleanups for blk-rq-qos wait handling.

- blk-throttle fixes.

- Fixes for loop dio and sync handling.

- Fixes and cleanups for the auto-PI code.

- Block side support for hardware encryption keys in blk-crypto.

- Various cleanups and fixes.

Please pull!


The following changes since commit a64dcfb451e254085a7daee5fe51bf22959d52d3:

  Linux 6.14-rc2 (2025-02-09 12:45:03 -0800)

are available in the Git repository at:

  git://git.kernel.dk/linux.git tags/for-6.15/block-20250322

for you to fetch changes up to 3c9f0c9326b625bf008962d58996f89a3bba1e12:

  Merge tag 'nvme-6.15-2025-03-20' of git://git.infradead.org/nvme into for-6.15/block (2025-03-20 18:39:22 -0600)

----------------------------------------------------------------
for-6.15/block-20250322

----------------------------------------------------------------
Anuj Gupta (3):
      block: ensure correct integrity capability propagation in stacked devices
      block: Correctly initialize BLK_INTEGRITY_NOGENERATE and BLK_INTEGRITY_NOVERIFY
      block: remove unused parameter 'q' parameter in __blk_rq_map_sg()

Baruch Siach (1):
      nvme-pci: remove stale comment

Caleb Sander Mateos (1):
      ublk: complete command synchronously on error

Chen Linxuan (1):
      blk-cgroup: improve policy registration error handling

Chen Ni (1):
      nvmet: pci-epf: Remove redundant 'flush_workqueue()' calls

Christoph Hellwig (8):
      loop: factor out a loop_assign_backing_file helper
      loop: set LO_FLAGS_DIRECT_IO in loop_assign_backing_file
      loop: check in LO_FLAGS_DIRECT_IO in loop_default_blocksize
      loop: take the file system minimum dio alignment into account
      block: mark bounce buffering as incompatible with integrity
      block: move the block layer auto-integrity code into a new file
      block: split struct bio_integrity_payload
      block: fix a comment in the queue_attrs[] array

Coly Li (1):
      badblocks: Fix a nonsense WARN_ON() which checks whether a u64 variable < 0

Damien Le Moal (1):
      nvme: zns: Simplify nvme_zone_parse_entry()

Eric Biggers (3):
      blk-crypto: add basic hardware-wrapped key support
      blk-crypto: show supported key types in sysfs
      blk-crypto: add ioctls to create and prepare hardware-wrapped keys

Guixin Liu (1):
      block: remove unused parameter

Hannes Reinecke (10):
      crypto,fs: Separate out hkdf_extract() and hkdf_expand()
      nvme: add nvme_auth_generate_psk()
      nvme: add nvme_auth_generate_digest()
      nvme: add nvme_auth_derive_tls_psk()
      nvme-keyring: add nvme_tls_psk_refresh()
      nvme-tcp: request secure channel concatenation
      nvme-fabrics: reset admin connection for secure concatenation
      nvmet: Add 'sq' argument to alloc_ctrl_args
      nvmet-tcp: support secure channel concatenation
      nvmet: add tls_concat and tls_key debugfs entries

Jens Axboe (3):
      Merge tag 'md-6.15-20250312' of https://git.kernel.org/pub/scm/linux/kernel/git/mdraid/linux into for-6.15/block
      block/blk-iocost: ensure 'ret' is set on error
      Merge tag 'nvme-6.15-2025-03-20' of git://git.infradead.org/nvme into for-6.15/block

Li Haoran (1):
      nvmet: replace max(a, min(b, c)) by clamp(val, lo, hi)

Li Nan (9):
      md: ensure resync is prioritized over recovery
      badblocks: Fix error shitf ops
      badblocks: factor out a helper try_adjacent_combine
      badblocks: attempt to merge adjacent badblocks during ack_all_badblocks
      badblocks: return error directly when setting badblocks exceeds 512
      badblocks: return error if any badblock set fails
      badblocks: fix the using of MAX_BADBLOCKS
      badblocks: try can_merge_front before overlap_front
      badblocks: fix merge issue when new badblocks align with pre+1

Mike Christie (1):
      nvmet: Remove duplicate uuid_copy

Milan Broz (1):
      docs: sysfs-block: Clarify integrity sysfs attributes

Ming Lei (7):
      ublk: add DMA alignment limit
      blk-throttle: remove last_bytes_disp and last_ios_disp
      blk-throttle: don't take carryover for prioritized processing of metadata
      blk-throttle: carry over directly
      block: make sure ->nr_integrity_segments is cloned in blk_rq_prep_clone
      block: fix adding folio to bio
      loop: move vfs_fsync() out of loop_update_dio()

Muchun Song (2):
      block: introduce init_wait_func()
      block: refactor rq_qos_wait()

Niklas Cassel (1):
      nvmet: pci-epf: Always configure BAR0 as 64-bit

Nilay Shroff (16):
      block: acquire q->limits_lock while reading sysfs attributes
      block: move q->sysfs_lock and queue-freeze under show/store method
      block: remove q->sysfs_lock for attributes which don't need it
      block: introduce a dedicated lock for protecting queue elevator updates
      block: protect nr_requests update using q->elevator_lock
      block: protect wbt_lat_usec using q->elevator_lock
      block: protect read_ahead_kb using q->limits_lock
      block: protect hctx attributes/params using q->elevator_lock
      block: protect debugfs attrs using elevator_lock instead of sysfs_lock
      block: remove unnecessary goto labels in debugfs attribute read methods
      block: protect debugfs attribute method hctx_busy_show
      block: release q->elevator_lock in ioc_qos_write
      block: correct locking order for protecting blk-wbt parameters
      nvme-multipath: Add visibility for round-robin io-policy
      nvme-multipath: Add visibility for numa io-policy
      nvme-multipath: Add visibility for queue-depth io-policy

Peijie Shao (1):
      nvme-tcp: fix selinux denied when calling sock_sendmsg

Qasim Ijaz (1):
      nvme-fc: Utilise min3() to simplify queue count calculation

Shin'ichiro Kawasaki (5):
      null_blk: generate null_blk configfs features string
      null_blk: introduce badblocks_once parameter
      null_blk: replace null_process_cmd() call in null_zone_write()
      null_blk: pass transfer size to null_handle_rq()
      null_blk: do partial IO for bad blocks

Su Yue (1):
      md/md-bitmap: fix wrong bitmap_limit for clustermd when write sb

Tang Yizhou (2):
      blk-wbt: Fix some comments
      blk-wbt: Cleanup a comment in wb_timer_fn

Thomas Hellström (1):
      block: Make request_queue lockdep splats show up earlier

Thorsten Blum (1):
      block: Remove commented out code

Uday Shankar (2):
      ublk: enforce ublks_max only for unprivileged devices
      ublk: remove io_cmds list in ublk_queue

WangYuli (1):
      nvmet-fc: Remove unused functions

Xiao Ni (1):
      md/raid10: wait barrier before returning discard request with REQ_NOWAIT

Yu Kuai (11):
      md: merge common code into find_pers()
      md: only include md-cluster.h if necessary
      md: introduce struct md_submodule_head and APIs
      md: switch personalities to use md_submodule_head
      md/md-cluster: cleanup md_cluster_ops reference
      md: don't export md_cluster_ops
      md: switch md-cluster to use md_submodle_head
      md: fix mddev uaf while iterating all_mddevs list
      md/raid5: merge reshape_progress checking inside get_reshape_loc()
      md/raid1,raid10: don't ignore IO flags
      blk-throttle: fix lower bps rate by throtl_trim_slice()

Zhaoyang Huang (2):
      loop: release the lo_work_lock before queue_work
      Revert "driver: block: release the lo_work_lock before queue_work"

Zheng Qixing (5):
      md/raid1: fix memory leak in raid1_run() if no active rdev
      badblocks: fix missing bad blocks on retry in _badblocks_check()
      badblocks: return boolean from badblocks_set() and badblocks_clear()
      md: improve return types of badblocks handling functions
      badblocks: use sector_t instead of int to avoid truncation of badblocks length

Zhu Yanjun (1):
      loop: Remove struct loop_func_table

 Documentation/ABI/stable/sysfs-block               |  43 +-
 Documentation/block/inline-encryption.rst          | 255 ++++++++-
 Documentation/userspace-api/ioctl/ioctl-number.rst |   2 +
 block/Makefile                                     |   3 +-
 block/badblocks.c                                  | 327 +++++-------
 block/bio-integrity-auto.c                         | 191 +++++++
 block/bio-integrity.c                              | 266 +---------
 block/bio.c                                        |  17 +-
 block/blk-cgroup.c                                 |  73 ++-
 block/blk-cgroup.h                                 |   2 +
 block/blk-core.c                                   |   7 +
 block/blk-crypto-fallback.c                        |   7 +-
 block/blk-crypto-internal.h                        |  10 +
 block/blk-crypto-profile.c                         | 101 ++++
 block/blk-crypto-sysfs.c                           |  35 ++
 block/blk-crypto.c                                 | 204 +++++++-
 block/blk-flush.c                                  |  10 +-
 block/blk-iocost.c                                 |  20 +-
 block/blk-merge.c                                  |   4 +-
 block/blk-mq-debugfs.c                             |  41 +-
 block/blk-mq-sched.c                               |   2 +-
 block/blk-mq-sysfs.c                               |   4 +-
 block/blk-mq-tag.c                                 |   3 +-
 block/blk-mq.c                                     |  22 +-
 block/blk-mq.h                                     |   4 +-
 block/blk-rq-qos.c                                 |  82 ++-
 block/blk-settings.c                               |  58 +--
 block/blk-sysfs.c                                  | 304 +++++++----
 block/blk-throttle.c                               |  82 ++-
 block/blk-throttle.h                               |   7 +-
 block/blk-wbt.c                                    |  17 +-
 block/blk.h                                        |   2 +-
 block/bounce.c                                     |   2 -
 block/bsg-lib.c                                    |   2 +-
 block/elevator.c                                   |  43 +-
 block/elevator.h                                   |   2 -
 block/genhd.c                                      |   9 +-
 block/ioctl.c                                      |   5 +
 block/kyber-iosched.c                              |   2 +-
 block/partitions/sgi.c                             |   2 -
 block/partitions/sun.c                             |   2 -
 block/t10-pi.c                                     |   6 +-
 crypto/Kconfig                                     |   6 +
 crypto/Makefile                                    |   1 +
 crypto/hkdf.c                                      | 573 +++++++++++++++++++++
 drivers/block/loop.c                               | 106 ++--
 drivers/block/mtip32xx/mtip32xx.c                  |   2 +-
 drivers/block/null_blk/main.c                      | 177 ++++---
 drivers/block/null_blk/null_blk.h                  |   6 +
 drivers/block/null_blk/zoned.c                     |  20 +-
 drivers/block/rnbd/rnbd-clt.c                      |   2 +-
 drivers/block/sunvdc.c                             |   2 +-
 drivers/block/ublk_drv.c                           | 115 +++--
 drivers/block/virtio_blk.c                         |   2 +-
 drivers/block/xen-blkfront.c                       |   2 +-
 drivers/md/dm-integrity.c                          |  12 -
 drivers/md/dm-table.c                              |   7 +-
 drivers/md/md-bitmap.c                             |  14 +-
 drivers/md/md-cluster.c                            |  18 +-
 drivers/md/md-cluster.h                            |   6 +
 drivers/md/md-linear.c                             |  15 +-
 drivers/md/md.c                                    | 356 ++++++-------
 drivers/md/md.h                                    |  62 ++-
 drivers/md/raid0.c                                 |  18 +-
 drivers/md/raid1-10.c                              |   6 +-
 drivers/md/raid1.c                                 |  56 +-
 drivers/md/raid10.c                                |  66 ++-
 drivers/md/raid5.c                                 |  91 ++--
 drivers/memstick/core/ms_block.c                   |   2 +-
 drivers/memstick/core/mspro_block.c                |   4 +-
 drivers/mmc/core/queue.c                           |   2 +-
 drivers/mmc/host/cqhci-crypto.c                    |   8 +-
 drivers/mmc/host/sdhci-msm.c                       |   3 +-
 drivers/mtd/ubi/block.c                            |   2 +-
 drivers/nvdimm/badrange.c                          |   2 +-
 drivers/nvdimm/nd.h                                |   2 +-
 drivers/nvdimm/pfn_devs.c                          |   7 +-
 drivers/nvdimm/pmem.c                              |   2 +-
 drivers/nvme/common/Kconfig                        |   1 +
 drivers/nvme/common/auth.c                         | 337 ++++++++++++
 drivers/nvme/common/keyring.c                      |  65 ++-
 drivers/nvme/host/Kconfig                          |   2 +-
 drivers/nvme/host/apple.c                          |   2 +-
 drivers/nvme/host/auth.c                           | 115 ++++-
 drivers/nvme/host/core.c                           |   3 +
 drivers/nvme/host/fabrics.c                        |  34 +-
 drivers/nvme/host/fabrics.h                        |   3 +
 drivers/nvme/host/fc.c                             |   6 +-
 drivers/nvme/host/multipath.c                      | 138 +++++
 drivers/nvme/host/nvme.h                           |  22 +-
 drivers/nvme/host/pci.c                            |   5 +-
 drivers/nvme/host/rdma.c                           |   3 +-
 drivers/nvme/host/sysfs.c                          |  24 +-
 drivers/nvme/host/tcp.c                            |  67 ++-
 drivers/nvme/host/zns.c                            |  10 +-
 drivers/nvme/target/auth.c                         |  72 ++-
 drivers/nvme/target/core.c                         |   9 +-
 drivers/nvme/target/debugfs.c                      |  27 +
 drivers/nvme/target/fabrics-cmd-auth.c             |  60 ++-
 drivers/nvme/target/fabrics-cmd.c                  |  25 +-
 drivers/nvme/target/fc.c                           |  14 -
 drivers/nvme/target/loop.c                         |   2 +-
 drivers/nvme/target/nvmet.h                        |  40 +-
 drivers/nvme/target/pci-epf.c                      |  12 +-
 drivers/nvme/target/tcp.c                          |  32 +-
 drivers/scsi/scsi_lib.c                            |   2 +-
 drivers/target/target_core_iblock.c                |  12 -
 drivers/ufs/core/ufshcd-crypto.c                   |   7 +-
 drivers/ufs/host/ufs-exynos.c                      |   3 +-
 drivers/ufs/host/ufs-qcom.c                        |   3 +-
 fs/crypto/Kconfig                                  |   1 +
 fs/crypto/hkdf.c                                   |  85 +--
 fs/crypto/inline_crypt.c                           |   4 +-
 include/crypto/hkdf.h                              |  20 +
 include/linux/badblocks.h                          |  10 +-
 include/linux/bio-integrity.h                      |  25 +-
 include/linux/bio.h                                |   4 -
 include/linux/blk-crypto-profile.h                 |  73 +++
 include/linux/blk-crypto.h                         |  73 ++-
 include/linux/blk-mq.h                             |   9 +-
 include/linux/blkdev.h                             |  15 +
 include/linux/nvme-auth.h                          |   7 +
 include/linux/nvme-keyring.h                       |  12 +-
 include/linux/nvme.h                               |   7 +
 include/linux/wait.h                               |   6 +-
 include/uapi/linux/blk-crypto.h                    |  44 ++
 include/uapi/linux/fs.h                            |   6 +-
 include/uapi/linux/ublk_cmd.h                      |   7 +
 128 files changed, 4059 insertions(+), 1561 deletions(-)
 create mode 100644 block/bio-integrity-auto.c
 create mode 100644 crypto/hkdf.c
 create mode 100644 include/crypto/hkdf.h
 create mode 100644 include/uapi/linux/blk-crypto.h

-- 
Jens Axboe





[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux