| From | Greg Kroah-Hartman <> | Subject | [PATCH 4.4 023/112] dm: return correct error code in dm_resume()s retry loop | Date | Wed, 26 Oct 2016 14:22:06 +0200 |
| |
4.4-stable review patch. If anyone has any objections, please let me know.
------------------
From: Minfei Huang <mnghuan@gmail.com>
commit 8dc23658b7aaa8b6b0609c81c8ad75e98b612801 upstream.
dm_resume() will return success (0) rather than -EINVAL if !dm_suspended_md() upon retry within dm_resume().
Reset the error code at the start of dm_resume()'s retry loop. Also, remove a useless assignment at the end of dm_resume().
Fixes: ffcc393641 ("dm: enhance internal suspend and resume interface") Signed-off-by: Minfei Huang <mnghuan@gmail.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
--- drivers/md/dm.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)
--- a/drivers/md/dm.c +++ b/drivers/md/dm.c @@ -3250,10 +3250,11 @@ static int __dm_resume(struct mapped_dev int dm_resume(struct mapped_device *md) { - int r = -EINVAL; + int r; struct dm_table *map = NULL; retry: + r = -EINVAL; mutex_lock_nested(&md->suspend_lock, SINGLE_DEPTH_NESTING); if (!dm_suspended_md(md)) @@ -3277,8 +3278,6 @@ retry: goto out; clear_bit(DMF_SUSPENDED, &md->flags); - - r = 0; out: mutex_unlock(&md->suspend_lock);
|