[PATCH v4] read-cache: use istate->repo for trace2 logging
- From
Jayesh Daga via GitGitGadget <gitgitgadget@gmail.com>
- Date
- Mar 30, 2026, 18:38 UTC
- Message-ID
- <pull.2253.v4.git.git.1774895886678.gitgitgadget@gmail.com>
- In-Reply-To
- <pull.2253.v3.git.git.1774891667.gitgitgadget@gmail.com>
From: Jayesh Daga <jayeshdaga99@gmail.com>
trace2 calls in read-cache.c use the global 'the_repository', even though the relevant index_state provides an explicit repository pointer via 'istate->repo'.
Using the global repository can result in incorrect trace2 output when multiple repository instances are in use, as events may be attributed to the wrong repository.
Use 'istate->repo' instead to ensure correct repository attribution.
Signed-off-by: Jayesh Daga <jayeshdaga99@gmail.com>
---
[GSoC] read-cache: use index state repository for trace2 logging
trace2 calls in read-cache.c use the global 'the_repository', even
though the relevant index_state provides an explicit repository pointer
via 'istate->repo'.
Using the global repository can result in incorrect trace2 output when
multiple repository instances are in use, as events may be attributed to
the wrong repository.
Use 'istate->repo' instead in these call sites to ensure correct
repository attribution.
v4:
* reroll as clean series; drop unrelated commit.
v2:
* Apply the change consistently across read-cache.c
* Drop unnecessary intermediate variable
* Remove obsolete TODO comments
* Update commit messagePublished-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-2253%2Fjayesh0104%2Ftrace2-istate-repo-v4 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-2253/jayesh0104/trace2-istate-repo-v4 Pull-Request: https://github.com/git/git/pull/2253
Range-diff vs v3:
1: 5a8165b05d < -: ---------- repo: add paths.git_dir repo info key 2: 9bb6d0fa01 = 1: c99d731efa read-cache: use istate->repo for trace2 logging
read-cache.c | 32 ++++++++------------------------ 1 file changed, 8 insertions(+), 24 deletions(-)
diff --git a/read-cache.c b/read-cache.c index 5049f9baca..b1074fbf06 100644 --- a/read-cache.c +++ b/read-cache.c @@ -2309,13 +2309,9 @@ int do_read_index(struct index_state *istate, const char *path, int must_exist) } munmap((void *)mmap, mmap_size); - /* - * TODO trace2: replace "the_repository" with the actual repo instance - * that is associated with the given "istate". - */ - trace2_data_intmax("index", the_repository, "read/version", + trace2_data_intmax("index", istate->repo, "read/version", istate->version); - trace2_data_intmax("index", the_repository, "read/cache_nr", + trace2_data_intmax("index", istate->repo, "read/cache_nr", istate->cache_nr); /* @@ -2360,16 +2356,12 @@ int read_index_from(struct index_state *istate, const char *path, if (istate->initialized) return istate->cache_nr; - /* - * TODO trace2: replace "the_repository" with the actual repo instance - * that is associated with the given "istate". - */ - trace2_region_enter_printf("index", "do_read_index", the_repository, + trace2_region_enter_printf("index", "do_read_index", istate->repo, "%s", path); trace_performance_enter(); ret = do_read_index(istate, path, 0); trace_performance_leave("read cache %s", path); - trace2_region_leave_printf("index", "do_read_index", the_repository, + trace2_region_leave_printf("index", "do_read_index", istate->repo, "%s", path); split_index = istate->split_index; @@ -3096,13 +3088,9 @@ static int do_write_index(struct index_state *istate, struct tempfile *tempfile, istate->timestamp.nsec = ST_MTIME_NSEC(st); trace_performance_since(start, "write index, changed mask = %x", istate->cache_changed); - /* - * TODO trace2: replace "the_repository" with the actual repo instance - * that is associated with the given "istate". - */ - trace2_data_intmax("index", the_repository, "write/version", + trace2_data_intmax("index", istate->repo, "write/version", istate->version); - trace2_data_intmax("index", the_repository, "write/cache_nr", + trace2_data_intmax("index", istate->repo, "write/cache_nr", istate->cache_nr); ret = 0; @@ -3144,14 +3132,10 @@ static int do_write_locked_index(struct index_state *istate, return ret; } - /* - * TODO trace2: replace "the_repository" with the actual repo instance - * that is associated with the given "istate". - */ - trace2_region_enter_printf("index", "do_write_index", the_repository, + trace2_region_enter_printf("index", "do_write_index", istate->repo, "%s", get_lock_file_path(lock)); ret = do_write_index(istate, lock->tempfile, write_extensions, flags); - trace2_region_leave_printf("index", "do_write_index", the_repository, + trace2_region_leave_printf("index", "do_write_index", istate->repo, "%s", get_lock_file_path(lock)); if (was_full) base-commit: 5361983c075154725be47b65cca9a2421789e410
-- gitgitgadget