[all-commits] [llvm/llvm-project] e77ac4: [lldb][debuginfod] Fix the DebugInfoD PR that caus...

Kevin Frei via All-commits all-commits at lists.llvm.org
Tue Aug 6 11:06:25 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e77ac42bccb8c26bbf4b74d8e92eb09e7fa1b218
      https://github.com/llvm/llvm-project/commit/e77ac42bccb8c26bbf4b74d8e92eb09e7fa1b218
  Author: Kevin Frei <freik at meta.com>
  Date:   2024-08-06 (Tue, 06 Aug 2024)

  Changed paths:
    M lldb/include/lldb/Host/Config.h.cmake
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
    M lldb/source/API/SBDebugger.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
    M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
    A lldb/test/API/debuginfod/Normal/Makefile
    A lldb/test/API/debuginfod/Normal/TestDebuginfod.py
    A lldb/test/API/debuginfod/Normal/main.c
    A lldb/test/API/debuginfod/SplitDWARF/Makefile
    A lldb/test/API/debuginfod/SplitDWARF/TestDebuginfodDWP.py
    A lldb/test/API/debuginfod/SplitDWARF/main.c

  Log Message:
  -----------
  [lldb][debuginfod] Fix the DebugInfoD PR that caused issues when working with stripped binaries (#99362)

@walter-erquinigo found the the [PR with testing and a fix for
DebugInfoD](https://github.com/llvm/llvm-project/pull/98344) caused an
issue when working with stripped binaries.

The issue is that when you're working with split-dwarf, there are *3*
possible files: The stripped binary the user is debugging, the
"only-keep-debug" *or* unstripped binary, plus the `.dwp` file. The
debuginfod plugin should provide the unstripped/OKD binary. However, if
the debuginfod plugin fails, the default symbol locator plugin will just
return the stripped binary, which doesn't help. So, to address that, the
SymbolVendorELF code checks to see if the SymbolLocator's
ExecutableObjectFile request returned the same file, and bails if that's
the case. You can see the specific diff as the second commit in the PR.

I'm investigating adding a test: I can't quite get a simple repro, and
I'm unwilling to make any additional changes to Makefile.rules to this
diff, for Pavlovian reasons.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list