From patchwork Sun Mar 29 22:53:19 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jens Axboe X-Patchwork-Id: 11464275 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 46EC313A4 for ; Sun, 29 Mar 2020 22:53:26 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 0112F20748 for ; Sun, 29 Mar 2020 22:53:25 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=kernel-dk.20150623.gappssmtp.com header.i=@kernel-dk.20150623.gappssmtp.com header.b="a4b+gs7x" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728982AbgC2WxZ (ORCPT ); Sun, 29 Mar 2020 18:53:25 -0400 Received: from mail-pl1-f194.google.com ([209.85.214.194]:35774 "EHLO mail-pl1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727591AbgC2WxY (ORCPT ); Sun, 29 Mar 2020 18:53:24 -0400 Received: by mail-pl1-f194.google.com with SMTP id c12so3139414plz.2 for ; Sun, 29 Mar 2020 15:53:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel-dk.20150623.gappssmtp.com; s=20150623; h=to:cc:from:subject:message-id:date:user-agent:mime-version :content-language; bh=UHuAdk7zRSoQ12SqtxsWeevmEJ48GLKub1KGcCyWdi0=; b=a4b+gs7xeIWjNovTqwxJe34IR2PvczeBqWnSyOOCwQpOfx5SQcJvPsnrEZ9E+TtEtb myDXPBtf3ds6aySeMm1IR7TgLIVxbxRdjIB3s7RkGTg68tTtd4L3UI39h3/HMpmDTnBg sr9YotmLSlE1e4mkUExxnt1ZfqgZohMqLSCcRdTKf2ncLP4Nq7BAjtQGLoKBZo/Phf9B C48a3Qv+3OKZCcbNcujdq7Ih/vvXBrpJ1sjxgKM4Lq6eeSrriji4H0z/Z8w9WV1zRYR6 v6L5Zum5HjQiHDsVCmN99qrpCBbDKegdRPeTPLesqGYbNHdkrGY1N4Gvqmc+XBgLW0LF n9wQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:cc:from:subject:message-id:date:user-agent :mime-version:content-language; bh=UHuAdk7zRSoQ12SqtxsWeevmEJ48GLKub1KGcCyWdi0=; b=qn+nb0LhJOR43mae2EbXzjOgUc3RJP9lXKEVoo1Yam5fmvp2WLevj4+v5tfLMR7mct C2aI3EYzrqoim2BfEHTufuLmyrB7bgcXHe3fr58i4BBSc0dHf75dXnsqpPFncOjM841R jRNpyiQWCv1MGRXuFkvLzhxqgV5K0xwXlEEoeBsfSfvJrA/E+K/kT7SyI9cAcjKNjkaf tQIQf4ScbiI9VCfrIw/iXZ9Nh6DaZ9JmDascnGpSWREbSeWL8aW2JYXgo1seG7WOmE2l MRtiPo4eeV4Eer3do211NNaHXnzvv6QXWf40Rwpm3wtLFI3VHDwBFYv/wvobjSr6WZdE EVuA== X-Gm-Message-State: ANhLgQ387qPZ7CxMeQehgRWTZVjKBPP+AWm+xTQ5CoAwCHwXNyDQdMWQ DAYrNr30z5PhuRGNTsK898gU8+JF7UdqGA== X-Google-Smtp-Source: ADFU+vsfaSHp7HYM+h5cStspXrGyROKSt4jH/az8HCoj1dIz3fJEni0KMBcPvmD/lqetvZyqWWXMOA== X-Received: by 2002:a17:90a:254f:: with SMTP id j73mr12028825pje.11.1585522401967; Sun, 29 Mar 2020 15:53:21 -0700 (PDT) Received: from [192.168.1.188] ([66.219.217.145]) by smtp.gmail.com with ESMTPSA id r7sm8735858pfg.38.2020.03.29.15.53.20 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 29 Mar 2020 15:53:21 -0700 (PDT) To: Linus Torvalds Cc: "linux-block@vger.kernel.org" From: Jens Axboe Subject: [GIT PULL] Block changes for 5.7-rc Message-ID: Date: Sun, 29 Mar 2020 16:53:19 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 MIME-Version: 1.0 Content-Language: en-US Sender: linux-block-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-block@vger.kernel.org Hi Linus, Here are the core block changes for this merge window. This pull request contains: - Online capacity resizing (Balbir) - Number of hardware queue change fixes (Bart) - null_blk fault injection addition (Bart) - Cleanup of queue allocation, unifying the node/no-node API (Christoph) - Cleanup of genhd, moving code to where it makes sense (Christoph) - Cleanup of the partition handling code (Christoph) - disk stat fixes/improvements (Konstantin) - BFQ improvements (Paolo) - Various fixes and improvements Note that this will throw a merge conflict in , due to this fix in 5.6: commit b53df2e7442c73a932fb74228147fb946e531585 (tag: block-5.6-2020-03-13) Author: Shin'ichiro Kawasaki Date: Fri Feb 21 10:37:08 2020 +0900 block: Fix partition support for host aware zoned block devices The fixup is trivial, delete everything in the merge conflict, except disk_has_partitions(). I'm attaching my resolution, for reference. Please pull! git://git.kernel.dk/linux-block.git tags/for-5.7/block-2020-03-29 ---------------------------------------------------------------- Alexey Dobriyan (1): block, zoned: fix integer overflow with BLKRESETZONE et al Balbir Singh (5): block/genhd: Notify udev about capacity change virtio_blk.c: Convert to use set_capacity_revalidate_and_notify xen-blkfront.c: Convert to use set_capacity_revalidate_and_notify nvme: Convert to use set_capacity_revalidate_and_notify scsi: Convert to use set_capacity_revalidate_and_notify Bart Van Assche (8): blk-mq: Fix a comment in include/linux/blk-mq.h blk-mq: Keep set->nr_hw_queues and set->map[].nr_queues in sync blk-mq: Fix a recently introduced regression in blk_mq_realloc_hw_ctxs() null_blk: Suppress an UBSAN complaint triggered when setting 'memory_backed' null_blk: Fix changing the number of hardware queues null_blk: Fix the null_add_dev() error path null_blk: Handle null_add_dev() failures properly null_blk: Add support for init_hctx() fault injection Chaitanya Kulkarni (1): block: return NULL in blk_alloc_queue() on error Christoph Hellwig (37): block: fix a device invalidation regression block: remove the blk_lookup_devt export block: remove __bdevname block: move disk_name and related helpers out of partition-generic.c block: move sysfs methods shared by disks and partitions to genhd.c block: remove alloc_part_info and free_part_info scsi: simplify scsi_bios_ptable scsi: move scsicam_bios_param to the end of scsicam.c scsi: simplify scsi_partsize block: unexport read_dev_sector and put_dev_sector block: cleanup how md_autodetect_dev is called block: remove warn_no_part block: declare all partition detection routines in check.h block: remove block/partitions/karma.h block: remove block/partitions/osf.h block: remove block/partitions/sgi.h block: remove block/partitions/sun.h block: move struct partition out of genhd.h block: move the *_PARTITION enum out of genhd.h partitions/msdos: remove LINUX_SWAP_PARTITION block: move the various x86 Unix label formats out of genhd.h block: merge partition-generic.c and check.c block: mark block_depr static block: mark part_in_flight and part_in_flight_rw static block: unexport disk_get_part block: unexport disk_map_sector_rcu block: unexport get_gendisk block: move guard_bio_eod to bio.c block: move block layer internals out of include/linux/genhd.h block: move the part_stat* helpers from genhd.h to a new header block: move the ->devnode callback to struct block_device_operations block: add a blk_mq_init_queue_data helper null_blk: use blk_mq_init_queue_data bcache: pass the make_request methods to blk_queue_make_request block: simplify queue allocation Revert "blkdev: check for valid request queue before issuing flush" block: move bio_map_* to blk-map.c Guoqing Jiang (6): block: fix comment for blk_cloned_rq_check_limits block: use bio_{wouldblock,io}_error in direct_make_request block: remove redundant setting of QUEUE_FLAG_DYING block: cleanup for _blk/blk_rq_prep_clone block: remove unneeded argument from blk_alloc_flush_queue block: cleanup comment for blk_flush_complete_seq Johannes Thumshirn (1): block: factor out requeue handling from dispatch code Konstantin Khlebnikov (3): block/diskstats: more accurate approximation of io_ticks for slow disks block/diskstats: accumulate all per-cpu counters in one pass block/diskstats: replace time_in_queue with sum of request times Ming Lei (1): block: Prevent hung_check firing during long sync IO Paolo Valente (4): block, bfq: move forward the getting of an extra ref in bfq_bfqq_move block, bfq: turn put_queue into release_process_ref in __bfq_bic_change_cgroup block, bfq: make reparent_leaf_entity actually work only on leaf entities block, bfq: invoke flush_idle_tree after reparent_active_queues in pd_offline Revanth Rajashekar (1): block: sed-opal: Change the check condition for regular session validity Sahitya Tummala (1): block: Fix use-after-free issue accessing struct io_cq Stephen Kitt (1): block: Document genhd capability flags Weiping Zhang (1): blk-iocost: remove duplicated lines in comments Zhiqiang Liu (1): block, bfq: fix use-after-free in bfq_idle_slice_timer_body Documentation/admin-guide/iostats.rst | 5 +- Documentation/block/capability.rst | 16 +- Documentation/scsi/scsi_mid_low_api.txt | 21 - arch/m68k/emu/nfblock.c | 3 +- arch/xtensa/platforms/iss/simdisk.c | 3 +- block/Makefile | 3 +- block/bfq-cgroup.c | 87 ++-- block/bfq-iosched.c | 18 +- block/bfq-iosched.h | 1 + block/bio.c | 580 +++-------------------- block/blk-cgroup.c | 2 +- block/blk-core.c | 82 ++-- block/blk-flush.c | 16 +- block/blk-ioc.c | 7 + block/blk-iocost.c | 3 - block/blk-map.c | 508 ++++++++++++++++++++ block/blk-mq.c | 59 ++- block/blk-settings.c | 36 -- block/blk-zoned.c | 2 +- block/blk.h | 138 +++++- block/genhd.c | 219 +++++++-- block/ioctl.c | 1 + block/opal_proto.h | 1 + block/partitions/Makefile | 3 +- block/partitions/acorn.c | 1 - block/partitions/acorn.h | 15 - block/partitions/aix.c | 1 - block/partitions/aix.h | 2 - block/partitions/amiga.c | 11 +- block/partitions/amiga.h | 7 - block/partitions/atari.h | 1 - block/partitions/check.c | 198 -------- block/partitions/check.h | 41 +- block/partitions/cmdline.c | 1 - block/partitions/cmdline.h | 3 - block/{partition-generic.c => partitions/core.c} | 319 +++++++------ block/partitions/efi.h | 3 - block/partitions/ibm.c | 1 - block/partitions/ibm.h | 2 - block/partitions/karma.c | 3 +- block/partitions/karma.h | 9 - block/partitions/ldm.c | 6 +- block/partitions/ldm.h | 2 - block/partitions/mac.h | 1 - block/partitions/msdos.c | 172 ++++++- block/partitions/msdos.h | 9 - block/partitions/osf.c | 2 +- block/partitions/osf.h | 8 - block/partitions/sgi.c | 7 +- block/partitions/sgi.h | 9 - block/partitions/sun.c | 9 +- block/partitions/sun.h | 9 - block/partitions/sysv68.c | 1 - block/partitions/sysv68.h | 2 - block/partitions/ultrix.c | 1 - block/partitions/ultrix.h | 6 - block/sed-opal.c | 2 +- drivers/block/brd.c | 4 +- drivers/block/drbd/drbd_main.c | 3 +- drivers/block/drbd/drbd_receiver.c | 1 + drivers/block/drbd/drbd_worker.c | 1 + drivers/block/null_blk_main.c | 106 +++-- drivers/block/pktcdvd.c | 15 +- drivers/block/ps3vram.c | 3 +- drivers/block/rsxx/dev.c | 3 +- drivers/block/umem.c | 4 +- drivers/block/virtio_blk.c | 5 +- drivers/block/xen-blkfront.c | 6 +- drivers/block/zram/zram_drv.c | 5 +- drivers/lightnvm/core.c | 3 +- drivers/md/bcache/request.c | 7 +- drivers/md/bcache/request.h | 3 + drivers/md/bcache/super.c | 11 +- drivers/md/dm.c | 10 +- drivers/md/md.c | 9 +- drivers/nvdimm/blk.c | 3 +- drivers/nvdimm/btt.c | 3 +- drivers/nvdimm/pmem.c | 3 +- drivers/nvme/host/core.c | 2 +- drivers/nvme/host/multipath.c | 3 +- drivers/nvme/target/admin-cmd.c | 1 + drivers/s390/block/dcssblk.c | 4 +- drivers/s390/block/xpram.c | 4 +- drivers/scsi/BusLogic.c | 8 +- drivers/scsi/aacraid/linit.c | 7 +- drivers/scsi/aic7xxx/aic79xx_osm.c | 13 +- drivers/scsi/aic7xxx/aic7xxx_osm.c | 13 +- drivers/scsi/arcmsr/arcmsr_hba.c | 13 +- drivers/scsi/megaraid.c | 13 +- drivers/scsi/scsi_debug.c | 5 +- drivers/scsi/scsicam.c | 186 ++++---- drivers/scsi/sd.c | 3 +- fs/block_dev.c | 20 +- fs/buffer.c | 43 -- fs/ext4/super.c | 8 +- fs/ext4/sysfs.c | 1 + fs/f2fs/f2fs.h | 1 + fs/f2fs/super.c | 1 + fs/internal.h | 1 - fs/reiserfs/journal.c | 5 +- include/linux/bio.h | 15 +- include/linux/blk-mq.h | 7 +- include/linux/blkdev.h | 14 +- include/linux/fs.h | 1 - include/linux/genhd.h | 521 +++----------------- include/linux/iocontext.h | 1 + include/linux/msdos_partition.h | 50 ++ include/linux/part_stat.h | 115 +++++ include/linux/raid/detect.h | 3 + include/scsi/scsicam.h | 7 +- init/do_mounts.c | 12 +- 111 files changed, 1949 insertions(+), 2038 deletions(-) delete mode 100644 block/partitions/acorn.h delete mode 100644 block/partitions/aix.h delete mode 100644 block/partitions/amiga.h delete mode 100644 block/partitions/check.c delete mode 100644 block/partitions/cmdline.h rename block/{partition-generic.c => partitions/core.c} (72%) delete mode 100644 block/partitions/ibm.h delete mode 100644 block/partitions/karma.h delete mode 100644 block/partitions/msdos.h delete mode 100644 block/partitions/osf.h delete mode 100644 block/partitions/sgi.h delete mode 100644 block/partitions/sun.h delete mode 100644 block/partitions/sysv68.h delete mode 100644 block/partitions/ultrix.h create mode 100644 include/linux/msdos_partition.h create mode 100644 include/linux/part_stat.h create mode 100644 include/linux/raid/detect.h diff --cc block/genhd.c index 9c2e13ce0d19,14cf395a1479..06b642b23a07 --- a/block/genhd.c diff --cc include/linux/genhd.h index 07dc91835b98,85b9e253cd39..39fc9fe709fc --- a/include/linux/genhd.h