Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux...
[linux-2.6-block.git] / fs / btrfs / inode.c
index 372b2cb2b29703e24e88d9ad8a6ae74df3e8cfa3..7fa5f7fd7bc79259ed5a5e51131cbf6c8d07d919 100644 (file)
@@ -7180,7 +7180,7 @@ static void btrfs_end_dio_bio(struct bio *bio, int err)
                 * before atomic variable goto zero, we must make sure
                 * dip->errors is perceived to be set.
                 */
-               smp_mb__before_atomic_dec();
+               smp_mb__before_atomic();
        }
 
        /* if there are more bios still pending for this dio, just exit */
@@ -7360,7 +7360,7 @@ out_err:
         * before atomic variable goto zero, we must
         * make sure dip->errors is perceived to be set.
         */
-       smp_mb__before_atomic_dec();
+       smp_mb__before_atomic();
        if (atomic_dec_and_test(&dip->pending_bios))
                bio_io_error(dip->orig_bio);
 
@@ -7503,7 +7503,7 @@ static ssize_t btrfs_direct_IO(int rw, struct kiocb *iocb,
                return 0;
 
        atomic_inc(&inode->i_dio_count);
-       smp_mb__after_atomic_inc();
+       smp_mb__after_atomic();
 
        /*
         * The generic stuff only does filemap_write_and_wait_range, which