[GIT PULL] Block changes for 6.8-rc1

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

 



Hi Linus,

Here are the block changes for the 6.8 merge window. Pretty quiet round
this time around. This pull request contains:

- NVMe updates via Keith:
	- nvme fabrics spec updates (Guixin, Max)
	- nvme target udpates (Guixin, Evan)
	- nvme attribute refactoring (Daniel)
	- nvme-fc numa fix (Keith)

- MD updates via Song:
	- Fix/Cleanup RCU usage from conf->disks[i].rdev (Yu Kuai)
	- Fix raid5 hang issue (Junxiao Bi)
	- Add Yu Kuai as Reviewer of the md subsystem
	- Remove deprecated flavors (Song Liu)
	- raid1 read error check support (Li Nan)
	- Better handle events off-by-1 case (Alex Lyakas)

- Efficiency improvements for passthrough (Kundan)

- Support for mapping integrity data directly (Keith)

- Zoned write fix (Damien)

- rnbd fixes (Kees, Santosh, Supriti)

- Default to a sane discard size granularity (Christoph)

- Make the default max transfer size naming less confusing (Christoph)

- Remove support for deprecated host aware zoned model (Christoph)

- Misc fixes (me, Li, Matthew, Min, Ming, Randy, liyouhong, Daniel,
  Bart, Christoph)

This will throw a merge conflict in drivers/nvme/host/core.c due to some
later-than-rc3 fixes in your branch. The resolution is just to use the
HEAD part, but note that 'ns' is now called 'head'. I'm including my
resolution at the end of this email.

Please pull!


The following changes since commit 2cc14f52aeb78ce3f29677c2de1f06c0e91471ab:

  Linux 6.7-rc3 (2023-11-26 19:59:33 -0800)

are available in the Git repository at:

  git://git.kernel.dk/linux.git tags/for-6.8/block-2024-01-08

for you to fetch changes up to 587371ed783b046f22ba7a5e1cc9a19ae35123b4:

  block: Treat sequential write preferred zone type as invalid (2024-01-08 08:34:24 -0700)

----------------------------------------------------------------
for-6.8/block-2024-01-08

----------------------------------------------------------------
Alex Lyakas (1):
      md: Whenassemble the array, consult the superblock of the freshest device

Bart Van Assche (1):
      block: Use pr_info() instead of printk(KERN_INFO ...)

Christoph Hellwig (27):
      block: move a few definitions out of CONFIG_BLK_DEV_ZONED
      block: prevent an integer overflow in bvec_try_merge_hw_page
      block: support adding less than len in bio_add_hw_page
      virtio_blk: cleanup zoned device probing
      virtio_blk: remove the broken zone revalidation support
      block: remove support for the host aware zone model
      block: simplify disk_set_zoned
      sd: only call disk_clear_zoned when needed
      block: reject invalid operation in submit_bio_noacct
      blk-wbt: remove the separate write cache tracking
      loop: don't update discard limits from loop_set_status
      null_blk: don't cap max_hw_sectors to BLK_DEF_MAX_SECTORS
      aoe: don't abuse BLK_DEF_MAX_SECTORS
      loop: don't abuse BLK_DEF_MAX_SECTORS
      block: rename and document BLK_DEF_MAX_SECTORS
      block: remove two comments in bio_split_discard
      bcache: discard_granularity should not be smaller than a sector
      block: default the discard granularity to sector size
      ubd: use the default discard granularity
      nbd: use the default discard granularity
      null_blk: use the default discard granularity
      zram: use the default discard granularity
      bcache: use the default discard granularity
      mtd_blkdevs: use the default discard granularity
      block: floor the discard granularity to the physical block size
      sd: remove the !ZBC && blk_queue_is_zoned case in sd_read_block_characteristics
      block: remove disk_clear_zoned

Damien Le Moal (1):
      block: Treat sequential write preferred zone type as invalid

Daniel Vacek (1):
      blk-cgroup: don't use removal safe list iterators

Daniel Wagner (6):
      nvme: move ns id info to struct nvme_ns_head
      nvme: refactor ns info helpers
      nvme: refactor ns info setup function
      nvme: rename ns attribute group
      nvme: add csi, ms and nuse to sysfs
      nvme: repack struct nvme_ns_head

Evan Burgess (1):
      nvmet: configfs: use ctrl->instance to track passthru subsystems

Gou Hao (1):
      md/raid1: remove unnecessary null checking

Guixin Liu (4):
      nvme: introduce nvme_check_ctrl_fabric_info helper
      nvme-fabrics: check ioccsz and iorcsz
      nvmet: allow identical cntlid_min and cntlid_max settings
      nvmet: remove cntlid_min and cntlid_max check in nvmet_alloc_ctrl

Jens Axboe (5):
      Merge tag 'md-next-20231208' of https://git.kernel.org/pub/scm/linux/kernel/git/song/md into for-6.8/block
      block: improve struct request_queue layout
      Merge tag 'md-next-20231219' of https://git.kernel.org/pub/scm/linux/kernel/git/song/md into for-6.8/block
      block: export disk_clear_zoned()
      Merge tag 'nvme-6.8-2023-12-21' of git://git.infradead.org/nvme into for-6.8/block

Junxiao Bi (2):
      md: bypass block throttle for superblock update
      Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d"

Kees Cook (1):
      block/rnbd-srv: Check for unlikely string overflow

Keith Busch (5):
      block: bio-integrity: directly map user buffers
      nvme: use bio_integrity_map_user
      iouring: remove IORING_URING_CMD_POLLED
      io_uring: remove uring_cmd cookie
      nvme-fc: set numa_node after nvme_init_ctrl

Kundan Kumar (3):
      block: skip QUEUE_FLAG_STATS and rq-qos for passthrough io
      block: skip cgroups for passthrough io
      block: skip start/end time stamping for passthrough IO

Li Nan (4):
      block: Set memalloc_noio to false on device_add_disk() error path
      md: factor out a helper exceed_read_errors() to check read_errors
      md/raid1: support read error check
      block: add check of 'minors' and 'first_minor' in device_add_disk()

Matthew Wilcox (Oracle) (1):
      block: Remove special-casing of compound pages

Max Gurtovoy (1):
      nvme-fabrics: don't check discovery ioccsz/iorcsz

Min Li (1):
      block: add check that partition length needs to be aligned with block size

Ming Lei (1):
      blk-cgroup: fix rcu lockdep warning in blkg_lookup()

Randy Dunlap (1):
      drbd: actlog: fix kernel-doc warnings and spelling

Santosh Pradhan (1):
      block/rnbd: add support for REQ_OP_WRITE_ZEROES

Song Liu (5):
      Merge branch 'md-next-rcu-cleanup' into md-next
      MAINTAINERS: SOFTWARE RAID: Add Yu Kuai as Reviewer
      md: Remove deprecated CONFIG_MD_LINEAR
      md: Remove deprecated CONFIG_MD_MULTIPATH
      md: Remove deprecated CONFIG_MD_FAULTY

Supriti Singh (1):
      block/rnbd: use %pe to print errors

Yu Kuai (6):
      md: remove flag RemoveSynchronized
      md/raid10: remove rcu protection to access rdev from conf
      md/raid1: remove rcu protection to access rdev from conf
      md/raid5: remove rcu protection to access rdev from conf
      md/md-multipath: remove rcu protection to access rdev from conf
      md: synchronize flush io with array reconfiguration

liyouhong (1):
      drivers/block/xen-blkback/common.h: Fix spelling typo in comment

 MAINTAINERS                        |   1 +
 arch/um/drivers/ubd_kern.c         |   1 -
 block/bio-integrity.c              | 218 ++++++++++++++++-
 block/bio.c                        |  53 +++--
 block/blk-cgroup.c                 |   7 +-
 block/blk-cgroup.h                 |   3 +-
 block/blk-core.c                   |  26 +-
 block/blk-merge.c                  |   6 +-
 block/blk-mq.c                     |   3 +-
 block/blk-rq-qos.h                 |   2 +-
 block/blk-settings.c               | 107 ++-------
 block/blk-sysfs.c                  |  11 +-
 block/blk-wbt.c                    |  13 +-
 block/blk-wbt.h                    |   5 -
 block/blk-zoned.c                  |  21 +-
 block/blk.h                        |   2 -
 block/genhd.c                      |   5 +-
 block/ioctl.c                      |  11 +-
 block/partitions/core.c            |  12 +-
 drivers/block/aoe/aoeblk.c         |   3 +-
 drivers/block/drbd/drbd_actlog.c   |  16 +-
 drivers/block/loop.c               |   5 +-
 drivers/block/nbd.c                |   6 +-
 drivers/block/null_blk/main.c      |  13 +-
 drivers/block/null_blk/zoned.c     |   2 +-
 drivers/block/rnbd/rnbd-clt.c      |  13 +-
 drivers/block/rnbd/rnbd-proto.h    |  14 +-
 drivers/block/rnbd/rnbd-srv.c      |  44 ++--
 drivers/block/ublk_drv.c           |   2 +-
 drivers/block/virtio_blk.c         |  78 ++----
 drivers/block/xen-blkback/common.h |   2 +-
 drivers/block/zram/zram_drv.c      |   1 -
 drivers/md/Kconfig                 |  34 ---
 drivers/md/Makefile                |  10 +-
 drivers/md/bcache/super.c          |   1 -
 drivers/md/dm-kcopyd.c             |   2 +-
 drivers/md/dm-table.c              |  45 ++--
 drivers/md/dm-zoned-metadata.c     |   7 +-
 drivers/md/dm-zoned-target.c       |   4 +-
 drivers/md/md-autodetect.c         |   8 +-
 drivers/md/md-faulty.c             | 365 ----------------------------
 drivers/md/md-linear.c             | 318 -------------------------
 drivers/md/md-multipath.c          | 471 -------------------------------------
 drivers/md/md.c                    | 305 ++++++++++++------------
 drivers/md/md.h                    |   5 -
 drivers/md/raid1-10.c              |  54 +++++
 drivers/md/raid1.c                 |  91 +++----
 drivers/md/raid10.c                | 271 +++++----------------
 drivers/md/raid5-cache.c           |  11 +-
 drivers/md/raid5-ppl.c             |  16 +-
 drivers/md/raid5.c                 | 203 +++++-----------
 drivers/md/raid5.h                 |   4 +-
 drivers/mtd/mtd_blkdevs.c          |   4 +-
 drivers/nvme/host/core.c           | 224 ++++++++++--------
 drivers/nvme/host/fc.c             |   6 +-
 drivers/nvme/host/ioctl.c          | 205 +++-------------
 drivers/nvme/host/multipath.c      |   2 +-
 drivers/nvme/host/nvme.h           |  44 ++--
 drivers/nvme/host/rdma.c           |   4 +-
 drivers/nvme/host/sysfs.c          |  99 +++++++-
 drivers/nvme/host/zns.c            |  37 +--
 drivers/nvme/target/configfs.c     |   4 +-
 drivers/nvme/target/core.c         |   3 -
 drivers/nvme/target/passthru.c     |   4 +-
 drivers/scsi/scsi_debug.c          |  27 +--
 drivers/scsi/sd.c                  |  49 ++--
 drivers/scsi/sd_zbc.c              |  16 +-
 fs/btrfs/zoned.c                   |  23 +-
 fs/btrfs/zoned.h                   |   2 +-
 fs/f2fs/data.c                     |   2 +-
 fs/f2fs/super.c                    |  17 +-
 include/linux/bio.h                |   9 +
 include/linux/blk-mq.h             |   6 +
 include/linux/blk_types.h          |   8 +-
 include/linux/blkdev.h             | 159 ++++++-------
 include/linux/io_uring.h           |   9 +-
 include/uapi/linux/raid/md_p.h     |   8 +-
 include/uapi/linux/raid/md_u.h     |  11 +-
 io_uring/uring_cmd.c               |   1 -
 79 files changed, 1254 insertions(+), 2660 deletions(-)
 delete mode 100644 drivers/md/md-faulty.c
 delete mode 100644 drivers/md/md-linear.c
 delete mode 100644 drivers/md/md-multipath.c


commit e91cbc6ff26c06c9d3eb261f8ba5b66fff92f74f
Merge: 0dd3ee311255 587371ed783b
Author: Jens Axboe <axboe@xxxxxxxxx>
Date:   Mon Jan 8 09:20:02 2024 -0700

    Merge branch 'for-6.8/block' into linus-merge-6.8
    
    * for-6.8/block: (78 commits)
      block: Treat sequential write preferred zone type as invalid
      block: remove disk_clear_zoned
      sd: remove the !ZBC && blk_queue_is_zoned case in sd_read_block_characteristics
      drivers/block/xen-blkback/common.h: Fix spelling typo in comment
      blk-cgroup: fix rcu lockdep warning in blkg_lookup()
      blk-cgroup: don't use removal safe list iterators
      block: floor the discard granularity to the physical block size
      mtd_blkdevs: use the default discard granularity
      bcache: use the default discard granularity
      zram: use the default discard granularity
      null_blk: use the default discard granularity
      nbd: use the default discard granularity
      ubd: use the default discard granularity
      block: default the discard granularity to sector size
      bcache: discard_granularity should not be smaller than a sector
      block: remove two comments in bio_split_discard
      block: rename and document BLK_DEF_MAX_SECTORS
      loop: don't abuse BLK_DEF_MAX_SECTORS
      aoe: don't abuse BLK_DEF_MAX_SECTORS
      null_blk: don't cap max_hw_sectors to BLK_DEF_MAX_SECTORS
      ...
    
    Signed-off-by: Jens Axboe <axboe@xxxxxxxxx>

diff --cc drivers/nvme/host/core.c
index 60f14019f981,d144d1acb09a..0af612387083
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@@ -1903,10 -1899,9 +1912,10 @@@ static void nvme_update_disk_info(struc
  
  	/*
  	 * The block layer can't support LBA sizes larger than the page size
 -	 * yet, so catch this early and don't allow block I/O.
 +	 * or smaller than a sector size yet, so catch this early and don't
 +	 * allow block I/O.
  	 */
- 	if (ns->lba_shift > PAGE_SHIFT || ns->lba_shift < SECTOR_SHIFT) {
 -	if (head->lba_shift > PAGE_SHIFT) {
++	if (head->lba_shift > PAGE_SHIFT || head->lba_shift < SECTOR_SHIFT) {
  		capacity = 0;
  		bs = (1 << 9);
  	}
@@@ -2043,19 -2038,13 +2052,20 @@@ static int nvme_update_ns_info_block(st
  	if (ret)
  		return ret;
  
 +	if (id->ncap == 0) {
 +		/* namespace not allocated or attached */
 +		info->is_removed = true;
 +		ret = -ENODEV;
 +		goto error;
 +	}
 +
  	blk_mq_freeze_queue(ns->disk->queue);
  	lbaf = nvme_lbaf_index(id->flbas);
- 	ns->lba_shift = id->lbaf[lbaf].ds;
+ 	ns->head->lba_shift = id->lbaf[lbaf].ds;
+ 	ns->head->nuse = le64_to_cpu(id->nuse);
  	nvme_set_queue_limits(ns->ctrl, ns->queue);
  
- 	ret = nvme_configure_metadata(ns, id);
+ 	ret = nvme_configure_metadata(ns->ctrl, ns->head, id);
  	if (ret < 0) {
  		blk_mq_unfreeze_queue(ns->disk->queue);
  		goto out;

-- 
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