From: Jens Axboe <axboe@fb.com>
To: <torvalds@linuxfoundation.org>
Cc: <linux-kernel@vger.kernel.org>
Subject: [GIT PULL] Core block changes for 3.18
Date: Sat, 18 Oct 2014 08:46:44 -0600 [thread overview]
Message-ID: <20141018144644.GA31955@kernel.dk> (raw)
Hi Linus,
This is the core block IO pull request for 3.18. Apart from the new and
improve flush machinery for blk-mq, this is all mostly bug fixes and
cleanups.
- blk-mq timeout updates and fixes from Christoph.
- Removal of REQ_END, also from Christoph. We pass it through the
->queue_rq() hook for blk-mq instead, freeing up one of the request
bits. The space was overly tight on 32-bit, so Martin also killed
REQ_KERNEL since it's no longer used.
- blk integrity updates and fixes from Martin and Gu Zheng.
- Update to the flush machinery for blk-mq from Ming Lei. Now we have a
per hardware context flush request, which both cleans up the code
should scale better for flush intensive workloads on blk-mq.
- Improve the error printing, from Rob Elliott.
- Backing device improvements and cleanups from Tejun.
- Fixup of a misplaced rq_complete() tracepoint from Hannes.
- Make blk_get_request() return error pointers, fixing up issues where
we NULL deref when a device goes bad or missing. From Joe Lawrence.
- Prep work for drastically reducing the memory consumption of dm
devices from Junichi Nomura. This allows creating clone bio sets
without preallocating a lot of memory.
- Fix a blk-mq hang on certain combinations of queue depths and hardware
queues from me.
- Limit memory consumption for blk-mq devices for crash dump scenarios
and drivers that use crazy high depths (certain SCSI shared tag
setups). We now just use a single queue and limited depth for that.
Please pull!
git://git.kernel.dk/linux-block.git for-3.18/core
----------------------------------------------------------------
Bart Van Assche (1):
blk-mq: Make bt_clear_tag() easier to read
Christoph Hellwig (8):
blk-mq: remove REQ_END
blk-mq: call blk_mq_start_request from ->queue_rq
blk-mq: rename blk_mq_end_io to blk_mq_end_request
blk-mq: fix and simplify tag iteration for the timeout handler
blk-mq: unshared timeout handler
blk-mq: pass a reserved argument to the timeout handler
block: fix blk_abort_request on blk-mq
scsi: move blk_mq_start_request call earlier
Gu Zheng (1):
bio-integrity: remove the needless fail handle of bip_slab creating
Hannes Reinecke (1):
block: misplaced rq_complete tracepoint
Jens Axboe (6):
bsg: fix potential error pointer dereference
Merge branch 'for-linus' into for-3.18/core
Merge branch 'for-linus' into for-3.18/core
blk-mq: limit memory consumption if a crash dump is active
blk-mq: fix potential hang if rolling wakeup depth is too high
blk-mq: allocate cpumask on the home node
Joe Lawrence (2):
block,scsi: verify return pointer from blk_get_request
block,scsi: fixup blk_get_request dead queue scenarios
Junichi Nomura (2):
block: use bio_clone_fast() in blk_rq_prep_clone()
block: add bioset_create_nobvec()
Martin K. Petersen (15):
block: Get rid of bdev_integrity_enabled()
block: Replace bi_integrity with bi_special
block: Remove integrity tagging functions
block: Remove bip_buf
block: Deprecate the use of the term sector in the context of block integrity
block: Make protection interval calculation generic
block: Clean up the code used to generate and verify integrity metadata
block: Add prefix to block integrity profile flags
block: Add a disk flag to block integrity profile
block: Relocate bio integrity flags
block: Integrity checksum flag
block: Don't merge requests if integrity flags differ
block: Add T10 Protection Information functions
sd: Honor block layer integrity handling flags
block: Remove REQ_KERNEL
Mike Snitzer (1):
block: fix alignment_offset math that assumes io_min is a power-of-2
Ming Lei (13):
blk-mq: remove unnecessary blk_clear_rq_complete()
blk-timeout: fix blk_add_timer
blk-mq: handle failure path for initializing hctx
blk-mq: allocate flush_rq in blk_mq_init_flush()
block: introduce blk_init_flush and its pair
block: move flush initialization to blk_flush_init
block: avoid to use q->flush_rq directly
block: introduce blk_flush_queue to drive flush machinery
block: remove blk_init_flush() and its pair
block: flush: avoid to figure out flush queue unnecessarily
block: introduce 'blk_mq_ctx' parameter to blk_get_flush_queue
blk-mq: support per-distpatch_queue flush machinery
blk-merge: don't compute bi_phys_segments from bi_vcnt for cloned bio
Rasmus Villemoes (1):
block: Replace strnicmp with strncasecmp
Robert Elliott (2):
block: make blk_update_request print prefix match ratelimited prefix
block: include func name in __get_request prints
Tejun Heo (7):
blkcg: remove blkcg->id
block, bdi: an active gendisk always has a request_queue associated with it
bdi: remove unused stuff
bdi: remove bdi->wb_lock locking around bdi->dev clearing in bdi_unregister()
bdi: make backing_dev_info->wb.dwork canceling stricter
bdi: explain the dirty list transferring in bdi_destroy()
bdi: reimplement bdev_inode_switch_bdi()
Documentation/ABI/testing/sysfs-block | 8 +
Documentation/block/data-integrity.txt | 54 +----
block/Kconfig | 1 +
block/Makefile | 4 +-
block/bio-integrity.c | 271 ++++++---------------
block/bio.c | 61 +++--
block/blk-cgroup.c | 2 -
block/blk-cgroup.h | 3 -
block/blk-core.c | 71 +++---
block/blk-flush.c | 147 +++++++----
block/blk-integrity.c | 103 +++++---
block/blk-merge.c | 14 +-
block/blk-mq-tag.c | 55 ++---
block/blk-mq.c | 364 ++++++++++++++--------------
block/blk-mq.h | 3 +-
block/blk-settings.c | 4 +-
block/blk-sysfs.c | 4 +-
block/blk-timeout.c | 15 +-
block/blk.h | 37 ++-
block/bsg.c | 9 +-
block/cfq-iosched.c | 10 +-
block/compat_ioctl.c | 4 -
block/ioctl.c | 4 -
block/partitions/mac.c | 8 +-
block/scsi_ioctl.c | 11 +-
block/t10-pi.c | 197 +++++++++++++++
drivers/block/mtip32xx/mtip32xx.c | 9 +-
drivers/block/null_blk.c | 7 +-
drivers/block/paride/pd.c | 2 +
drivers/block/pktcdvd.c | 2 +
drivers/block/sx8.c | 2 +-
drivers/block/virtio_blk.c | 8 +-
drivers/cdrom/cdrom.c | 4 +-
drivers/ide/ide-park.c | 2 +-
drivers/scsi/Kconfig | 1 -
drivers/scsi/device_handler/scsi_dh_alua.c | 2 +-
drivers/scsi/device_handler/scsi_dh_emc.c | 2 +-
drivers/scsi/device_handler/scsi_dh_hp_sw.c | 4 +-
drivers/scsi/device_handler/scsi_dh_rdac.c | 2 +-
drivers/scsi/osd/osd_initiator.c | 4 +-
drivers/scsi/osst.c | 2 +-
drivers/scsi/scsi_error.c | 2 +
drivers/scsi/scsi_lib.c | 24 +-
drivers/scsi/sd.c | 73 +++---
drivers/scsi/sd.h | 66 ++++-
drivers/scsi/sd_dif.c | 353 ++++-----------------------
drivers/scsi/sg.c | 4 +-
drivers/scsi/st.c | 2 +-
drivers/target/target_core_pscsi.c | 2 +-
fs/block_dev.c | 34 +--
fs/btrfs/disk-io.c | 2 +-
fs/nfs/direct.c | 12 +-
fs/nfs/file.c | 4 +-
fs/xfs/xfs_buf.c | 2 -
include/linux/backing-dev.h | 4 -
include/linux/bio.h | 65 +++--
include/linux/blk-mq.h | 22 +-
include/linux/blk_types.h | 18 +-
include/linux/blkdev.h | 71 +++---
include/linux/crc-t10dif.h | 5 +-
include/linux/fs.h | 2 -
include/linux/nfs_fs.h | 4 +-
include/linux/t10-pi.h | 22 ++
include/scsi/scsi_cmnd.h | 36 ++-
include/scsi/scsi_tcq.h | 2 +-
mm/backing-dev.c | 40 ++-
66 files changed, 1213 insertions(+), 1175 deletions(-)
create mode 100644 block/t10-pi.c
create mode 100644 include/linux/t10-pi.h
--
Jens Axboe
reply other threads:[~2014-10-18 14:46 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=20141018144644.GA31955@kernel.dk \
--to=axboe@fb.com \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@linuxfoundation.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.