Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cab45e22 authored by Jeff Mahoney's avatar Jeff Mahoney Committed by Chris Mason
Browse files

btrfs: add tracing for failed reservations



When debugging ENOSPC issues, it's nice to be able to see which
reservations failed as well as the ones which succeeded.

Signed-off-by: default avatarJeff Mahoney <jeffm@suse.com>
Signed-off-by: default avatarJosef Bacik <jbacik@fusionio.com>
Signed-off-by: default avatarChris Mason <chris.mason@fusionio.com>
parent 8b558c5f
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -3684,6 +3684,9 @@ int btrfs_check_data_free_space(struct inode *inode, u64 bytes)
			goto again;
		}

		trace_btrfs_space_reservation(root->fs_info,
					      "space_info:enospc",
					      data_sinfo->flags, bytes, 1);
		return -ENOSPC;
	}
	data_sinfo->bytes_may_use += bytes;
@@ -4335,6 +4338,10 @@ static int reserve_metadata_bytes(struct btrfs_root *root,
		    !block_rsv_use_bytes(global_rsv, orig_bytes))
			ret = 0;
	}
	if (ret == -ENOSPC)
		trace_btrfs_space_reservation(root->fs_info,
					      "space_info:enospc",
					      space_info->flags, orig_bytes, 1);
	if (flushing) {
		spin_lock(&space_info->lock);
		space_info->flush = 0;