[GIT PULL] Block driver changes for 4.6-rc

From: Jens Axboe
Date: Fri Mar 18 2016 - 13:33:18 EST

Hi Linus,

This is the block driver pull request for this merge window. It sits on
top of for-4.6/core, that was just sent out.

With the amount of changes we ended up having after the merge window in
4.5, there's a non trivial amount of merging for this branch for NVMe.
Even with resolving them correctly, you need to know that NVMe requires
a symbol export (nvme_kill_queues()) in the merged result that doesn't
exist in either branch, its only needed when they are merged together.
I'm providing you two options here:

1) Pull for-4.6/drivers and do the merges yourself. This is the original

2) Pull for-4.6/drivers-merged, which is the above branch, but with v4.5
merged into it and the merges resolved cleanly.

Diffstat below shown for the regular branch, for-4.6/drivers. This pull
request contains:

- A set of fixes for lightnvm. One from Alan, fixing an overflow, and
the rest from the usual suspects, Javier and Matias.

- A set of fixes for nbd from Markus and Dan, and a fixup from Arnd for
correct usage of the signed 64-bit divider.

- A set of bug fixes for the Micron mtip32xx, from Asai.

- A fix for the brd discard handling from Bart.

- Update the maintainers entry for cciss, since that hardware has
transferred ownership.

- 3 bug fixes for bcache from Eric Wheeler.

- Set of fixes for xen-blk{back,front} from Jan and Konrad.

- Removal of the cpqarray driver. It has been disabled in Kconfig since
2013, and we were initially scheduled to remove it in 3.15.

- Various updates and fixes for NVMe, with the most important being:

- Removal of the per-device NVMe thread, replacing that with a
watchdog timer instead. From Christoph.

- Exposing the namespace WWID through sysfs, from Keith.

- Set of cleanups from Ming Lin.

- Logging the controller device name instead of the underlying
PCI device name, from Sagi.

- And a bunch of fixes and optimizations from the usual suspects
in this area.

Please pull!

git://git.kernel.dk/linux-block.git for-4.6/drivers

Alan (1):
lightnvm: fix up nonsensical configure overrun checking

Arnd Bergmann (1):
nbd: use correct div_s64 helper

Asai Thambi SP (9):
mtip32xx: Fix broken service thread handling
mtip32xx: Remove unwanted code from taskfile error handler
mtip32xx: Print exact time when an internal command is interrupted
mtip32xx: Avoid issuing standby immediate cmd during FTL rebuild
mtip32xx: Fix for rmmod crash when drive is in FTL rebuild
mtip32xx: Handle safe removal during IO
mtip32xx: Handle FTL rebuild failure state during device initialization
mtip32xx: Implement timeout handler
mtip32xx: Cleanup queued requests after surprise removal

Bart Van Assche (1):
brd: Fix discard request processing

Christoph Hellwig (5):
nvme: fix drvdata setup for the nvme device
nvme: use a work item to submit async event requests
nvme: don't poll the CQ from the kthread
nvme: replace the kthread with a per-device watchdog timer
nvme: return the whole CQE through the request passthrough interface

Dan Streetman (1):
nbd: ratelimit error msgs after socket close

Don Brace (1):
cciss: update MAINTAINERS

Eric Wheeler (3):
bcache: fix race of writeback thread starting before complete initialization
bcache: cleaned up error handling around register_cache()
bcache: fix cache_set_flush() NULL pointer dereference on OOM

Jan Beulich (2):
xen-blkfront: rename indirect descriptor parameter
xen-blkback: advertise indirect segment support earlier

Javier González (2):
lightnvm: update closed list outside of intr context
lightnvm: generalize rrpc ppa calculations

Jens Axboe (3):
Merge tag 'nbd-for-4.6' of git://git.pengutronix.de/git/mpa/linux-nbd into for-4.6/drivers
mtip32xx: remove unneeded variable in mtip_cmd_timeout()
cpqarray: remove it from the kernel

Jon Derrick (1):
NVMe: Remove unused sq_head read in completion path

Keith Busch (3):
NVMe: Fix possible queue use after freed
NVMe: Create discard zero quirk white list
NVMe: Expose ns wwid through single sysfs entry

Konrad Rzeszutek Wilk (1):
xen/blback: Fit the important information of the thread in 17 characters

Markus Pargmann (6):
nbd: Fix debugfs error handling
nbd: Remove signal usage
nbd: Timeouts are not user requested disconnects
nbd: Cleanup reset of nbd and bdev after a disconnect
nbd: Move flag parsing to a function
nbd: Create size change events for userspace

Matias Bjørling (3):
lightnvm: fold get bb tbl when using dual/quad plane mode
lightnvm: rename ->nr_pages to ->nr_sects
lightnvm: remove struct nvm_dev->total_blocks

Ming Lin (4):
nvme: move timeout variables to core.c
nvme: split dev_list_lock
nvme: split pci module out of core module
nvme: expose cntlid in sysfs

Sagi Grimberg (2):
nvme: Log the ctrl device name instead of the underlying pci device name
nvme/host: reference the fabric module for each bdev open callout

Valentin Rothberg (1):
drivers:block: cpqarray clean up

Documentation/blockdev/cpqarray.txt | 93 --
drivers/block/Kconfig | 10 -
drivers/block/Makefile | 1 -
drivers/block/brd.c | 2 +-
drivers/block/cpqarray.c | 1820 -----------------------------------
drivers/block/cpqarray.h | 126 ---
drivers/block/ida_cmd.h | 349 -------
drivers/block/ida_ioctl.h | 87 --
drivers/block/mtip32xx/mtip32xx.c | 266 +++--
drivers/block/mtip32xx/mtip32xx.h | 11 +-
drivers/block/nbd.c | 334 +++----
drivers/block/xen-blkback/xenbus.c | 20 +-
drivers/block/xen-blkfront.c | 6 +-
drivers/lightnvm/core.c | 19 +-
drivers/lightnvm/gennvm.c | 7 +-
drivers/lightnvm/rrpc.c | 98 +-
drivers/lightnvm/rrpc.h | 15 +-
drivers/md/bcache/super.c | 46 +-
drivers/nvme/host/Kconfig | 6 +-
drivers/nvme/host/Makefile | 10 +-
drivers/nvme/host/core.c | 165 +++-
drivers/nvme/host/lightnvm.c | 46 +-
drivers/nvme/host/nvme.h | 14 +-
drivers/nvme/host/pci.c | 239 ++---
include/linux/lightnvm.h | 8 +-
26 files changed, 792 insertions(+), 3016 deletions(-)
delete mode 100644 Documentation/blockdev/cpqarray.txt
delete mode 100644 drivers/block/cpqarray.c
delete mode 100644 drivers/block/cpqarray.h
delete mode 100644 drivers/block/ida_cmd.h
delete mode 100644 drivers/block/ida_ioctl.h

Jens Axboe