diff --git a/drivers/md/dm.c b/drivers/md/dm.c index 31d02e91e2be8..d2ee97cd7d14e 100644 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c @@ -2475,6 +2475,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; }