diff options
authorLinus Torvalds <>2013-10-18 16:46:21 -0700
committerLinus Torvalds <>2013-10-18 16:46:21 -0700
commitbdeeab62a611f1f7cd48fd285ce568e8dcd0455a (patch)
parent797afdf70844c719d229174c460687fb17af9762 (diff)
parent1bda19eb73d68b304148e67253e47cef049a419d (diff)
Merge branch 'for-linus' of git://
Pull btrfs fix from Chris Mason: "Sage hit a deadlock with ceph on btrfs, and Josef tracked it down to a regression in our initial rc1 pull. When doing nocow writes we were sometimes starting a transaction with locks held" * 'for-linus' of git:// Btrfs: release path before starting transaction in can_nocow_extent
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index b0ef7b07b1b3..51e3afa78354 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -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