Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: "Lluís Batlle i Rossell" <viric@viric.name>
To: gdb-patches@sourceware.org
Subject: [PATCH] Document that index-cache requires build ID
Date: Sun, 6 Apr 2025 13:15:13 +0200	[thread overview]
Message-ID: <txh3hkxmhe2wnpsgwr4a5mjyjcvojc2djy3w2hxmgabkr7bqrc@oi622hwd2lhn> (raw)

[-- Attachment #1: Type: text/plain, Size: 9 bytes --]

Attached

[-- Attachment #2: 0001-Document-that-index-cache-requires-build-ID.patch --]
[-- Type: text/plain, Size: 1655 bytes --]

From 4dfcd1888e3fc3c5707e3f697268d820679a1c7b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= <viric@viric.name>
Date: Sun, 6 Apr 2025 13:11:06 +0200
Subject: [PATCH] Document that index-cache requires build ID

---
 gdb/doc/gdb.texinfo | 2 ++
 gdb/dwarf2/read.c   | 4 ++++
 2 files changed, 6 insertions(+)

diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index e034ac53295..37b65ab72ac 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -22934,6 +22934,8 @@ Indices only work when using DWARF debugging information, not stabs.
 It is possible for @value{GDBN} to automatically save a copy of this index in a
 cache on disk and retrieve it from there when loading the same binary in the
 future.  This feature can be turned on with @kbd{set index-cache enabled on}.
+Note that the cache will use the ELF build ID to identify the cached indices,
+so files without Build ID will not have their index cached.
 The following commands can be used to tweak the behavior of the index cache.
 
 @table @code
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index 71fd352343a..f6a221a57de 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -2237,7 +2237,11 @@ get_gdb_index_contents_from_cache (objfile *obj, dwarf2_per_bfd *dwarf2_per_bfd)
 {
   const bfd_build_id *build_id = build_id_bfd_get (obj->obfd.get ());
   if (build_id == nullptr)
+  {
+    dwarf_read_debug_printf ("Not using index-cache for %s due to missing build-id",
+            objfile_name (obj));
     return {};
+  }
 
   return global_index_cache.lookup_gdb_index (build_id,
 					      &dwarf2_per_bfd->index_cache_res);
-- 
2.47.0


             reply	other threads:[~2025-04-06 11:15 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-06 11:15 Lluís Batlle i Rossell [this message]
2025-04-17 17:06 ` Guinevere Larsen
2025-04-18  5:34   ` Eli Zaretskii
2026-02-21 17:15     ` Sam James

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=txh3hkxmhe2wnpsgwr4a5mjyjcvojc2djy3w2hxmgabkr7bqrc@oi622hwd2lhn \
    --to=viric@viric.name \
    --cc=gdb-patches@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox