summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/file.c
diff options
context:
space:
mode:
authorLinus Torvalds2012-01-11 01:59:59 +0100
committerLinus Torvalds2012-01-11 01:59:59 +0100
commit001a541ea9163ace5e8243ee0e907ad80a4c0ec2 (patch)
treea76225046369c440de93739add9823f5ea060245 /fs/btrfs/file.c
parentMerge branch 'akpm' (aka "Andrew's patch-bomb") (diff)
parentwriteback: move MIN_WRITEBACK_PAGES to fs-writeback.c (diff)
downloadkernel-qcow2-linux-001a541ea9163ace5e8243ee0e907ad80a4c0ec2.tar.gz
kernel-qcow2-linux-001a541ea9163ace5e8243ee0e907ad80a4c0ec2.tar.xz
kernel-qcow2-linux-001a541ea9163ace5e8243ee0e907ad80a4c0ec2.zip
Merge branch 'writeback-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/linux
* 'writeback-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/linux: writeback: move MIN_WRITEBACK_PAGES to fs-writeback.c writeback: balanced_rate cannot exceed write bandwidth writeback: do strict bdi dirty_exceeded writeback: avoid tiny dirty poll intervals writeback: max, min and target dirty pause time writeback: dirty ratelimit - think time compensation btrfs: fix dirtied pages accounting on sub-page writes writeback: fix dirtied pages accounting on redirty writeback: fix dirtied pages accounting on sub-page writes writeback: charge leaked page dirties to active tasks writeback: Include all dirty inodes in background writeback
Diffstat (limited to 'fs/btrfs/file.c')
-rw-r--r--fs/btrfs/file.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
index 20375e6691c3..034d98503229 100644
--- a/fs/btrfs/file.c
+++ b/fs/btrfs/file.c
@@ -1136,7 +1136,8 @@ again:
GFP_NOFS);
}
for (i = 0; i < num_pages; i++) {
- clear_page_dirty_for_io(pages[i]);
+ if (clear_page_dirty_for_io(pages[i]))
+ account_page_redirty(pages[i]);
set_page_extent_mapped(pages[i]);
WARN_ON(!PageLocked(pages[i]));
}