Btrfs: properly set new buffers for new blocks up to date
Signed-off-by: Chris Mason <chris.mason@oracle.com>
This commit is contained in:
committed by
David Woodhouse
parent
d571976292
commit
df2ce34c88
@@ -10,8 +10,13 @@ static int check_tree_block(struct btrfs_root *root, struct buffer_head *buf)
|
|||||||
if (buf->b_blocknr != btrfs_header_blocknr(&node->header))
|
if (buf->b_blocknr != btrfs_header_blocknr(&node->header))
|
||||||
BUG();
|
BUG();
|
||||||
if (root->node && btrfs_header_parentid(&node->header) !=
|
if (root->node && btrfs_header_parentid(&node->header) !=
|
||||||
btrfs_header_parentid(btrfs_buffer_header(root->node)))
|
btrfs_header_parentid(btrfs_buffer_header(root->node))) {
|
||||||
BUG();
|
printk("block %Lu parentids don't match buf %Lu, root %Lu\n",
|
||||||
|
buf->b_blocknr,
|
||||||
|
btrfs_header_parentid(&node->header),
|
||||||
|
btrfs_header_parentid(btrfs_buffer_header(root->node)));
|
||||||
|
WARN_ON(1);
|
||||||
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -467,7 +467,7 @@ struct buffer_head *btrfs_alloc_free_block(struct btrfs_trans_handle *trans,
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
buf = find_tree_block(root, ins.objectid);
|
buf = find_tree_block(root, ins.objectid);
|
||||||
dirty_tree_block(trans, root, buf);
|
set_buffer_uptodate(buf);
|
||||||
return buf;
|
return buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -473,7 +473,10 @@ static int btrfs_sync_fs(struct super_block *sb, int wait)
|
|||||||
struct btrfs_trans_handle *trans;
|
struct btrfs_trans_handle *trans;
|
||||||
struct btrfs_root *root;
|
struct btrfs_root *root;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
sb->s_dirt = 0;
|
sb->s_dirt = 0;
|
||||||
|
return 0;
|
||||||
|
|
||||||
root = btrfs_sb(sb);
|
root = btrfs_sb(sb);
|
||||||
trans = btrfs_start_transaction(root, 1);
|
trans = btrfs_start_transaction(root, 1);
|
||||||
ret = btrfs_commit_transaction(trans, root);
|
ret = btrfs_commit_transaction(trans, root);
|
||||||
|
Reference in New Issue
Block a user