diff mbox

btrfs: Fix wrong btrfs_delalloc_release_extents parameter

Message ID 20180417104358.16667-1-wqu@suse.com (mailing list archive)
State New, archived
Headers show

Commit Message

Qu Wenruo April 17, 2018, 10:43 a.m. UTC
Commit 43b18595d660 ("btrfs: qgroup: Use separate meta reservation type
for delalloc") merged into mainline is not the latest version submitted
to mail list in Dec 2017.

It has a fatal wrong @qgroup_free parameter, which results increasing
qgroup metadata pertrans reserved space, and causing a lot of early EDQUOT.

Fix it by applying the correct diff on top of current branch.

Fixes: 43b18595d660 ("btrfs: qgroup: Use separate meta reservation type for delalloc")
Signed-off-by: Qu Wenruo <wqu@suse.com>
---
 fs/btrfs/file.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

David Sterba April 17, 2018, 3:41 p.m. UTC | #1
On Tue, Apr 17, 2018 at 06:43:58PM +0800, Qu Wenruo wrote:
> Commit 43b18595d660 ("btrfs: qgroup: Use separate meta reservation type
> for delalloc") merged into mainline is not the latest version submitted
> to mail list in Dec 2017.
> 
> It has a fatal wrong @qgroup_free parameter, which results increasing
> qgroup metadata pertrans reserved space, and causing a lot of early EDQUOT.
> 
> Fix it by applying the correct diff on top of current branch.
> 
> Fixes: 43b18595d660 ("btrfs: qgroup: Use separate meta reservation type for delalloc")
> Signed-off-by: Qu Wenruo <wqu@suse.com>

Added to 4.17 queue, thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
index dd1b79750d6a..9701aa7361f3 100644
--- a/fs/btrfs/file.c
+++ b/fs/btrfs/file.c
@@ -1763,7 +1763,7 @@  static noinline ssize_t btrfs_buffered_write(struct kiocb *iocb,
 			unlock_extent_cached(&BTRFS_I(inode)->io_tree,
 					     lockstart, lockend, &cached_state);
 		btrfs_delalloc_release_extents(BTRFS_I(inode), reserve_bytes,
-					       (ret != 0));
+					       true);
 		if (ret) {
 			btrfs_drop_pages(pages, num_pages);
 			break;