Skip to contentSkip to conversation

Btrfs: fix unclosed transaction handle in btrfs_cont_expand()

PATCH In review Miao Xie 1 participant 1 message Aug 18, 2011 Btrfs file system

lore
Share & tools
lore

Miao Xie

author
#0 lore raw

PATCH 3/3 Btrfs: fix unclosed transaction handle in btrfs_cont_expand()

The function - btrfs_cont_expand() forgot to close the transaction handle before it jump out the while loop. Fix it.

---
 fs/btrfs/inode.c |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)
fs/btrfs/inode.c +6 -2
index 634dd797..ee57b40 100644
@@ -3510,15 +3510,19 @@ int btrfs_cont_expand(struct inode *inode, loff_t oldsize, loff_t size)
 			err = btrfs_drop_extents(trans, inode, cur_offset,
 						 cur_offset + hole_size,
 						 &hint_byte, 1);
-			if (err)
+			if (err) {
+				btrfs_end_transaction(trans, root);
 				break;
+			}
 
 			err = btrfs_insert_file_extent(trans, root,
 					btrfs_ino(inode), cur_offset, 0,
 					0, hole_size, 0, hole_size,
 					0, 0, 0);
-			if (err)
+			if (err) {
+				btrfs_end_transaction(trans, root);
 				break;
+			}
 
 			btrfs_drop_extent_cache(inode, hole_start,
 					last_byte - 1, 0);
Signature · 1 line
1.7.4