diff options
| author | Chris Mason <chris.mason@fusionio.com> | 2012-07-25 19:17:39 -0400 | 
|---|---|---|
| committer | Chris Mason <chris.mason@fusionio.com> | 2012-07-25 19:19:10 -0400 | 
| commit | 113c1cb530e10bcada93d88ffaa6b521aae2d251 (patch) | |
| tree | e41776281314eb8fdc6b07e1533491e5f9ec21af /fs/btrfs/disk-io.c | |
| parent | cd1cfc49153ba2bef247e500d8bd4d135193ece9 (diff) | |
| parent | 31db9f7c23fbf7e95026143f79645de6507b583b (diff) | |
| download | olio-linux-3.10-113c1cb530e10bcada93d88ffaa6b521aae2d251.tar.xz olio-linux-3.10-113c1cb530e10bcada93d88ffaa6b521aae2d251.zip  | |
Merge branch 'send-v2' of git://github.com/ablock84/linux-btrfs into for-linus
This is the kernel portion of btrfs send/receive
Conflicts:
	fs/btrfs/Makefile
	fs/btrfs/backref.h
	fs/btrfs/ctree.c
	fs/btrfs/ioctl.c
	fs/btrfs/ioctl.h
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
Diffstat (limited to 'fs/btrfs/disk-io.c')
| -rw-r--r-- | fs/btrfs/disk-io.c | 8 | 
1 files changed, 5 insertions, 3 deletions
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c index 05f4fb6e060..502b20c56e8 100644 --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c @@ -1182,6 +1182,8 @@ static void __setup_root(u32 nodesize, u32 leafsize, u32 sectorsize,  	root->defrag_running = 0;  	root->root_key.objectid = objectid;  	root->anon_dev = 0; + +	spin_lock_init(&root->root_times_lock);  }  static int __must_check find_and_setup_root(struct btrfs_root *tree_root, @@ -1402,6 +1404,7 @@ struct btrfs_root *btrfs_read_fs_root_no_radix(struct btrfs_root *tree_root,  	u64 generation;  	u32 blocksize;  	int ret = 0; +	int slot;  	root = btrfs_alloc_root(fs_info);  	if (!root) @@ -1428,9 +1431,8 @@ struct btrfs_root *btrfs_read_fs_root_no_radix(struct btrfs_root *tree_root,  	ret = btrfs_search_slot(NULL, tree_root, location, path, 0, 0);  	if (ret == 0) {  		l = path->nodes[0]; -		read_extent_buffer(l, &root->root_item, -				btrfs_item_ptr_offset(l, path->slots[0]), -				sizeof(root->root_item)); +		slot = path->slots[0]; +		btrfs_read_root_item(tree_root, l, slot, &root->root_item);  		memcpy(&root->root_key, location, sizeof(*location));  	}  	btrfs_free_path(path);  |