452274 memcheck crashes with Assertion 'sci->status.what == SsIdle' failed
452779 Valgrind fails to build on FreeBSD 13.0 with llvm-devel (15.0.0)
453055 shared_timed_mutex drd test fails with "Lock shared failed" message
+453602 Missing command line option to enable/disable debuginfod
To see details of a given bug, visit
https://bugs.kde.org/show_bug.cgi?id=XXXXXX
}
# if defined(VGO_linux)
- if (dimg == NULL)
+ if (VG_(clo_enable_debuginfod) && dimg == NULL)
dimg = find_debug_file_debuginfod(objpath, &debugpath, buildid, crc, rel_ok);
# endif
" --log-fd=<number> log messages to file descriptor [2=stderr]\n"
" --log-file=<file> log messages to <file>\n"
" --log-socket=ipaddr:port log messages to socket ipaddr:port\n"
+#if defined(VGO_linux)
+" --enable-debuginfod=no|yes query debuginfod servers for missing\n"
+" debuginfo [yes]\n"
+#endif
"\n"
" user options for Valgrind tools that report errors:\n"
" --xml=yes emit error output in XML (some tools only)\n"
else if VG_BOOL_CLO(arg, "--run-cxx-freeres", VG_(clo_run_cxx_freeres)) {}
else if VG_BOOL_CLOM(cloPD, arg, "--show-below-main", VG_(clo_show_below_main)) {}
else if VG_BOOL_CLO(arg, "--keep-debuginfo", VG_(clo_keep_debuginfo)) {}
+#if defined(VGO_linux)
+ else if VG_BOOL_CLO(arg, "--enable-debuginfod", VG_(clo_enable_debuginfod)) {}
+#endif
else if VG_BOOL_CLOM(cloPD, arg, "--time-stamp", VG_(clo_time_stamp)) {}
else if VG_STR_CLO(arg, "--track-fds", tmp_str) {
if (VG_(strcmp)(tmp_str, "yes") == 0)
const HChar* VG_(clo_xtree_memory_file) = "xtmemory.kcg.%p";
Bool VG_(clo_xtree_compress_strings) = True;
+#if defined(VGO_linux)
+Bool VG_(clo_enable_debuginfod) = True;
+#endif
Int VG_(clo_dump_error) = 0;
Int VG_(clo_backtrace_size) = 12;
Int VG_(clo_merge_recursive_frames) = 0; // default value: no merge
after the subsequent exec(). */
extern Bool VG_(clo_child_silent_after_fork);
+#if defined(VGO_linux)
+/* If True, valgrind will attempt to query debuginfod servers for
+ any missing debuginfo. */
+extern Bool VG_(clo_enable_debuginfod);
+#endif
+
/* If the user specified --log-file=STR and/or --xml-file=STR, these
hold STR before expansion. */
extern const HChar *VG_(clo_log_fname_unexpanded);
<para id="debuginfod.para.1">Valgrind supports the downloading of debuginfo
files via debuginfod, an HTTP server for distributing ELF/DWARF debugging
information. When a debuginfo file cannot be found locally, Valgrind is able
-to query debuginfod servers for the file using its build-id.</para>
+to query debuginfod servers for the file using the file's build-id.</para>
<para id="debuginfod.para.2">In order to use this feature
-<computeroutput>debuginfod-find</computeroutput> must be installed and
-<computeroutput>$DEBUGINFOD_URLS</computeroutput> must contain URLs of
-debuginfod servers. Valgrind does not support
+<computeroutput>debuginfod-find</computeroutput> must be installed and the
+<computeroutput>$DEBUGINFOD_URLS</computeroutput> environment variable must
+contain space-separated URLs of debuginfod servers. Valgrind does not support
<computeroutput>debuginfod-find</computeroutput> verbose output that is
normally enabled with <computeroutput>$DEBUGINFOD_PROGRESS</computeroutput>
and <computeroutput>$DEBUGINFOD_VERBOSE</computeroutput>. These environment
-variables will be ignored.</para>
+variables will be ignored. This feature is supported on Linux only.</para>
<para id="debuginfod.para.3">For more information regarding debuginfod, see
-https://sourceware.org/elfutils/Debuginfod.html</para>
+<ulink url="https://sourceware.org/elfutils/Debuginfod.html">Elfutils Debuginfod</ulink>
+.</para>
</sect1>
</listitem>
</varlistentry>
+ <varlistentry id="opt.enable-debuginfod" xreflabel="--enable-debuginfod">
+ <term>
+ <option><![CDATA[--enable-debuginfod=<no|yes> [default: yes] ]]></option>
+ </term>
+ <listitem>
+ <para>When enabled Valgrind will attempt to download missing debuginfo
+ from debuginfod servers if space-separated server URLs are present
+ in the <computeroutput>$DEBUGINFOD_URLS</computeroutput> environment
+ variable. This option is supported on Linux only.
+ <!-- commented out because it causes broken links in the man page
+ For more information see <xref linkend="manual-core.debuginfod"/>.
+ --></para>
+ </listitem>
+ </varlistentry>
+
</variablelist>
<!-- end of xi:include in the manpage -->
--log-fd=<number> log messages to file descriptor [2=stderr]
--log-file=<file> log messages to <file>
--log-socket=ipaddr:port log messages to socket ipaddr:port
+ --enable-debuginfod=no|yes query debuginfod servers for missing
+ debuginfo [yes]
user options for Valgrind tools that report errors:
--xml=yes emit error output in XML (some tools only)
--log-fd=<number> log messages to file descriptor [2=stderr]
--log-file=<file> log messages to <file>
--log-socket=ipaddr:port log messages to socket ipaddr:port
+ --enable-debuginfod=no|yes query debuginfod servers for missing
+ debuginfo [yes]
user options for Valgrind tools that report errors:
--xml=yes emit error output in XML (some tools only)