btrfs: qgroup: Introduce trace event to analyse the number of dirty extents accounted
Number of qgroup dirty extents is directly linked to the performance overhead, so add a new trace event, trace_qgroup_num_dirty_extents(), to record how many dirty extents is processed in btrfs_qgroup_account_extents(). This will be pretty handy to analyze later balance performance improvement. Signed-off-by: Qu Wenruo <wqu@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
Este cometimento está contido em:

cometido por
David Sterba

ascendente
fa6ac71524
cometimento
c337e7b02f
@@ -2132,6 +2132,7 @@ int btrfs_qgroup_account_extents(struct btrfs_trans_handle *trans)
|
||||
struct btrfs_delayed_ref_root *delayed_refs;
|
||||
struct ulist *new_roots = NULL;
|
||||
struct rb_node *node;
|
||||
u64 num_dirty_extents = 0;
|
||||
u64 qgroup_to_skip;
|
||||
int ret = 0;
|
||||
|
||||
@@ -2141,6 +2142,7 @@ int btrfs_qgroup_account_extents(struct btrfs_trans_handle *trans)
|
||||
record = rb_entry(node, struct btrfs_qgroup_extent_record,
|
||||
node);
|
||||
|
||||
num_dirty_extents++;
|
||||
trace_btrfs_qgroup_account_extents(fs_info, record);
|
||||
|
||||
if (!ret) {
|
||||
@@ -2186,6 +2188,8 @@ cleanup:
|
||||
kfree(record);
|
||||
|
||||
}
|
||||
trace_qgroup_num_dirty_extents(fs_info, trans->transid,
|
||||
num_dirty_extents);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
Criar uma nova questão referindo esta
Bloquear um utilizador