2015-12-03 15:56:38

by Jens Axboe

[permalink] [raw]
Subject: [GIT PULL] Block fixes for 4.4-rc

Hi Linus,

A collection of fixes from this series. The most important here is a
regression fix for an issue that some folks would hit in blk-merge.c,
and the NVMe queue depth limit for the screwed up Apple "nvme"
controller. In more detail, this pull request contains:

- A set of fixes for null_blk, including a fix for a few corner cases
where we could hang the device. From Arianna and Paolo.

- lightnvm:

- A build improvement from Keith.
- Update the qemu pci id detection from Matias.
- Error handling fixes for leaks and other little fixes from
Sudip and Wenwei.

- Fix from Eric where BLKRRPART would not return EBUSY for whole device
mounts, only when partitions were mounted.

- Fix from Jan Kara, where EOF O_DIRECT reads would return negatively.

- Remove check for rq_mergeable() when checking limits for cloned
requests. Check doesn't make any sense. It's assuming that since
NOMERGE is set on the request that we don't have to recalculate limits
since the request didn't change, but that's not true if the request
has been redirected. From Hannes.

- Correctly get the bio front segment value set for single segment
bio's, fixing a BUG() in blk-merge. From Ming.


Please pull!


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


----------------------------------------------------------------
Arianna Avanzini (2):
null_blk: guarantee device restart in all irq modes
null_blk: change type of completion_nsec to unsigned long

Eric Sandeen (1):
Return EBUSY from BLKRRPART for mounted whole-dev fs

Hannes Reinecke (1):
block: Always check queue limits for cloned requests

Jan Kara (1):
direct-io: Fix negative return from dio read beyond eof

Keith Busch (1):
lightnvm: Simplify config when disabled

Matias Bj?rling (2):
lightnvm: refactor and change vendor id for qemu
lightnvm: unconverted ppa returned in get_bb_tbl

Ming Lei (1):
blk-merge: fix computing bio->bi_seg_front_size in case of single segment

Paolo Valente (1):
null_blk: set a separate timer for each command

Stephan G?nther (1):
nvme: temporary fix for Apple controller reset

Sudip Mukherjee (1):
lightnvm: fix ioctl memory leaks

Wenwei Tao (3):
lightnvm: free memory when gennvm register fails
lightnvm: do device max sectors boundary check first
lightnvm: missing nvm_lock acquire

block/blk-core.c | 21 ++++------
block/blk-merge.c | 3 ++
block/partition-generic.c | 2 +-
drivers/block/null_blk.c | 94 ++++++++++++++++----------------------------
drivers/lightnvm/core.c | 94 ++++++++++++++++++++++++++------------------
drivers/lightnvm/gennvm.c | 18 +++++----
drivers/nvme/host/Makefile | 3 +-
drivers/nvme/host/lightnvm.c | 28 ++++++-------
drivers/nvme/host/nvme.h | 14 +++++++
drivers/nvme/host/pci.c | 12 ++++++
fs/direct-io.c | 10 ++++-
include/linux/blkdev.h | 1 -
include/linux/lightnvm.h | 2 +-
13 files changed, 160 insertions(+), 142 deletions(-)

--
Jens Axboe