lightnvm: pblk: remove I/O dependency on write path
authorJavier González <javier@cnexlabs.com>
Fri, 13 Oct 2017 12:46:25 +0000 (14:46 +0200)
committerJens Axboe <axboe@kernel.dk>
Fri, 13 Oct 2017 14:34:57 +0000 (08:34 -0600)
commit1e82123da6a4c6019ef03bcd47e4b3dc18dd136e
treecb631249f72b69c72d2abba3cd1a69c005c8da86
parent0f9248cf1e22333b2a0458540aafb1ad3b2b3337
lightnvm: pblk: remove I/O dependency on write path

pblk schedules user I/O, metadata I/O and erases on the write path in
order to minimize collisions at the media level. Until now, there has
been a dependency between user and metadata I/Os that could lead to a
deadlock as both take the per-LUN semaphore to schedule submission.

This path removes this dependency and guarantees forward progress at a
per I/O granurality.

Signed-off-by: Javier González <javier@cnexlabs.com>
Signed-off-by: Matias Bjørling <m@bjorling.me>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/lightnvm/pblk-write.c