These are 2 patches on the subsystem for 4.15. The first one is a fix on the passtrhough path that enables fail fast, just as it is done on standard nvme passtrough commands.
The second one implements a generic way to send sync. I/O from targets. Trough time, we ended up having _many_ wait_for_completion() constructions to implement sync. I/O, both on pblk and at the subsystem level. One of the main issues - besides code replication - is that we could not benefit from improvements on blk_execute_rq to prevent hangs. This should fix it. Javier González (2): lightnvm: fail fast on passthrough commands lightnvm: implement generic path for sync I/O drivers/lightnvm/core.c | 25 ++++++++----- drivers/lightnvm/pblk-core.c | 78 +++++++++++++--------------------------- drivers/lightnvm/pblk-read.c | 21 ++--------- drivers/lightnvm/pblk-recovery.c | 31 ++-------------- drivers/lightnvm/pblk.h | 42 ++++++++++++++++++++-- drivers/nvme/host/lightnvm.c | 72 ++++++++++++++++++++++++++++--------- include/linux/lightnvm.h | 3 ++ 7 files changed, 145 insertions(+), 127 deletions(-) -- 2.7.4