diff --git a/drivers/md/dm.c b/drivers/md/dm.c index d52b987e60a5..94018613b43b 100644 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c @@ -2230,6 +2230,8 @@ static int dm_wait_for_completion(struct mapped_device *md, long task_state) } finish_wait(&md->wait, &wait); + smp_rmb(); /* paired with atomic_dec_return in end_io_acct */ + return r; }