]> asedeno.scripts.mit.edu Git - linux.git/commit
lightnvm: pblk: fix rqd.error return value in pblk_blk_erase_sync
authorMatias Bjørling <mb@lightnvm.io>
Tue, 9 Oct 2018 11:11:33 +0000 (13:11 +0200)
committerJens Axboe <axboe@kernel.dk>
Tue, 9 Oct 2018 14:25:06 +0000 (08:25 -0600)
commit4b5d56edb8fc565c5db029aecaea598eadfba7f6
treea9dc2c04dc72290f55e01a55c1946a73195dabc5
parentd7b6801673f95e5f72efd3ffba1bcbb606883049
lightnvm: pblk: fix rqd.error return value in pblk_blk_erase_sync

rqd.error is masked by the return value of pblk_submit_io_sync.
The rqd structure is then passed on to the end_io function, which
assumes that any error should lead to a chunk being marked
offline/bad. Since the pblk_submit_io_sync can fail before the
command is issued to the device, the error value maybe not correspond
to a media failure, leading to chunks being immaturely retired.

Also, the pblk_blk_erase_sync function prints an error message in case
the erase fails. Since the caller prints an error message by itself,
remove the error message in this function.

Signed-off-by: Matias Bjørling <mb@lightnvm.io>
Reviewed-by: Javier González <javier@cnexlabs.com>
Reviewed-by: Hans Holmberg <hans.holmberg@cnexlabs.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/lightnvm/pblk-core.c