]> Git Repo - linux.git/commitdiff
Btrfs: release path before starting transaction in can_nocow_extent
authorJosef Bacik <[email protected]>
Fri, 18 Oct 2013 16:10:36 +0000 (12:10 -0400)
committerChris Mason <[email protected]>
Fri, 18 Oct 2013 16:43:40 +0000 (12:43 -0400)
We can't be holding tree locks while we try to start a transaction, we will
deadlock.  Thanks,

Reported-by: Sage Weil <[email protected]>
Signed-off-by: Josef Bacik <[email protected]>
Signed-off-by: Chris Mason <[email protected]>
fs/btrfs/inode.c

index 3b4ffaf0cd5204660bd07b864e6ec8341871bdc2..f4a6851e6c8889a1a3d80017e3dbf8c937d40804 100644 (file)
@@ -6437,6 +6437,7 @@ noinline int can_nocow_extent(struct inode *inode, u64 offset, u64 *len,
 
        if (btrfs_extent_readonly(root, disk_bytenr))
                goto out;
+       btrfs_release_path(path);
 
        /*
         * look for other files referencing this extent, if we
This page took 0.088281 seconds and 4 git commands to generate.