name-hash: use trace2 regions for init
The lazy_init_name_hash() populates a hashset with all filenames and another with all directories represented in the index. This is run only if we need to use the hashsets to check for existence or case-folding renames. Place trace2 regions where there is already a performance trace. Signed-off-by: Derrick Stolee <dstolee@microsoft.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Derrick Stolee committed
Jan 23, 2021 at 19:58 UTC
6a9372f4ef218d189120e969f6dc01f9fcd5317a
1 file changed
+3
name-hash.c
+3
@@ -7,6 +7,7 @@
7
*/
8
#include "cache.h"
9
#include "thread-utils.h"
10
+#include "trace2.h"
11
12
struct dir_entry {
13
struct hashmap_entry ent;
@@ -577,6 +578,7 @@ static void lazy_init_name_hash(struct index_state *istate)
578
if (istate->name_hash_initialized)
579
return;
580
trace_performance_enter();
581
+ trace2_region_enter("index", "name-hash-init", istate->repo);
582
hashmap_init(&istate->name_hash, cache_entry_cmp, NULL, istate->cache_nr);
583
hashmap_init(&istate->dir_hash, dir_entry_cmp, NULL, istate->cache_nr);
584
@@ -597,6 +599,7 @@ static void lazy_init_name_hash(struct index_state *istate)
599
}
600
601
istate->name_hash_initialized = 1;
602
+ trace2_region_leave("index", "name-hash-init", istate->repo);
603
trace_performance_leave("initialize name hash");
604
}
605