diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/btrfs/btrfs_inode.h | 2 | ||||
-rw-r--r-- | fs/btrfs/extent_io.c | 2 | ||||
-rw-r--r-- | fs/btrfs/inode.c | 6 | ||||
-rw-r--r-- | fs/btrfs/ioctl.c | 2 | ||||
-rw-r--r-- | fs/buffer.c | 2 | ||||
-rw-r--r-- | fs/ext4/resize.c | 2 | ||||
-rw-r--r-- | fs/gfs2/glock.c | 8 | ||||
-rw-r--r-- | fs/gfs2/glops.c | 2 | ||||
-rw-r--r-- | fs/gfs2/lock_dlm.c | 4 | ||||
-rw-r--r-- | fs/gfs2/recovery.c | 2 | ||||
-rw-r--r-- | fs/gfs2/sys.c | 4 | ||||
-rw-r--r-- | fs/jbd2/commit.c | 6 | ||||
-rw-r--r-- | fs/nfs/dir.c | 12 | ||||
-rw-r--r-- | fs/nfs/inode.c | 2 | ||||
-rw-r--r-- | fs/nfs/nfs4filelayoutdev.c | 4 | ||||
-rw-r--r-- | fs/nfs/nfs4state.c | 4 | ||||
-rw-r--r-- | fs/nfs/pagelist.c | 6 | ||||
-rw-r--r-- | fs/nfs/pnfs.c | 2 | ||||
-rw-r--r-- | fs/nfs/pnfs.h | 2 | ||||
-rw-r--r-- | fs/nfs/write.c | 4 | ||||
-rw-r--r-- | fs/ubifs/lpt_commit.c | 4 | ||||
-rw-r--r-- | fs/ubifs/tnc_commit.c | 4 |
22 files changed, 43 insertions, 43 deletions
diff --git a/fs/btrfs/btrfs_inode.h b/fs/btrfs/btrfs_inode.h index c9a24444ec9a..2256e9cceec5 100644 --- a/fs/btrfs/btrfs_inode.h +++ b/fs/btrfs/btrfs_inode.h | |||
@@ -279,7 +279,7 @@ static inline void btrfs_inode_block_unlocked_dio(struct inode *inode) | |||
279 | 279 | ||
280 | static inline void btrfs_inode_resume_unlocked_dio(struct inode *inode) | 280 | static inline void btrfs_inode_resume_unlocked_dio(struct inode *inode) |
281 | { | 281 | { |
282 | smp_mb__before_clear_bit(); | 282 | smp_mb__before_atomic(); |
283 | clear_bit(BTRFS_INODE_READDIO_NEED_LOCK, | 283 | clear_bit(BTRFS_INODE_READDIO_NEED_LOCK, |
284 | &BTRFS_I(inode)->runtime_flags); | 284 | &BTRFS_I(inode)->runtime_flags); |
285 | } | 285 | } |
diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c index 3955e475ceec..f29a54e454d4 100644 --- a/fs/btrfs/extent_io.c +++ b/fs/btrfs/extent_io.c | |||
@@ -3458,7 +3458,7 @@ static int lock_extent_buffer_for_io(struct extent_buffer *eb, | |||
3458 | static void end_extent_buffer_writeback(struct extent_buffer *eb) | 3458 | static void end_extent_buffer_writeback(struct extent_buffer *eb) |
3459 | { | 3459 | { |
3460 | clear_bit(EXTENT_BUFFER_WRITEBACK, &eb->bflags); | 3460 | clear_bit(EXTENT_BUFFER_WRITEBACK, &eb->bflags); |
3461 | smp_mb__after_clear_bit(); | 3461 | smp_mb__after_atomic(); |
3462 | wake_up_bit(&eb->bflags, EXTENT_BUFFER_WRITEBACK); | 3462 | wake_up_bit(&eb->bflags, EXTENT_BUFFER_WRITEBACK); |
3463 | } | 3463 | } |
3464 | 3464 | ||
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 5f805bc944fa..5a3b8371772e 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c | |||
@@ -7126,7 +7126,7 @@ static void btrfs_end_dio_bio(struct bio *bio, int err) | |||
7126 | * before atomic variable goto zero, we must make sure | 7126 | * before atomic variable goto zero, we must make sure |
7127 | * dip->errors is perceived to be set. | 7127 | * dip->errors is perceived to be set. |
7128 | */ | 7128 | */ |
7129 | smp_mb__before_atomic_dec(); | 7129 | smp_mb__before_atomic(); |
7130 | } | 7130 | } |
7131 | 7131 | ||
7132 | /* if there are more bios still pending for this dio, just exit */ | 7132 | /* if there are more bios still pending for this dio, just exit */ |
@@ -7306,7 +7306,7 @@ out_err: | |||
7306 | * before atomic variable goto zero, we must | 7306 | * before atomic variable goto zero, we must |
7307 | * make sure dip->errors is perceived to be set. | 7307 | * make sure dip->errors is perceived to be set. |
7308 | */ | 7308 | */ |
7309 | smp_mb__before_atomic_dec(); | 7309 | smp_mb__before_atomic(); |
7310 | if (atomic_dec_and_test(&dip->pending_bios)) | 7310 | if (atomic_dec_and_test(&dip->pending_bios)) |
7311 | bio_io_error(dip->orig_bio); | 7311 | bio_io_error(dip->orig_bio); |
7312 | 7312 | ||
@@ -7449,7 +7449,7 @@ static ssize_t btrfs_direct_IO(int rw, struct kiocb *iocb, | |||
7449 | return 0; | 7449 | return 0; |
7450 | 7450 | ||
7451 | atomic_inc(&inode->i_dio_count); | 7451 | atomic_inc(&inode->i_dio_count); |
7452 | smp_mb__after_atomic_inc(); | 7452 | smp_mb__after_atomic(); |
7453 | 7453 | ||
7454 | /* | 7454 | /* |
7455 | * The generic stuff only does filemap_write_and_wait_range, which | 7455 | * The generic stuff only does filemap_write_and_wait_range, which |
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c index e79ff6b90cb7..f45040a4bb76 100644 --- a/fs/btrfs/ioctl.c +++ b/fs/btrfs/ioctl.c | |||
@@ -642,7 +642,7 @@ static int create_snapshot(struct btrfs_root *root, struct inode *dir, | |||
642 | return -EINVAL; | 642 | return -EINVAL; |
643 | 643 | ||
644 | atomic_inc(&root->will_be_snapshoted); | 644 | atomic_inc(&root->will_be_snapshoted); |
645 | smp_mb__after_atomic_inc(); | 645 | smp_mb__after_atomic(); |
646 | btrfs_wait_nocow_write(root); | 646 | btrfs_wait_nocow_write(root); |
647 | 647 | ||
648 | ret = btrfs_start_delalloc_inodes(root, 0); | 648 | ret = btrfs_start_delalloc_inodes(root, 0); |
diff --git a/fs/buffer.c b/fs/buffer.c index 9ddb9fc7d923..6a8110c03a47 100644 --- a/fs/buffer.c +++ b/fs/buffer.c | |||
@@ -77,7 +77,7 @@ EXPORT_SYMBOL(__lock_buffer); | |||
77 | void unlock_buffer(struct buffer_head *bh) | 77 | void unlock_buffer(struct buffer_head *bh) |
78 | { | 78 | { |
79 | clear_bit_unlock(BH_Lock, &bh->b_state); | 79 | clear_bit_unlock(BH_Lock, &bh->b_state); |
80 | smp_mb__after_clear_bit(); | 80 | smp_mb__after_atomic(); |
81 | wake_up_bit(&bh->b_state, BH_Lock); | 81 | wake_up_bit(&bh->b_state, BH_Lock); |
82 | } | 82 | } |
83 | EXPORT_SYMBOL(unlock_buffer); | 83 | EXPORT_SYMBOL(unlock_buffer); |
diff --git a/fs/ext4/resize.c b/fs/ext4/resize.c index f3b84cd9de56..08b3c116915b 100644 --- a/fs/ext4/resize.c +++ b/fs/ext4/resize.c | |||
@@ -42,7 +42,7 @@ int ext4_resize_begin(struct super_block *sb) | |||
42 | void ext4_resize_end(struct super_block *sb) | 42 | void ext4_resize_end(struct super_block *sb) |
43 | { | 43 | { |
44 | clear_bit_unlock(EXT4_RESIZING, &EXT4_SB(sb)->s_resize_flags); | 44 | clear_bit_unlock(EXT4_RESIZING, &EXT4_SB(sb)->s_resize_flags); |
45 | smp_mb__after_clear_bit(); | 45 | smp_mb__after_atomic(); |
46 | } | 46 | } |
47 | 47 | ||
48 | static ext4_group_t ext4_meta_bg_first_group(struct super_block *sb, | 48 | static ext4_group_t ext4_meta_bg_first_group(struct super_block *sb, |
diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c index aec7f73832f0..c355f7320e44 100644 --- a/fs/gfs2/glock.c +++ b/fs/gfs2/glock.c | |||
@@ -277,7 +277,7 @@ static inline int may_grant(const struct gfs2_glock *gl, const struct gfs2_holde | |||
277 | static void gfs2_holder_wake(struct gfs2_holder *gh) | 277 | static void gfs2_holder_wake(struct gfs2_holder *gh) |
278 | { | 278 | { |
279 | clear_bit(HIF_WAIT, &gh->gh_iflags); | 279 | clear_bit(HIF_WAIT, &gh->gh_iflags); |
280 | smp_mb__after_clear_bit(); | 280 | smp_mb__after_atomic(); |
281 | wake_up_bit(&gh->gh_iflags, HIF_WAIT); | 281 | wake_up_bit(&gh->gh_iflags, HIF_WAIT); |
282 | } | 282 | } |
283 | 283 | ||
@@ -411,7 +411,7 @@ static void gfs2_demote_wake(struct gfs2_glock *gl) | |||
411 | { | 411 | { |
412 | gl->gl_demote_state = LM_ST_EXCLUSIVE; | 412 | gl->gl_demote_state = LM_ST_EXCLUSIVE; |
413 | clear_bit(GLF_DEMOTE, &gl->gl_flags); | 413 | clear_bit(GLF_DEMOTE, &gl->gl_flags); |
414 | smp_mb__after_clear_bit(); | 414 | smp_mb__after_atomic(); |
415 | wake_up_bit(&gl->gl_flags, GLF_DEMOTE); | 415 | wake_up_bit(&gl->gl_flags, GLF_DEMOTE); |
416 | } | 416 | } |
417 | 417 | ||
@@ -620,7 +620,7 @@ out: | |||
620 | 620 | ||
621 | out_sched: | 621 | out_sched: |
622 | clear_bit(GLF_LOCK, &gl->gl_flags); | 622 | clear_bit(GLF_LOCK, &gl->gl_flags); |
623 | smp_mb__after_clear_bit(); | 623 | smp_mb__after_atomic(); |
624 | gl->gl_lockref.count++; | 624 | gl->gl_lockref.count++; |
625 | if (queue_delayed_work(glock_workqueue, &gl->gl_work, 0) == 0) | 625 | if (queue_delayed_work(glock_workqueue, &gl->gl_work, 0) == 0) |
626 | gl->gl_lockref.count--; | 626 | gl->gl_lockref.count--; |
@@ -628,7 +628,7 @@ out_sched: | |||
628 | 628 | ||
629 | out_unlock: | 629 | out_unlock: |
630 | clear_bit(GLF_LOCK, &gl->gl_flags); | 630 | clear_bit(GLF_LOCK, &gl->gl_flags); |
631 | smp_mb__after_clear_bit(); | 631 | smp_mb__after_atomic(); |
632 | return; | 632 | return; |
633 | } | 633 | } |
634 | 634 | ||
diff --git a/fs/gfs2/glops.c b/fs/gfs2/glops.c index 54b66809e818..74d9a3dbf16f 100644 --- a/fs/gfs2/glops.c +++ b/fs/gfs2/glops.c | |||
@@ -221,7 +221,7 @@ static void inode_go_sync(struct gfs2_glock *gl) | |||
221 | * Writeback of the data mapping may cause the dirty flag to be set | 221 | * Writeback of the data mapping may cause the dirty flag to be set |
222 | * so we have to clear it again here. | 222 | * so we have to clear it again here. |
223 | */ | 223 | */ |
224 | smp_mb__before_clear_bit(); | 224 | smp_mb__before_atomic(); |
225 | clear_bit(GLF_DIRTY, &gl->gl_flags); | 225 | clear_bit(GLF_DIRTY, &gl->gl_flags); |
226 | } | 226 | } |
227 | 227 | ||
diff --git a/fs/gfs2/lock_dlm.c b/fs/gfs2/lock_dlm.c index c1eb555dc588..91f274de1246 100644 --- a/fs/gfs2/lock_dlm.c +++ b/fs/gfs2/lock_dlm.c | |||
@@ -1134,7 +1134,7 @@ static void gdlm_recover_done(void *arg, struct dlm_slot *slots, int num_slots, | |||
1134 | queue_delayed_work(gfs2_control_wq, &sdp->sd_control_work, 0); | 1134 | queue_delayed_work(gfs2_control_wq, &sdp->sd_control_work, 0); |
1135 | 1135 | ||
1136 | clear_bit(DFL_DLM_RECOVERY, &ls->ls_recover_flags); | 1136 | clear_bit(DFL_DLM_RECOVERY, &ls->ls_recover_flags); |
1137 | smp_mb__after_clear_bit(); | 1137 | smp_mb__after_atomic(); |
1138 | wake_up_bit(&ls->ls_recover_flags, DFL_DLM_RECOVERY); | 1138 | wake_up_bit(&ls->ls_recover_flags, DFL_DLM_RECOVERY); |
1139 | spin_unlock(&ls->ls_recover_spin); | 1139 | spin_unlock(&ls->ls_recover_spin); |
1140 | } | 1140 | } |
@@ -1271,7 +1271,7 @@ static int gdlm_mount(struct gfs2_sbd *sdp, const char *table) | |||
1271 | 1271 | ||
1272 | ls->ls_first = !!test_bit(DFL_FIRST_MOUNT, &ls->ls_recover_flags); | 1272 | ls->ls_first = !!test_bit(DFL_FIRST_MOUNT, &ls->ls_recover_flags); |
1273 | clear_bit(SDF_NOJOURNALID, &sdp->sd_flags); | 1273 | clear_bit(SDF_NOJOURNALID, &sdp->sd_flags); |
1274 | smp_mb__after_clear_bit(); | 1274 | smp_mb__after_atomic(); |
1275 | wake_up_bit(&sdp->sd_flags, SDF_NOJOURNALID); | 1275 | wake_up_bit(&sdp->sd_flags, SDF_NOJOURNALID); |
1276 | return 0; | 1276 | return 0; |
1277 | 1277 | ||
diff --git a/fs/gfs2/recovery.c b/fs/gfs2/recovery.c index 7ad4094d68c0..fe7a56fb6084 100644 --- a/fs/gfs2/recovery.c +++ b/fs/gfs2/recovery.c | |||
@@ -587,7 +587,7 @@ fail: | |||
587 | gfs2_recovery_done(sdp, jd->jd_jid, LM_RD_GAVEUP); | 587 | gfs2_recovery_done(sdp, jd->jd_jid, LM_RD_GAVEUP); |
588 | done: | 588 | done: |
589 | clear_bit(JDF_RECOVERY, &jd->jd_flags); | 589 | clear_bit(JDF_RECOVERY, &jd->jd_flags); |
590 | smp_mb__after_clear_bit(); | 590 | smp_mb__after_atomic(); |
591 | wake_up_bit(&jd->jd_flags, JDF_RECOVERY); | 591 | wake_up_bit(&jd->jd_flags, JDF_RECOVERY); |
592 | } | 592 | } |
593 | 593 | ||
diff --git a/fs/gfs2/sys.c b/fs/gfs2/sys.c index de25d5577e5d..529d9a9eb897 100644 --- a/fs/gfs2/sys.c +++ b/fs/gfs2/sys.c | |||
@@ -333,7 +333,7 @@ static ssize_t block_store(struct gfs2_sbd *sdp, const char *buf, size_t len) | |||
333 | set_bit(DFL_BLOCK_LOCKS, &ls->ls_recover_flags); | 333 | set_bit(DFL_BLOCK_LOCKS, &ls->ls_recover_flags); |
334 | else if (val == 0) { | 334 | else if (val == 0) { |
335 | clear_bit(DFL_BLOCK_LOCKS, &ls->ls_recover_flags); | 335 | clear_bit(DFL_BLOCK_LOCKS, &ls->ls_recover_flags); |
336 | smp_mb__after_clear_bit(); | 336 | smp_mb__after_atomic(); |
337 | gfs2_glock_thaw(sdp); | 337 | gfs2_glock_thaw(sdp); |
338 | } else { | 338 | } else { |
339 | ret = -EINVAL; | 339 | ret = -EINVAL; |
@@ -482,7 +482,7 @@ static ssize_t jid_store(struct gfs2_sbd *sdp, const char *buf, size_t len) | |||
482 | rv = jid = -EINVAL; | 482 | rv = jid = -EINVAL; |
483 | sdp->sd_lockstruct.ls_jid = jid; | 483 | sdp->sd_lockstruct.ls_jid = jid; |
484 | clear_bit(SDF_NOJOURNALID, &sdp->sd_flags); | 484 | clear_bit(SDF_NOJOURNALID, &sdp->sd_flags); |
485 | smp_mb__after_clear_bit(); | 485 | smp_mb__after_atomic(); |
486 | wake_up_bit(&sdp->sd_flags, SDF_NOJOURNALID); | 486 | wake_up_bit(&sdp->sd_flags, SDF_NOJOURNALID); |
487 | out: | 487 | out: |
488 | spin_unlock(&sdp->sd_jindex_spin); | 488 | spin_unlock(&sdp->sd_jindex_spin); |
diff --git a/fs/jbd2/commit.c b/fs/jbd2/commit.c index 5f26139a165a..6fac74349856 100644 --- a/fs/jbd2/commit.c +++ b/fs/jbd2/commit.c | |||
@@ -43,7 +43,7 @@ static void journal_end_buffer_io_sync(struct buffer_head *bh, int uptodate) | |||
43 | clear_buffer_uptodate(bh); | 43 | clear_buffer_uptodate(bh); |
44 | if (orig_bh) { | 44 | if (orig_bh) { |
45 | clear_bit_unlock(BH_Shadow, &orig_bh->b_state); | 45 | clear_bit_unlock(BH_Shadow, &orig_bh->b_state); |
46 | smp_mb__after_clear_bit(); | 46 | smp_mb__after_atomic(); |
47 | wake_up_bit(&orig_bh->b_state, BH_Shadow); | 47 | wake_up_bit(&orig_bh->b_state, BH_Shadow); |
48 | } | 48 | } |
49 | unlock_buffer(bh); | 49 | unlock_buffer(bh); |
@@ -239,7 +239,7 @@ static int journal_submit_data_buffers(journal_t *journal, | |||
239 | spin_lock(&journal->j_list_lock); | 239 | spin_lock(&journal->j_list_lock); |
240 | J_ASSERT(jinode->i_transaction == commit_transaction); | 240 | J_ASSERT(jinode->i_transaction == commit_transaction); |
241 | clear_bit(__JI_COMMIT_RUNNING, &jinode->i_flags); | 241 | clear_bit(__JI_COMMIT_RUNNING, &jinode->i_flags); |
242 | smp_mb__after_clear_bit(); | 242 | smp_mb__after_atomic(); |
243 | wake_up_bit(&jinode->i_flags, __JI_COMMIT_RUNNING); | 243 | wake_up_bit(&jinode->i_flags, __JI_COMMIT_RUNNING); |
244 | } | 244 | } |
245 | spin_unlock(&journal->j_list_lock); | 245 | spin_unlock(&journal->j_list_lock); |
@@ -277,7 +277,7 @@ static int journal_finish_inode_data_buffers(journal_t *journal, | |||
277 | } | 277 | } |
278 | spin_lock(&journal->j_list_lock); | 278 | spin_lock(&journal->j_list_lock); |
279 | clear_bit(__JI_COMMIT_RUNNING, &jinode->i_flags); | 279 | clear_bit(__JI_COMMIT_RUNNING, &jinode->i_flags); |
280 | smp_mb__after_clear_bit(); | 280 | smp_mb__after_atomic(); |
281 | wake_up_bit(&jinode->i_flags, __JI_COMMIT_RUNNING); | 281 | wake_up_bit(&jinode->i_flags, __JI_COMMIT_RUNNING); |
282 | } | 282 | } |
283 | 283 | ||
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c index d9f3d067cd15..4a3d4ef76127 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c | |||
@@ -2032,9 +2032,9 @@ static void nfs_access_free_entry(struct nfs_access_entry *entry) | |||
2032 | { | 2032 | { |
2033 | put_rpccred(entry->cred); | 2033 | put_rpccred(entry->cred); |
2034 | kfree(entry); | 2034 | kfree(entry); |
2035 | smp_mb__before_atomic_dec(); | 2035 | smp_mb__before_atomic(); |
2036 | atomic_long_dec(&nfs_access_nr_entries); | 2036 | atomic_long_dec(&nfs_access_nr_entries); |
2037 | smp_mb__after_atomic_dec(); | 2037 | smp_mb__after_atomic(); |
2038 | } | 2038 | } |
2039 | 2039 | ||
2040 | static void nfs_access_free_list(struct list_head *head) | 2040 | static void nfs_access_free_list(struct list_head *head) |
@@ -2082,9 +2082,9 @@ nfs_access_cache_scan(struct shrinker *shrink, struct shrink_control *sc) | |||
2082 | else { | 2082 | else { |
2083 | remove_lru_entry: | 2083 | remove_lru_entry: |
2084 | list_del_init(&nfsi->access_cache_inode_lru); | 2084 | list_del_init(&nfsi->access_cache_inode_lru); |
2085 | smp_mb__before_clear_bit(); | 2085 | smp_mb__before_atomic(); |
2086 | clear_bit(NFS_INO_ACL_LRU_SET, &nfsi->flags); | 2086 | clear_bit(NFS_INO_ACL_LRU_SET, &nfsi->flags); |
2087 | smp_mb__after_clear_bit(); | 2087 | smp_mb__after_atomic(); |
2088 | } | 2088 | } |
2089 | spin_unlock(&inode->i_lock); | 2089 | spin_unlock(&inode->i_lock); |
2090 | } | 2090 | } |
@@ -2232,9 +2232,9 @@ void nfs_access_add_cache(struct inode *inode, struct nfs_access_entry *set) | |||
2232 | nfs_access_add_rbtree(inode, cache); | 2232 | nfs_access_add_rbtree(inode, cache); |
2233 | 2233 | ||
2234 | /* Update accounting */ | 2234 | /* Update accounting */ |
2235 | smp_mb__before_atomic_inc(); | 2235 | smp_mb__before_atomic(); |
2236 | atomic_long_inc(&nfs_access_nr_entries); | 2236 | atomic_long_inc(&nfs_access_nr_entries); |
2237 | smp_mb__after_atomic_inc(); | 2237 | smp_mb__after_atomic(); |
2238 | 2238 | ||
2239 | /* Add inode to global LRU list */ | 2239 | /* Add inode to global LRU list */ |
2240 | if (!test_bit(NFS_INO_ACL_LRU_SET, &NFS_I(inode)->flags)) { | 2240 | if (!test_bit(NFS_INO_ACL_LRU_SET, &NFS_I(inode)->flags)) { |
diff --git a/fs/nfs/inode.c b/fs/nfs/inode.c index 0c438973f3c8..e6f7398d2b3c 100644 --- a/fs/nfs/inode.c +++ b/fs/nfs/inode.c | |||
@@ -1085,7 +1085,7 @@ int nfs_revalidate_mapping(struct inode *inode, struct address_space *mapping) | |||
1085 | trace_nfs_invalidate_mapping_exit(inode, ret); | 1085 | trace_nfs_invalidate_mapping_exit(inode, ret); |
1086 | 1086 | ||
1087 | clear_bit_unlock(NFS_INO_INVALIDATING, bitlock); | 1087 | clear_bit_unlock(NFS_INO_INVALIDATING, bitlock); |
1088 | smp_mb__after_clear_bit(); | 1088 | smp_mb__after_atomic(); |
1089 | wake_up_bit(bitlock, NFS_INO_INVALIDATING); | 1089 | wake_up_bit(bitlock, NFS_INO_INVALIDATING); |
1090 | out: | 1090 | out: |
1091 | return ret; | 1091 | return ret; |
diff --git a/fs/nfs/nfs4filelayoutdev.c b/fs/nfs/nfs4filelayoutdev.c index efac602edb37..b9c61efe9660 100644 --- a/fs/nfs/nfs4filelayoutdev.c +++ b/fs/nfs/nfs4filelayoutdev.c | |||
@@ -789,9 +789,9 @@ static void nfs4_wait_ds_connect(struct nfs4_pnfs_ds *ds) | |||
789 | 789 | ||
790 | static void nfs4_clear_ds_conn_bit(struct nfs4_pnfs_ds *ds) | 790 | static void nfs4_clear_ds_conn_bit(struct nfs4_pnfs_ds *ds) |
791 | { | 791 | { |
792 | smp_mb__before_clear_bit(); | 792 | smp_mb__before_atomic(); |
793 | clear_bit(NFS4DS_CONNECTING, &ds->ds_state); | 793 | clear_bit(NFS4DS_CONNECTING, &ds->ds_state); |
794 | smp_mb__after_clear_bit(); | 794 | smp_mb__after_atomic(); |
795 | wake_up_bit(&ds->ds_state, NFS4DS_CONNECTING); | 795 | wake_up_bit(&ds->ds_state, NFS4DS_CONNECTING); |
796 | } | 796 | } |
797 | 797 | ||
diff --git a/fs/nfs/nfs4state.c b/fs/nfs/nfs4state.c index 2349518eef2c..c0583b9bef71 100644 --- a/fs/nfs/nfs4state.c +++ b/fs/nfs/nfs4state.c | |||
@@ -1140,9 +1140,9 @@ static int nfs4_run_state_manager(void *); | |||
1140 | 1140 | ||
1141 | static void nfs4_clear_state_manager_bit(struct nfs_client *clp) | 1141 | static void nfs4_clear_state_manager_bit(struct nfs_client *clp) |
1142 | { | 1142 | { |
1143 | smp_mb__before_clear_bit(); | 1143 | smp_mb__before_atomic(); |
1144 | clear_bit(NFS4CLNT_MANAGER_RUNNING, &clp->cl_state); | 1144 | clear_bit(NFS4CLNT_MANAGER_RUNNING, &clp->cl_state); |
1145 | smp_mb__after_clear_bit(); | 1145 | smp_mb__after_atomic(); |
1146 | wake_up_bit(&clp->cl_state, NFS4CLNT_MANAGER_RUNNING); | 1146 | wake_up_bit(&clp->cl_state, NFS4CLNT_MANAGER_RUNNING); |
1147 | rpc_wake_up(&clp->cl_rpcwaitq); | 1147 | rpc_wake_up(&clp->cl_rpcwaitq); |
1148 | } | 1148 | } |
diff --git a/fs/nfs/pagelist.c b/fs/nfs/pagelist.c index 2ffebf2081ce..03ed984ab4d8 100644 --- a/fs/nfs/pagelist.c +++ b/fs/nfs/pagelist.c | |||
@@ -95,7 +95,7 @@ nfs_iocounter_dec(struct nfs_io_counter *c) | |||
95 | { | 95 | { |
96 | if (atomic_dec_and_test(&c->io_count)) { | 96 | if (atomic_dec_and_test(&c->io_count)) { |
97 | clear_bit(NFS_IO_INPROGRESS, &c->flags); | 97 | clear_bit(NFS_IO_INPROGRESS, &c->flags); |
98 | smp_mb__after_clear_bit(); | 98 | smp_mb__after_atomic(); |
99 | wake_up_bit(&c->flags, NFS_IO_INPROGRESS); | 99 | wake_up_bit(&c->flags, NFS_IO_INPROGRESS); |
100 | } | 100 | } |
101 | } | 101 | } |
@@ -193,9 +193,9 @@ void nfs_unlock_request(struct nfs_page *req) | |||
193 | printk(KERN_ERR "NFS: Invalid unlock attempted\n"); | 193 | printk(KERN_ERR "NFS: Invalid unlock attempted\n"); |
194 | BUG(); | 194 | BUG(); |
195 | } | 195 | } |
196 | smp_mb__before_clear_bit(); | 196 | smp_mb__before_atomic(); |
197 | clear_bit(PG_BUSY, &req->wb_flags); | 197 | clear_bit(PG_BUSY, &req->wb_flags); |
198 | smp_mb__after_clear_bit(); | 198 | smp_mb__after_atomic(); |
199 | wake_up_bit(&req->wb_flags, PG_BUSY); | 199 | wake_up_bit(&req->wb_flags, PG_BUSY); |
200 | } | 200 | } |
201 | 201 | ||
diff --git a/fs/nfs/pnfs.c b/fs/nfs/pnfs.c index cb53d450ae32..fd9536e494bc 100644 --- a/fs/nfs/pnfs.c +++ b/fs/nfs/pnfs.c | |||
@@ -1810,7 +1810,7 @@ static void pnfs_clear_layoutcommitting(struct inode *inode) | |||
1810 | unsigned long *bitlock = &NFS_I(inode)->flags; | 1810 | unsigned long *bitlock = &NFS_I(inode)->flags; |
1811 | 1811 | ||
1812 | clear_bit_unlock(NFS_INO_LAYOUTCOMMITTING, bitlock); | 1812 | clear_bit_unlock(NFS_INO_LAYOUTCOMMITTING, bitlock); |
1813 | smp_mb__after_clear_bit(); | 1813 | smp_mb__after_atomic(); |
1814 | wake_up_bit(bitlock, NFS_INO_LAYOUTCOMMITTING); | 1814 | wake_up_bit(bitlock, NFS_INO_LAYOUTCOMMITTING); |
1815 | } | 1815 | } |
1816 | 1816 | ||
diff --git a/fs/nfs/pnfs.h b/fs/nfs/pnfs.h index 023793909778..c3058a076596 100644 --- a/fs/nfs/pnfs.h +++ b/fs/nfs/pnfs.h | |||
@@ -275,7 +275,7 @@ pnfs_get_lseg(struct pnfs_layout_segment *lseg) | |||
275 | { | 275 | { |
276 | if (lseg) { | 276 | if (lseg) { |
277 | atomic_inc(&lseg->pls_refcount); | 277 | atomic_inc(&lseg->pls_refcount); |
278 | smp_mb__after_atomic_inc(); | 278 | smp_mb__after_atomic(); |
279 | } | 279 | } |
280 | return lseg; | 280 | return lseg; |
281 | } | 281 | } |
diff --git a/fs/nfs/write.c b/fs/nfs/write.c index 9a3b6a4cd6b9..ffb9459f180b 100644 --- a/fs/nfs/write.c +++ b/fs/nfs/write.c | |||
@@ -405,7 +405,7 @@ int nfs_writepages(struct address_space *mapping, struct writeback_control *wbc) | |||
405 | nfs_pageio_complete(&pgio); | 405 | nfs_pageio_complete(&pgio); |
406 | 406 | ||
407 | clear_bit_unlock(NFS_INO_FLUSHING, bitlock); | 407 | clear_bit_unlock(NFS_INO_FLUSHING, bitlock); |
408 | smp_mb__after_clear_bit(); | 408 | smp_mb__after_atomic(); |
409 | wake_up_bit(bitlock, NFS_INO_FLUSHING); | 409 | wake_up_bit(bitlock, NFS_INO_FLUSHING); |
410 | 410 | ||
411 | if (err < 0) | 411 | if (err < 0) |
@@ -1458,7 +1458,7 @@ static int nfs_commit_set_lock(struct nfs_inode *nfsi, int may_wait) | |||
1458 | static void nfs_commit_clear_lock(struct nfs_inode *nfsi) | 1458 | static void nfs_commit_clear_lock(struct nfs_inode *nfsi) |
1459 | { | 1459 | { |
1460 | clear_bit(NFS_INO_COMMIT, &nfsi->flags); | 1460 | clear_bit(NFS_INO_COMMIT, &nfsi->flags); |
1461 | smp_mb__after_clear_bit(); | 1461 | smp_mb__after_atomic(); |
1462 | wake_up_bit(&nfsi->flags, NFS_INO_COMMIT); | 1462 | wake_up_bit(&nfsi->flags, NFS_INO_COMMIT); |
1463 | } | 1463 | } |
1464 | 1464 | ||
diff --git a/fs/ubifs/lpt_commit.c b/fs/ubifs/lpt_commit.c index 4b826abb1528..45d4e96a6bac 100644 --- a/fs/ubifs/lpt_commit.c +++ b/fs/ubifs/lpt_commit.c | |||
@@ -460,9 +460,9 @@ static int write_cnodes(struct ubifs_info *c) | |||
460 | * important. | 460 | * important. |
461 | */ | 461 | */ |
462 | clear_bit(DIRTY_CNODE, &cnode->flags); | 462 | clear_bit(DIRTY_CNODE, &cnode->flags); |
463 | smp_mb__before_clear_bit(); | 463 | smp_mb__before_atomic(); |
464 | clear_bit(COW_CNODE, &cnode->flags); | 464 | clear_bit(COW_CNODE, &cnode->flags); |
465 | smp_mb__after_clear_bit(); | 465 | smp_mb__after_atomic(); |
466 | offs += len; | 466 | offs += len; |
467 | dbg_chk_lpt_sz(c, 1, len); | 467 | dbg_chk_lpt_sz(c, 1, len); |
468 | cnode = cnode->cnext; | 468 | cnode = cnode->cnext; |
diff --git a/fs/ubifs/tnc_commit.c b/fs/ubifs/tnc_commit.c index 52a6559275c4..3600994f8411 100644 --- a/fs/ubifs/tnc_commit.c +++ b/fs/ubifs/tnc_commit.c | |||
@@ -895,9 +895,9 @@ static int write_index(struct ubifs_info *c) | |||
895 | * the reason for the second barrier. | 895 | * the reason for the second barrier. |
896 | */ | 896 | */ |
897 | clear_bit(DIRTY_ZNODE, &znode->flags); | 897 | clear_bit(DIRTY_ZNODE, &znode->flags); |
898 | smp_mb__before_clear_bit(); | 898 | smp_mb__before_atomic(); |
899 | clear_bit(COW_ZNODE, &znode->flags); | 899 | clear_bit(COW_ZNODE, &znode->flags); |
900 | smp_mb__after_clear_bit(); | 900 | smp_mb__after_atomic(); |
901 | 901 | ||
902 | /* | 902 | /* |
903 | * We have marked the znode as clean but have not updated the | 903 | * We have marked the znode as clean but have not updated the |