* [PATCH] [testsuite] Log gdb_do_cache misses only, not hits
@ 2026-06-19 8:16 Luis Machado
2026-06-19 13:16 ` Guinevere Larsen
0 siblings, 1 reply; 3+ messages in thread
From: Luis Machado @ 2026-06-19 8:16 UTC (permalink / raw)
To: gdb-patches
The verbose -log in gdb_do_cache fired unconditionally on every call,
including cache hits. With many tests calling gdb_caching_procs like
get_compiler_info_1 per compilation, this produced dozens of repeated
identical lines per test file in the log, like so:
gdb_do_cache: get_compiler_info_1 ( c )
gdb_do_cache: get_compiler_info_1 ( c )
gdb_do_cache: get_compiler_info_1 ( c )
gdb_do_cache: get_compiler_info_1 ( c )
gdb_do_cache: get_compiler_info_1 ( c )
gdb_do_cache: get_compiler_info_1 ( c )
gdb_do_cache: get_compiler_info_1 ( c )
gdb_do_cache: get_compiler_info_1 ( c )
Move the log to just before actual computation, after both the
in-memory and on-disk cache checks. This helps keep the logs clean.
---
gdb/testsuite/lib/cache.exp | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/gdb/testsuite/lib/cache.exp b/gdb/testsuite/lib/cache.exp
index 71688ee373e..1ba8c881716 100644
--- a/gdb/testsuite/lib/cache.exp
+++ b/gdb/testsuite/lib/cache.exp
@@ -103,8 +103,6 @@ proc gdb_do_cache {name args} {
global gdb_data_cache objdir
global GDB_PARALLEL
- verbose -log "gdb_do_cache: $name ( $args )"
-
# Normally, if we have a cached value, we skip computation and return
# the cached value. If set to 1, instead don't skip computation and
# verify against the cached value.
@@ -195,6 +193,7 @@ proc gdb_do_cache {name args} {
set old_gdb_nested_caching_proc_calls $::gdb_nested_caching_proc_calls
set ::gdb_nested_caching_proc_calls {}
+ verbose -log "gdb_do_cache: $name ( $args )"
set real_name gdb_real__$name
set gdb_data_cache(${cache_name},value) [gdb_do_cache_wrap $real_name {*}$args]
set gdb_data_cache(${cache_name},exit) $::gdb_exit_called
--
2.34.1
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH] [testsuite] Log gdb_do_cache misses only, not hits
2026-06-19 8:16 [PATCH] [testsuite] Log gdb_do_cache misses only, not hits Luis Machado
@ 2026-06-19 13:16 ` Guinevere Larsen
2026-06-19 13:34 ` Machado, Luis
0 siblings, 1 reply; 3+ messages in thread
From: Guinevere Larsen @ 2026-06-19 13:16 UTC (permalink / raw)
To: Luis Machado, gdb-patches
On 6/19/26 5:16 AM, Luis Machado wrote:
> The verbose -log in gdb_do_cache fired unconditionally on every call,
> including cache hits. With many tests calling gdb_caching_procs like
> get_compiler_info_1 per compilation, this produced dozens of repeated
> identical lines per test file in the log, like so:
>
> gdb_do_cache: get_compiler_info_1 ( c )
> gdb_do_cache: get_compiler_info_1 ( c )
> gdb_do_cache: get_compiler_info_1 ( c )
> gdb_do_cache: get_compiler_info_1 ( c )
> gdb_do_cache: get_compiler_info_1 ( c )
> gdb_do_cache: get_compiler_info_1 ( c )
> gdb_do_cache: get_compiler_info_1 ( c )
> gdb_do_cache: get_compiler_info_1 ( c )
>
> Move the log to just before actual computation, after both the
> in-memory and on-disk cache checks. This helps keep the logs clean.
Yeah, this looks like a good idea, and would definitely reduce the noise
at the top of the log
Reviewed-By: Guinevere Larsen <guinevere@redhat.com>
> ---
> gdb/testsuite/lib/cache.exp | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/gdb/testsuite/lib/cache.exp b/gdb/testsuite/lib/cache.exp
> index 71688ee373e..1ba8c881716 100644
> --- a/gdb/testsuite/lib/cache.exp
> +++ b/gdb/testsuite/lib/cache.exp
> @@ -103,8 +103,6 @@ proc gdb_do_cache {name args} {
> global gdb_data_cache objdir
> global GDB_PARALLEL
>
> - verbose -log "gdb_do_cache: $name ( $args )"
> -
> # Normally, if we have a cached value, we skip computation and return
> # the cached value. If set to 1, instead don't skip computation and
> # verify against the cached value.
> @@ -195,6 +193,7 @@ proc gdb_do_cache {name args} {
> set old_gdb_nested_caching_proc_calls $::gdb_nested_caching_proc_calls
> set ::gdb_nested_caching_proc_calls {}
>
> + verbose -log "gdb_do_cache: $name ( $args )"
> set real_name gdb_real__$name
> set gdb_data_cache(${cache_name},value) [gdb_do_cache_wrap $real_name {*}$args]
> set gdb_data_cache(${cache_name},exit) $::gdb_exit_called
--
Cheers,
Guinevere Larsen
it/its
she/her (deprecated)
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH] [testsuite] Log gdb_do_cache misses only, not hits
2026-06-19 13:16 ` Guinevere Larsen
@ 2026-06-19 13:34 ` Machado, Luis
0 siblings, 0 replies; 3+ messages in thread
From: Machado, Luis @ 2026-06-19 13:34 UTC (permalink / raw)
To: Guinevere Larsen, gdb-patches
Thanks! I'll push this soon-ish.
________________________________________
From: Guinevere Larsen <guinevere@redhat.com>
Sent: Friday, 19 June 2026 14:16
To: Machado, Luis; gdb-patches@sourceware.org
Subject: Re: [PATCH] [testsuite] Log gdb_do_cache misses only, not hits
Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
On 6/19/26 5:16 AM, Luis Machado wrote:
> The verbose -log in gdb_do_cache fired unconditionally on every call,
> including cache hits. With many tests calling gdb_caching_procs like
> get_compiler_info_1 per compilation, this produced dozens of repeated
> identical lines per test file in the log, like so:
>
> gdb_do_cache: get_compiler_info_1 ( c )
> gdb_do_cache: get_compiler_info_1 ( c )
> gdb_do_cache: get_compiler_info_1 ( c )
> gdb_do_cache: get_compiler_info_1 ( c )
> gdb_do_cache: get_compiler_info_1 ( c )
> gdb_do_cache: get_compiler_info_1 ( c )
> gdb_do_cache: get_compiler_info_1 ( c )
> gdb_do_cache: get_compiler_info_1 ( c )
>
> Move the log to just before actual computation, after both the
> in-memory and on-disk cache checks. This helps keep the logs clean.
Yeah, this looks like a good idea, and would definitely reduce the noise
at the top of the log
Reviewed-By: Guinevere Larsen <guinevere@redhat.com>
> ---
> gdb/testsuite/lib/cache.exp | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/gdb/testsuite/lib/cache.exp b/gdb/testsuite/lib/cache.exp
> index 71688ee373e..1ba8c881716 100644
> --- a/gdb/testsuite/lib/cache.exp
> +++ b/gdb/testsuite/lib/cache.exp
> @@ -103,8 +103,6 @@ proc gdb_do_cache {name args} {
> global gdb_data_cache objdir
> global GDB_PARALLEL
>
> - verbose -log "gdb_do_cache: $name ( $args )"
> -
> # Normally, if we have a cached value, we skip computation and return
> # the cached value. If set to 1, instead don't skip computation and
> # verify against the cached value.
> @@ -195,6 +193,7 @@ proc gdb_do_cache {name args} {
> set old_gdb_nested_caching_proc_calls $::gdb_nested_caching_proc_calls
> set ::gdb_nested_caching_proc_calls {}
>
> + verbose -log "gdb_do_cache: $name ( $args )"
> set real_name gdb_real__$name
> set gdb_data_cache(${cache_name},value) [gdb_do_cache_wrap $real_name {*}$args]
> set gdb_data_cache(${cache_name},exit) $::gdb_exit_called
--
Cheers,
Guinevere Larsen
it/its
she/her (deprecated)
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-06-19 13:34 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-06-19 8:16 [PATCH] [testsuite] Log gdb_do_cache misses only, not hits Luis Machado
2026-06-19 13:16 ` Guinevere Larsen
2026-06-19 13:34 ` Machado, Luis
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox