From: Josef Bacik Date: Thu, 7 Feb 2013 21:27:28 +0000 (-0500) Subject: Btrfs: cleanup orphan reservation if truncate fails X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=4a7d0f6854c4a4ad1dba00a3b128a32d39b9a742;p=openwrt%2Fstaging%2Fblogic.git Btrfs: cleanup orphan reservation if truncate fails I noticed we were getting lots of warnings with xfstest 83 because we have reservations outstanding. This is because we moved the orphan add outside of the truncate, but we don't actually cleanup our reservation if something fails. This fixes the problem and I no longer see warnings. Thanks, Signed-off-by: Josef Bacik --- diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index cf26778085e0..16925807a9ed 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -2538,6 +2538,8 @@ int btrfs_orphan_cleanup(struct btrfs_root *root) goto out; ret = btrfs_truncate(inode); + if (ret) + btrfs_orphan_del(NULL, inode); } else { nr_unlink++; }