Mark vDSO as not a file
authorTom Tromey <tromey@adacore.com>
Fri, 4 Mar 2022 18:58:27 +0000 (11:58 -0700)
committerTom Tromey <tromey@adacore.com>
Fri, 4 Mar 2022 19:35:33 +0000 (12:35 -0700)
The vDSO objfile is not a real file, so mark it as such.  I noticed
this because, when playing with debuginfod, I saw:

Downloading 0.01 MB separate debug info for /tmp/system-supplied DSO at 0x7ffff7fc9000

That "/tmp" is wrong -- it's just gdb's cwd.  This patch corrects the
problem, resulting in:

Downloading 0.01 MB separate debug info for system-supplied DSO at 0x7ffff7fc9000

Regression tested on x86-64 Fedora 34.

gdb/symfile-mem.c

index b4c359ccd3178efa77b20fe9d4d85f27848d5ddc..73c5ee378b8bf13438c53564388edf626bc1b65a 100644 (file)
@@ -88,7 +88,7 @@ symbol_file_add_from_memory (struct bfd *templ, CORE_ADDR addr,
   struct bfd *nbfd;
   struct bfd_section *sec;
   bfd_vma loadbase;
-  symfile_add_flags add_flags = 0;
+  symfile_add_flags add_flags = SYMFILE_NOT_FILENAME;
 
   if (bfd_get_flavour (templ) != bfd_target_elf_flavour)
     error (_("add-symbol-file-from-memory not supported for this target"));