diff options
author | Josef Bacik <jbacik@fusionio.com> | 2012-10-15 19:33:54 +0200 |
---|---|---|
committer | Chris Mason <chris.mason@fusionio.com> | 2012-12-17 02:46:25 +0100 |
commit | ed7b63eb8afd0bb8d978a23184d70c105b54aa26 (patch) | |
tree | 63a4dd9371818be8f98f272d5ea12fd41715c1bb /fs | |
parent | Btrfs: move checks in set_page_dirty under DEBUG (diff) | |
download | linux-ed7b63eb8afd0bb8d978a23184d70c105b54aa26.tar.xz linux-ed7b63eb8afd0bb8d978a23184d70c105b54aa26.zip |
Btrfs: only clear dirty on the buffer if it is marked as dirty
No reason to set the path blocking or loop through all of the pages if the
extent buffer isn't actually marked dirty. Thanks,
Signed-off-by: Josef Bacik <jbacik@fusionio.com>
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/btrfs/disk-io.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c index b8f7f04a6407..65f03670a952 100644 --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c @@ -1142,11 +1142,11 @@ void clean_tree_block(struct btrfs_trans_handle *trans, struct btrfs_root *root, root->fs_info->dirty_metadata_bytes); } spin_unlock(&root->fs_info->delalloc_lock); - } - /* ugh, clear_extent_buffer_dirty needs to lock the page */ - btrfs_set_lock_blocking(buf); - clear_extent_buffer_dirty(buf); + /* ugh, clear_extent_buffer_dirty needs to lock the page */ + btrfs_set_lock_blocking(buf); + clear_extent_buffer_dirty(buf); + } } } |