From: Josef Bacik <josef@toxicpanda.com>
Date: Thu, 22 Aug 2019 19:10:56 +0000 (-0400)
Subject: btrfs: add space reservation tracepoint for reserved bytes
X-Git-Tag: v5.4-rc1~123^2~15
X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=a43c383574d80503f3ba9cd08de16dad2590ca1b;p=linux.git

btrfs: add space reservation tracepoint for reserved bytes

I noticed when folding the trace_btrfs_space_reservation() tracepoint
into the btrfs_space_info_update_* helpers that we didn't emit a
tracepoint when doing btrfs_add_reserved_bytes().  I know this is
because we were swapping bytes_may_use for bytes_reserved, so in my mind
there was no reason to have the tracepoint there.  But now there is
because we always emit the unreserve for the bytes_may_use side, and
this would have broken if compression was on anyway.  Add a tracepoint
to cover the bytes_reserved counter so the math still comes out right.

Signed-off-by: Josef Bacik <josef@toxicpanda.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
---

diff --git a/fs/btrfs/block-group.c b/fs/btrfs/block-group.c
index d61aa94884f0..bf7e3f23bba7 100644
--- a/fs/btrfs/block-group.c
+++ b/fs/btrfs/block-group.c
@@ -2758,6 +2758,8 @@ int btrfs_add_reserved_bytes(struct btrfs_block_group_cache *cache,
 	} else {
 		cache->reserved += num_bytes;
 		space_info->bytes_reserved += num_bytes;
+		trace_btrfs_space_reservation(cache->fs_info, "space_info",
+					      space_info->flags, num_bytes, 1);
 		btrfs_space_info_update_bytes_may_use(cache->fs_info,
 						      space_info, -ram_bytes);
 		if (delalloc)