diff options
| author | Ingo Molnar <mingo@kernel.org> | 2014-06-12 07:46:25 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2014-06-12 07:46:37 -0400 |
| commit | 535560d841b2d54f31280e05e9c6ffd19da0c4e7 (patch) | |
| tree | 5320502c072284813f3d3d42412bd73e26130863 /fs/btrfs | |
| parent | f602d0632755be4f7eddfdd6c0af13216790177b (diff) | |
| parent | 3cf2f34e1a3d4d5ff209d087925cf950e52f4805 (diff) | |
Merge commit '3cf2f34' into sched/core, to fix build error
Fix this dependency on the locking tree's smp_mb*() API changes:
kernel/sched/idle.c:247:3: error: implicit declaration of function ‘smp_mb__after_atomic’ [-Werror=implicit-function-declaration]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'fs/btrfs')
| -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 |
4 files changed, 6 insertions, 6 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 2f6d7b13b5bd..3f52bb7a58d2 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); |
