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: Jeff Mahoney <jeffm@suse.com> Signed-off-by: Josef Bacik <jbacik@fusionio.com> Signed-off-by: Chris Mason <chris.mason@fusionio.com>
This commit is contained in:
parent
8b558c5f09
commit
cab45e22da
|
@ -3684,6 +3684,9 @@ commit_trans:
|
||||||
goto again;
|
goto again;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
trace_btrfs_space_reservation(root->fs_info,
|
||||||
|
"space_info:enospc",
|
||||||
|
data_sinfo->flags, bytes, 1);
|
||||||
return -ENOSPC;
|
return -ENOSPC;
|
||||||
}
|
}
|
||||||
data_sinfo->bytes_may_use += bytes;
|
data_sinfo->bytes_may_use += bytes;
|
||||||
|
@ -4335,6 +4338,10 @@ out:
|
||||||
!block_rsv_use_bytes(global_rsv, orig_bytes))
|
!block_rsv_use_bytes(global_rsv, orig_bytes))
|
||||||
ret = 0;
|
ret = 0;
|
||||||
}
|
}
|
||||||
|
if (ret == -ENOSPC)
|
||||||
|
trace_btrfs_space_reservation(root->fs_info,
|
||||||
|
"space_info:enospc",
|
||||||
|
space_info->flags, orig_bytes, 1);
|
||||||
if (flushing) {
|
if (flushing) {
|
||||||
spin_lock(&space_info->lock);
|
spin_lock(&space_info->lock);
|
||||||
space_info->flush = 0;
|
space_info->flush = 0;
|
||||||
|
|
Loading…
Reference in a new issue