summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/disk-io.c
diff options
context:
space:
mode:
authorChris Mason2007-05-02 21:53:43 +0200
committerDavid Woodhouse2007-05-02 21:53:43 +0200
commit35b7e476107e3d54f03384e0f2fa3dfd68933353 (patch)
tree51a7e7cffad309b0aa0d3d054d7ecc5b8be72298 /fs/btrfs/disk-io.c
parentBtrfs: directory readahead (diff)
downloadkernel-qcow2-linux-35b7e476107e3d54f03384e0f2fa3dfd68933353.tar.gz
kernel-qcow2-linux-35b7e476107e3d54f03384e0f2fa3dfd68933353.tar.xz
kernel-qcow2-linux-35b7e476107e3d54f03384e0f2fa3dfd68933353.zip
Btrfs: fix page cache memory leak
Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/disk-io.c')
-rw-r--r--fs/btrfs/disk-io.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index 354524adf984..5828a104dfef 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -5,7 +5,7 @@
#include <linux/scatterlist.h>
#include <linux/swap.h>
#include <linux/radix-tree.h>
-#include <linux/file.h>
+#include <linux/writeback.h>
#include "ctree.h"
#include "disk-io.h"
#include "transaction.h"
@@ -694,7 +694,7 @@ static int free_fs_root(struct btrfs_fs_info *fs_info, struct btrfs_root *root)
return 0;
}
-int del_fs_roots(struct btrfs_fs_info *fs_info)
+static int del_fs_roots(struct btrfs_fs_info *fs_info)
{
int ret;
struct btrfs_root *gang[8];
@@ -781,3 +781,7 @@ void btrfs_block_release(struct btrfs_root *root, struct buffer_head *buf)
brelse(buf);
}
+void btrfs_btree_balance_dirty(struct btrfs_root *root)
+{
+ balance_dirty_pages_ratelimited(root->fs_info->btree_inode->i_mapping);
+}