diff options
Diffstat (limited to 'fs/btrfs/file.c')
-rw-r--r-- | fs/btrfs/file.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c index 9dd2c5c23b56..ba624ae16e61 100644 --- a/fs/btrfs/file.c +++ b/fs/btrfs/file.c | |||
@@ -767,7 +767,8 @@ static ssize_t btrfs_file_write(struct file *file, const char __user *buf, | |||
767 | num_written += write_bytes; | 767 | num_written += write_bytes; |
768 | 768 | ||
769 | balance_dirty_pages_ratelimited_nr(inode->i_mapping, num_pages); | 769 | balance_dirty_pages_ratelimited_nr(inode->i_mapping, num_pages); |
770 | btrfs_btree_balance_dirty(root, 1); | 770 | if (num_pages < (root->leafsize >> PAGE_CACHE_SHIFT) + 1) |
771 | btrfs_btree_balance_dirty(root, 1); | ||
771 | cond_resched(); | 772 | cond_resched(); |
772 | } | 773 | } |
773 | mutex_unlock(&inode->i_mutex); | 774 | mutex_unlock(&inode->i_mutex); |