From: Wang Shilong <[email protected]>

3.12-stable review patch.  If anyone has any objections, please let me know.

===============

commit e84752d434b5cca0869e906e7b94d0531b25c6d3 upstream.

We won't change commit root, skip locking dance with commit root
when walking backrefs, this can speed up btrfs send operations.

Signed-off-by: Wang Shilong <[email protected]>
Signed-off-by: Josef Bacik <[email protected]>
Signed-off-by: Jiri Slaby <[email protected]>
---
 fs/btrfs/backref.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/fs/btrfs/backref.c b/fs/btrfs/backref.c
index 5859a05f3a76..b7f40f2630f4 100644
--- a/fs/btrfs/backref.c
+++ b/fs/btrfs/backref.c
@@ -842,8 +842,10 @@ static int find_parent_nodes(struct btrfs_trans_handle 
*trans,
        path = btrfs_alloc_path();
        if (!path)
                return -ENOMEM;
-       if (!trans)
+       if (!trans) {
                path->search_commit_root = 1;
+               path->skip_locking = 1;
+       }
 
        /*
         * grab both a lock on the path and a lock on the delayed ref head.
-- 
2.8.1

Reply via email to