@@ -1738,7 +1738,10 @@ static int read_index_extension(struct index_state *istate,
17381738{
17391739 switch (CACHE_EXT (ext )) {
17401740 case CACHE_EXT_TREE :
1741+ trace2_region_enter ("index" , "read/extension/cache_tree" , NULL );
17411742 istate -> cache_tree = cache_tree_read (data , sz );
1743+ trace2_data_intmax ("index" , NULL , "read/extension/cache_tree/bytes" , (intmax_t )sz );
1744+ trace2_region_leave ("index" , "read/extension/cache_tree" , NULL );
17421745 break ;
17431746 case CACHE_EXT_RESOLVE_UNDO :
17441747 istate -> resolve_undo = resolve_undo_read (data , sz );
@@ -1993,6 +1996,17 @@ static void *load_index_extensions(void *_data)
19931996 return NULL ;
19941997}
19951998
1999+ static void * load_index_extensions_threadproc (void * _data )
2000+ {
2001+ void * result ;
2002+
2003+ trace2_thread_start ("load_index_extensions" );
2004+ result = load_index_extensions (_data );
2005+ trace2_thread_exit ();
2006+
2007+ return result ;
2008+ }
2009+
19962010/*
19972011 * A helper function that will load the specified range of cache entries
19982012 * from the memory mapped file and add them to the given index.
@@ -2069,12 +2083,17 @@ static void *load_cache_entries_thread(void *_data)
20692083 struct load_cache_entries_thread_data * p = _data ;
20702084 int i ;
20712085
2086+ trace2_thread_start ("load_cache_entries" );
2087+
20722088 /* iterate across all ieot blocks assigned to this thread */
20732089 for (i = p -> ieot_start ; i < p -> ieot_start + p -> ieot_blocks ; i ++ ) {
20742090 p -> consumed += load_cache_entry_block (p -> istate , p -> ce_mem_pool ,
20752091 p -> offset , p -> ieot -> entries [i ].nr , p -> mmap , p -> ieot -> entries [i ].offset , NULL );
20762092 p -> offset += p -> ieot -> entries [i ].nr ;
20772093 }
2094+
2095+ trace2_thread_exit ();
2096+
20782097 return NULL ;
20792098}
20802099
@@ -2226,7 +2245,7 @@ int do_read_index(struct index_state *istate, const char *path, int must_exist)
22262245 int err ;
22272246
22282247 p .src_offset = extension_offset ;
2229- err = pthread_create (& p .pthread , NULL , load_index_extensions , & p );
2248+ err = pthread_create (& p .pthread , NULL , load_index_extensions_threadproc , & p );
22302249 if (err )
22312250 die (_ ("unable to create load_index_extensions thread: %s" ), strerror (err ));
22322251
@@ -2974,9 +2993,13 @@ static int do_write_index(struct index_state *istate, struct tempfile *tempfile,
29742993 if (!strip_extensions && !drop_cache_tree && istate -> cache_tree ) {
29752994 struct strbuf sb = STRBUF_INIT ;
29762995
2996+ trace2_region_enter ("index" , "write/extension/cache_tree" , NULL );
29772997 cache_tree_write (& sb , istate -> cache_tree );
29782998 err = write_index_ext_header (& c , & eoie_c , newfd , CACHE_EXT_TREE , sb .len ) < 0
29792999 || ce_write (& c , newfd , sb .buf , sb .len ) < 0 ;
3000+ trace2_data_intmax ("index" , NULL , "write/extension/cache_tree/bytes" , (intmax_t )sb .len );
3001+ trace2_region_leave ("index" , "write/extension/cache_tree" , NULL );
3002+
29803003 strbuf_release (& sb );
29813004 if (err )
29823005 return -1 ;
0 commit comments