[GIT PULL] Core block IO bits for 4.2

From: Jens Axboe
Date: Thu Jun 25 2015 - 10:37:38 EST


Hi Linus,

This is the core block pull request for 4.2. Nothing really major in
here, mostly a collection of smaller optimizations and cleanups, mixed
with various fixes. In more detail, this pull request contains:

- Addition of policy specific data to blkcg for block cgroups. From
Arianna Avanzini.

- Various cleanups around command types from Christoph.

- Cleanup of the suspend block I/O path from Christoph.

- Plugging updates from Shaohua and Jeff Moyer, for blk-mq.

- Eliminating atomic inc/dec of both remaining IO count and reference
count in a bio. From me.

- Fixes for SG gap and chunk size support for data-less (discards) IO,
so we can merge these better. From me.

- Small restructuring of blk-mq shared tag support, freeing drivers from
iterating hardware queues. From Keith Busch.

- A few cfq-iosched tweaks, from Tahsin Erdogan and me. Makes the IOPS
mode the default for non-rotational storage.


Please pull!


git://git.kernel.dk/linux-block.git for-4.2/core


----------------------------------------------------------------
Arianna Avanzini (1):
block, cgroup: implement policy-specific per-blkcg data

Christoph Hellwig (11):
block: rename REQ_TYPE_SPECIAL to REQ_TYPE_DRV_PRIV
block: move REQ_TYPE_ATA_TASKFILE and REQ_TYPE_ATA_PC to ide.h
block: move REQ_TYPE_SENSE to the ide driver
block: remove REQ_TYPE_PM_SHUTDOWN
block: move PM request support to IDE
nbd: stop using req->cmd
block: use an atomic_t for mq_freeze_depth
block: remove BIO_EOPNOTSUPP
block: remove unused BIO_RW_BLOCK and BIO_EOF flags
suspend: simplify block I/O handling
block, dm: don't copy bios for request clones

Jarod Wilson (1):
block: export blkdev_reread_part() and __blkdev_reread_part()

Jeff Moyer (1):
blk-mq: fix plugging in blk_sq_make_request

Jens Axboe (10):
bio: skip atomic inc/dec of ->bi_remaining for non-chains
bio: skip atomic inc/dec of ->bi_cnt for most use cases
block: collapse bio bit space
block: only honor SG gap prevention for merges that contain data
block: don't honor chunk sizes for data-less IO
block: add blk_set_queue_dying() to blkdev.h
cfq-iosched: fix the setting of IOPS mode on SSDs
cfq-iosched: move group scheduling functions under ifdef
cfq-iosched: fix sysfs oops when attempting to read unconfigured weights
cfq-iosched: fix other locations where blkcg_to_cfqgd() can return NULL

Julia Lawall (1):
block: fix returnvar.cocci warnings

Keith Busch (1):
blk-mq: Shared tag enhancements

Mike Snitzer (1):
block: remove management of bi_remaining when restoring original bi_end_io

Ming Lei (1):
block: replace trylock with mutex_lock in blkdev_reread_part()

Shaohua Li (5):
blk: clean up plug
sched: always use blk_schedule_flush_plug in io_schedule_out
blk-mq: avoid re-initialize request which is failed in direct dispatch
blk-mq: do limited block plug for multiple queue case
blk-mq: make plug work for mutiple disks and queues

Steven Rostedt (1):
blktrace: Add blktrace.c to BLOCK LAYER in MAINTAINERS file

Tahsin Erdogan (1):
block: Make CFQ default to IOPS mode on SSDs

MAINTAINERS | 1 +
block/bio-integrity.c | 4 +-
block/bio.c | 77 +++++++++++--------
block/blk-cgroup.c | 92 ++++++++++++++++++++---
block/blk-cgroup.h | 40 ++++++++--
block/blk-core.c | 136 +++++++++-------------------------
block/blk-exec.c | 10 ---
block/blk-merge.c | 3 +-
block/blk-mq-tag.c | 38 ++++++++++
block/blk-mq-tag.h | 1 +
block/blk-mq.c | 160 +++++++++++++++++++++++++---------------
block/blk.h | 5 +-
block/bounce.c | 3 -
block/cfq-iosched.c | 125 +++++++++++++++++++++++++------
block/elevator.c | 2 +
block/ioctl.c | 37 ++++++++--
drivers/block/nbd.c | 50 ++++++-------
drivers/block/paride/pd.c | 4 +-
drivers/block/sx8.c | 4 +-
drivers/block/virtio_blk.c | 6 +-
drivers/ide/ide-atapi.c | 10 +--
drivers/ide/ide-cd.c | 10 +--
drivers/ide/ide-cd_ioctl.c | 2 +-
drivers/ide/ide-devsets.c | 2 +-
drivers/ide/ide-eh.c | 4 +-
drivers/ide/ide-floppy.c | 8 +-
drivers/ide/ide-io.c | 12 +--
drivers/ide/ide-ioctls.c | 2 +-
drivers/ide/ide-park.c | 4 +-
drivers/ide/ide-pm.c | 56 ++++++++++----
drivers/ide/ide-tape.c | 6 +-
drivers/ide/ide-taskfile.c | 2 +-
drivers/md/bcache/io.c | 2 +-
drivers/md/bcache/request.c | 2 +-
drivers/md/dm-cache-target.c | 6 --
drivers/md/dm-raid1.c | 2 -
drivers/md/dm-snap.c | 1 -
drivers/md/dm-table.c | 25 ++++---
drivers/md/dm-thin.c | 9 +--
drivers/md/dm-verity.c | 2 +-
drivers/md/dm.c | 171 ++++++++++---------------------------------
drivers/md/dm.h | 5 +-
fs/btrfs/disk-io.c | 13 +---
fs/btrfs/extent_io.c | 2 -
fs/btrfs/volumes.c | 18 ++---
fs/btrfs/volumes.h | 2 -
fs/buffer.c | 13 +---
fs/ext4/page-io.c | 1 -
fs/nilfs2/segbuf.c | 12 ---
fs/xfs/xfs_aops.c | 1 -
include/linux/bio.h | 17 ++++-
include/linux/blk-mq.h | 4 +
include/linux/blk_types.h | 25 ++++---
include/linux/blkdev.h | 45 ++----------
include/linux/elevator.h | 2 +
include/linux/fs.h | 3 +
include/linux/ide.h | 27 +++++++
include/linux/swap.h | 1 -
include/uapi/linux/nbd.h | 2 -
kernel/power/Makefile | 3 +-
kernel/power/block_io.c | 103 --------------------------
kernel/power/power.h | 9 ---
kernel/power/swap.c | 159 ++++++++++++++++++++++++++++++----------
kernel/sched/core.c | 5 +-
mm/page_io.c | 2 +-
65 files changed, 853 insertions(+), 757 deletions(-)
delete mode 100644 kernel/power/block_io.c

--
Jens Axboe

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/