diff options
author | Milan Broz <mbroz@redhat.com> | 2008-02-07 21:09:49 -0500 |
---|---|---|
committer | Alasdair G Kergon <agk@redhat.com> | 2008-02-07 21:09:49 -0500 |
commit | 7e5c1e830b2310359a4cfbbf89895dde4abd996a (patch) | |
tree | 143d5ff1998b115689347f0346a25b622a888739 | |
parent | df922075f2a55b1ae71a6fe589c1cc1b91381f4f (diff) |
dm: add missing memory barrier to dm_suspend
Add memory barrier to fix atomic_read of pending value.
Signed-off-by: Milan Broz <mbroz@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
-rw-r--r-- | drivers/md/dm.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/md/dm.c b/drivers/md/dm.c index f2d24eb3208c..466a6bf0742f 100644 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c | |||
@@ -1410,6 +1410,7 @@ int dm_suspend(struct mapped_device *md, unsigned suspend_flags) | |||
1410 | while (1) { | 1410 | while (1) { |
1411 | set_current_state(TASK_INTERRUPTIBLE); | 1411 | set_current_state(TASK_INTERRUPTIBLE); |
1412 | 1412 | ||
1413 | smp_mb(); | ||
1413 | if (!atomic_read(&md->pending) || signal_pending(current)) | 1414 | if (!atomic_read(&md->pending) || signal_pending(current)) |
1414 | break; | 1415 | break; |
1415 | 1416 | ||