This patchet's main motivation is to account for a corner case in which the read constrains imposed by the device are not respected by pblk. In the process, it also refactors parts of the read ring buffer to simplify creation/deletion operations and improve readability. Note that the checkpatch warnings on missing comments for memory barriers are false positives. The code is also available in the for-4.20/pblk branch in the OCSSD github project. Thanks, Javier Javier González (4): lightnvm: pblk: remove unused function lightnvm: pblk: encapsulate rb pointer operations lightnvm: pblk: move ring buffer alloc/free rb init lightnvm: pblk: guarantee mw_cunits on read buffer drivers/lightnvm/pblk-init.c | 21 +++------ drivers/lightnvm/pblk-rb.c | 100 +++++++++++++++++++----------------------- drivers/lightnvm/pblk-write.c | 7 +-- drivers/lightnvm/pblk.h | 11 ++--- 4 files changed, 57 insertions(+), 82 deletions(-) -- 2.7.4