[GIT PULL] Block fixes for 4.4-rc2

From: Jens Axboe
Date: Tue Nov 24 2015 - 11:32:19 EST


Hi Linus,

A round of fixes/updates for the current series. This looks a little
bigger than it is, but that's mainly because we pushed the lightnvm
enabled null_blk change out of the merge window so it could be updated a
bit. The rest of the volume is also mostly lightnvm. In particular:

- Lightnvm. Various fixes, additions, updates from Matias and Javier, as
well as from Wenwei Tao.

- NVMe:
- Fix for potential arithmetic overflow from Keith.
- Also from Keith, ensure that we reap pending completions from
a completion queue before deleting it. Fixes kernel crashes
when resetting a device with IO pending.
- Various little lightnvm related tweaks from Matias.

- Fixup flushes to go through the IO scheduler, for the cases where a
flush is not required. Fixes a case in CFQ where we would be idling
and not see this request, hence not break the idling. From Jan Kara.

- Use list_{first,prev,next} in elevator.c for cleaner code. From Gelian
Tang.

- Fix for a warning trigger on btrfs and raid on single queue blk-mq
devices, where we would flush plug callbacks with preemption disabled.
From me.

- A mac partition validation fix from Kees Cook.

- Two merge fixes from Ming, marked stable. A third part is adding a new
warning so we'll notice this quicker in the future, if we screw up the
accounting.

- Cleanup of thread name/creation in mtip32xx from Rasmus Villemoes.


Please pull the turkey fixes!


git://git.kernel.dk/linux-block.git for-linus


----------------------------------------------------------------
Geliang Tang (1):
elevator: use list_{first,prev,next}_entry

Jan Kara (1):
blk-flush: Queue through IO scheduler when flush not required

Javier Gonzalez (2):
lightnvm: keep track of block counts
lightnvm: add free and bad lun info to show luns

Javier González (1):
lightnvm: cleanup queue before target removal

Jens Axboe (1):
blk-mq: fix calling unplug callbacks with preempt disabled

Kees Cook (1):
mac: validate mac_partition is within sector

Keith Busch (2):
NVMe: Fix possible arithmetic overflow for max segments
NVMe: reap completion entries when deleting queue

Matias Bjørling (17):
MAINTAINERS: Add linux-block list to LightNVM for patches
lightnvm: change max_phys_sect to uint
lightnvm: update bad block table format
lightnvm: update alignments for identify command
lightnvm: expose mccap in identify command
lightnvm: remove unused attrs in nvm_id structs
lightnvm: check for NAND flash and its type
lightnvm: prematurely activate nvm_dev
lightnvm: prevent double free on init error
lightnvm: remove linear and device addr modes
nvme: missing ppaf copy
nvme: remove reserved double word
null_blk: register as a LightNVM device
null_blk: use ppa_cache pool
null_blk: use device addressing mode
null_blk: do not del gendisk with lightnvm
lightnvm: missing free on init error

Ming Lei (3):
block: fix segment split
blk-merge: fix blk_bio_segment_split
blk-merge: warn if figured out segment number is bigger than nr_phys_segments

Rasmus Villemoes (1):
mtip32xx: use formatting capability of kthread_create_on_node

Wenwei Tao (2):
lightnvm: wrong return value and redundant free
nvme: lightnvm: use admin queues for admin cmds

Documentation/block/null_blk.txt | 3 +
MAINTAINERS | 1 +
block/blk-flush.c | 2 +-
block/blk-merge.c | 32 +++++-
block/blk-mq.c | 14 ++-
block/noop-iosched.c | 10 +-
block/partitions/mac.c | 10 +-
drivers/Makefile | 2 +-
drivers/block/mtip32xx/mtip32xx.c | 6 +-
drivers/block/null_blk.c | 207 ++++++++++++++++++++++++++++++++++++--
drivers/lightnvm/core.c | 51 +++++-----
drivers/lightnvm/gennvm.c | 73 ++++++++++----
drivers/lightnvm/gennvm.h | 2 +
drivers/lightnvm/rrpc.c | 32 +++++-
drivers/nvme/host/lightnvm.c | 139 +++++++++++++++++++------
drivers/nvme/host/pci.c | 9 +-
include/linux/lightnvm.h | 176 ++++++++------------------------
17 files changed, 525 insertions(+), 244 deletions(-)

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