[PATCH 00/18] lightnvm: pblk patches for 4.14

From: Javier GonzÃlez
Date: Wed Sep 06 2017 - 06:52:48 EST


Hi Jens,

Here is the pblk patchset for this window.

The most notable patches are on the read path:
- ("lightnvm: pblk: check lba sanity on read path") uses the lba
stored on the out-of-bound area to verify that the read ppa
corresponds to the lba pointed to by the read bio.
- ("lightnvm: pblk: guarantee line integrity on reads") guarantees
that if a line is being GC'ed and a read comes in the middle, that
line is not being moved into the free list until the read completes.
Otherwise, the line could be reclaimed to be erased and re-written,
thus causing data corruption.

The rest of the patches are are basically bug fixes and refactoring to
improve code readability.

The patches apply on your for-4.14/block, and you can be found at:
https://github.com/OpenChannelSSD/linux/tree/pblk.for-4.14

Thanks,
Javier

Javier GonzÃlez (18):
lightnvm: pblk: improve naming for internal req.
lightnvm: pblk: refactor read lba sanity check
lightnvm: pblk: normalize ppa namings
lightnvm: pblk: check for failed mempool alloc.
lightnvm: pblk: initialize debug stat counter
lightnvm: pblk: use right flag for GC allocation
lightnvm: pblk: use constant for GC parameter
lightnvm: pblk: check lba sanity on read path
lightnvm: pblk: simplify data validity check on GC
lightnvm: pblk: use bio_copy_kern when possible
lightnvm: pblk: refactor read path on GC
lightnvm: pblk: free padded entries in write buffer
lightnvm: pblk: fix write I/O sync stat
lightnvm: pblk: simplify path on REQ_PREFLUSH
lightnvm: pblk: avoid deadlock on low LUN config
lightnvm: pblk: enable 1 LUN configuration
lightnvm: pblk: guarantee line integrity on reads
lightnvm: pblk: remove unnecessary check

drivers/lightnvm/pblk-cache.c | 24 ++--
drivers/lightnvm/pblk-core.c | 187 ++++++++++++++++--------------
drivers/lightnvm/pblk-gc.c | 133 ++++++++++------------
drivers/lightnvm/pblk-init.c | 25 ++++-
drivers/lightnvm/pblk-map.c | 21 ++--
drivers/lightnvm/pblk-rb.c | 14 +--
drivers/lightnvm/pblk-read.c | 237 ++++++++++++++++++++++++++-------------
drivers/lightnvm/pblk-recovery.c | 9 +-
drivers/lightnvm/pblk-rl.c | 6 +
drivers/lightnvm/pblk-write.c | 37 +++---
drivers/lightnvm/pblk.h | 40 +++----
11 files changed, 423 insertions(+), 310 deletions(-)

--
2.7.4