search for: walk_log_tree

Displaying 11 results from an estimated 11 matches for "walk_log_tree".

2013 Oct 07
0
[PATCH] Btrfs: cleanup reserved space when freeing tree log on error
...btrfs_set_lock_blocking(next); + clean_tree_block(trans, root, next); + btrfs_wait_tree_block_writeback(next); + btrfs_tree_unlock(next); + } WARN_ON(root_owner != BTRFS_TREE_LOG_OBJECTID); ret = btrfs_free_and_pin_reserved_extent(root, @@ -2301,11 +2305,13 @@ static int walk_log_tree(struct btrfs_trans_handle *trans, next = path->nodes[orig_level]; - btrfs_tree_lock(next); - btrfs_set_lock_blocking(next); - clean_tree_block(trans, log, next); - btrfs_wait_tree_block_writeback(next); - btrfs_tree_unlock(next); + if (trans) { + btrfs_tree_lock(next); +...
2011 Mar 23
0
[PATCH] Btrfs: cleanup some BUG_ON()
...sync_commit); ac->root = root; diff -urNp linux-2.6.38/fs/btrfs/tree-log.c linux-2.6.38.new/fs/btrfs/tree-log.c --- linux-2.6.38/fs/btrfs/tree-log.c 2011-03-15 10:20:32.000000000 +0900 +++ linux-2.6.38.new/fs/btrfs/tree-log.c 2011-03-23 11:28:09.000000000 +0900 @@ -1821,7 +1821,8 @@ static int walk_log_tree(struct btrfs_tr int orig_level; path = btrfs_alloc_path(); - BUG_ON(!path); + if (!path) + return -ENOMEM; level = btrfs_header_level(log->node); orig_level = level; @@ -3107,9 +3108,11 @@ int btrfs_recover_log_trees(struct btrfs .stage = 0, }; - fs_info->log_root_recoveri...
2013 Feb 03
3
kernel BUG at fs/btrfs/extent-tree.c:6185!
...94a1b>] replay_one_buffer+0x2db/0x3a0 [btrfs] Feb 02 13:59:58 Edge kernel: [<ffffffffa027c9bd>] ? alloc_extent_buffer+0x9d/0x490 [btrfs] Feb 02 13:59:58 Edge kernel: [<ffffffffa02913e2>] walk_down_log_tree+0x212/0x400 [btrfs] Feb 02 13:59:58 Edge kernel: [<ffffffffa029166d>] walk_log_tree+0x9d/0x1f0 [btrfs] Feb 02 13:59:58 Edge kernel: [<ffffffffa02979eb>] btrfs_recover_log_trees+0x21b/0x3a0 [btrfs] Feb 02 13:59:58 Edge kernel: [<ffffffffa0294740>] ? replay_one_dir_item+0xf0/0xf0 [btrfs] Feb 02 13:59:58 Edge kernel: [<ffffffffa025d9d7>] open_ctree+0x1587/0x1ba0...
2013 Apr 25
0
[PATCH] Btrfs: remove almost all of the BUG()'s from tree-log.c
...ret = btrfs_free_and_pin_reserved_extent(root, path->nodes[*level]->start, path->nodes[*level]->len); - BUG_ON(ret); + if (ret) + return ret; } free_extent_buffer(path->nodes[*level]); path->nodes[*level] = NULL; @@ -2229,7 +2260,8 @@ static int walk_log_tree(struct btrfs_trans_handle *trans, BTRFS_TREE_LOG_OBJECTID); ret = btrfs_free_and_pin_reserved_extent(log, next->start, next->len); - BUG_ON(ret); /* -ENOMEM or logic errors */ + if (ret) + goto out; } } @@ -2517,7 +2549,10 @@ static void free_log_tree(struct bt...
2012 Jun 27
7
WARNING: at fs/btrfs/free-space-cache.c:1887 after hard shutdown.
...105/0x210 [ 37.645710] [<ffffffffa0f4549b>] replay_one_buffer+0x27b/0x350 [btrfs] [ 37.645719] [<ffffffffa0f302bd>] ? alloc_extent_buffer+0x9d/0x5c0 [btrfs] [ 37.645728] [<ffffffffa0f42d92>] walk_down_log_tree+0x202/0x3c0 [btrfs] [ 37.645736] [<ffffffffa0f42fed>] walk_log_tree+0x9d/0x1f0 [btrfs] [ 37.645745] [<ffffffffa0f46f4b>] btrfs_recover_log_trees+0x21b/0x3a0 [btrfs] [ 37.645754] [<ffffffffa0f45220>] ? replay_one_dir_item+0xe0/0xe0 [btrfs] [ 37.645763] [<ffffffffa0f0883d>] open_ctree+0x14ed/0x1ac0 [btrfs] [ 37.645767] [<ffffffff8121e...
2011 Aug 03
6
BTRFS partition won't mount
...0 [btrfs] [ 27.158245] [<ffffffffa013567b>] replay_one_buffer+0x2bb/0x3b0 [btrfs] [ 27.158318] [<ffffffffa0122f27>] ? alloc_extent_buffer+0x87/0x3d0 [btrfs] [ 27.158391] [<ffffffffa0132cd1>] walk_down_log_tree+0x391/0x540 [btrfs] [ 27.160851] [<ffffffffa0132f7d>] walk_log_tree+0xfd/0x270 [btrfs] [ 27.165784] [<ffffffffa0136d11>] btrfs_recover_log_trees+0x211/0x300 [btrfs] [ 27.168297] [<ffffffffa01353c0>] ? replay_one_dir_item+0xe0/0xe0 [btrfs] [ 27.170832] [<ffffffffa00fd907>] open_ctree+0x13e7/0x17a0 [btrfs] [ 27.178506] [<ffffffffa00d8...
2013 Jan 08
10
kernel BUG at fs/btrfs/volumes.c:3707 still not fixed in 3.7.1 (btrfs-zero-log required) but shown as "RIP btrfs_num_copies"
...0120903 #1 [ 3964.729801] Call Trace: [ 3964.729816] [<ffffffff81040854>] warn_slowpath_common+0x7e/0x96 [ 3964.729836] [<ffffffff81040881>] warn_slowpath_null+0x15/0x17 [ 3964.729845] [<ffffffff81205f64>] walk_down_log_tree+0x51/0x307 [ 3964.729853] [<ffffffff81206294>] walk_log_tree+0x7a/0x1bc [ 3964.729862] [<ffffffff81207ab8>] btrfs_recover_log_trees+0x9f/0x2ff [ 3964.729881] [<ffffffff81206a32>] ? replay_one_buffer+0x235/0x235 [ 3964.729891] [<ffffffff811dcbe5>] open_ctree+0x143d/0x1820 [ 3964.729899] [<ffffffff8128ffcc>] ? string.isra.3+0x3d/0xa...
2013 Feb 02
5
Oops when mounting btrfs partition
...6:42 localhost kernel: [ 14.777249] [<ffffffffa01e9987>] ? alloc_extent_buffer+0x97/0x400 [btrfs] Jan 24 11:26:42 localhost kernel: [ 14.777261] [<ffffffffa01ff1e2>] walk_down_log_tree+0x212/0x400 [btrfs] Jan 24 11:26:42 localhost kernel: [ 14.777273] [<ffffffffa01ff46d>] walk_log_tree+0x9d/0x1f0 [btrfs] Jan 24 11:26:42 localhost kernel: [ 14.777284] [<ffffffffa01c7f15>] ? btrfs_read_fs_root_no_name+0x1d5/0x310 [btrfs] Jan 24 11:26:42 localhost kernel: [ 14.777296] [<ffffffffa0205415>] btrfs_recover_log_trees+0x215/0x390 [btrfs] Jan 24 11:26:42 localhost kernel:...
2010 Sep 03
0
[PATCH 1/2] btrfs: document where we use BUG_ON instead of error handling
...s, ret = btrfs_free_reserved_extent(root, path->nodes[*level]->start, path->nodes[*level]->len); - BUG_ON(ret); + btrfs_fixable_bug_on(ret); } free_extent_buffer(path->nodes[*level]); path->nodes[*level] = NULL; @@ -1856,7 +1856,7 @@ static int walk_log_tree(struct btrfs_trans_handle *trans, BTRFS_TREE_LOG_OBJECTID); ret = btrfs_free_reserved_extent(log, next->start, next->len); - BUG_ON(ret); + btrfs_fixable_bug_on(ret); } } @@ -2000,7 +2000,7 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans, * wait for them...
2012 Jul 31
4
BTRFS crash on mount with 3.4.4
...nt+0x2fa/0x43e [btrfs] [ 316.548742] [<ffffffff8109b605>] ? __call_rcu+0x5d/0x16e [ 316.548835] [<ffffffffa01ab873>] ? replay_one_buffer+0x1cf/0x22b [btrfs] [ 316.548938] [<ffffffffa01aa704>] ? walk_up_log_tree+0x11b/0x1fb [btrfs] [ 316.549042] [<ffffffffa01ab170>] ? walk_log_tree+0x99/0x1bd [btrfs] [ 316.549145] [<ffffffffa017a13d>] ? btrfs_read_fs_root_no_name+0x92/0x24f [btrfs] [ 316.549257] [<ffffffffa01aca6e>] ? btrfs_recover_log_trees+0x1da/0x2d8 [btrfs] [ 316.549367] [<ffffffffa01ab6a4>] ? replay_one_dir_item+0xb9/0xb9 [btrfs] [ 316.549474] [...
2011 Jun 21
19
[GIT PULL v3] Btrfs: improve write ahead log with sub transaction
I''ve been working to try to improve the write-ahead log''s performance, and I found that the bottleneck addresses in the checksum items, especially when we want to make a random write on a large file, e.g a 4G file. Then a idea for this suggested by Chris is to use sub transaction ids and just to log the part of inode that had changed since either the last log commit or the last