dm: return correct error code in dm_resume()'s retry loop
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>
This commit is contained in:
parent
90be7f1538
commit
bf74a108c6
@ -3250,10 +3250,11 @@ static int __dm_resume(struct mapped_device *md, struct dm_table *map)
|
||||
|
||||
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);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user