diff options
author | Chris Mason <chris.mason@oracle.com> | 2007-06-18 09:57:58 -0400 |
---|---|---|
committer | David Woodhouse <dwmw2@hera.kernel.org> | 2007-06-18 09:57:58 -0400 |
commit | 8c2383c3dd2cb5bb39598ce4fa97154bc591020a (patch) | |
tree | 68a9c491bfa19d572dca6b41e5dde7f05165c270 /fs/btrfs/disk-io.c | |
parent | 9ebefb180bad4914a31c4e1748ba187a30e1e990 (diff) |
Subject: Rework btrfs_file_write to only allocate while page locks are held
Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/disk-io.c')
-rw-r--r-- | fs/btrfs/disk-io.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c index 602b63dc76c3..15cc9ec92308 100644 --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c | |||
@@ -541,6 +541,8 @@ int write_ctree_super(struct btrfs_trans_handle *trans, struct btrfs_root | |||
541 | else | 541 | else |
542 | ret = submit_bh(WRITE, bh); | 542 | ret = submit_bh(WRITE, bh); |
543 | if (ret == -EOPNOTSUPP) { | 543 | if (ret == -EOPNOTSUPP) { |
544 | get_bh(bh); | ||
545 | lock_buffer(bh); | ||
544 | set_buffer_uptodate(bh); | 546 | set_buffer_uptodate(bh); |
545 | root->fs_info->do_barriers = 0; | 547 | root->fs_info->do_barriers = 0; |
546 | ret = submit_bh(WRITE, bh); | 548 | ret = submit_bh(WRITE, bh); |