You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The issue applies in 64-bit and 32-bit, and in LLDB and GDB.
Example GDB output:
Mikes-iMac:Debug mjsbeaton$ EFI_DEBUGGER=GDB ./efidebug.tool
GNU gdb (GDB) 13.2
Copyright (C) 2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-apple-darwin21.6.0".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from GdbSyms/Bin/X64_XCODE5/GdbSyms.dll...
The target architecture is set to "i386:x86-64:intel".
Remote debugging using localhost:8864
0x0000000006290be6 in ?? ()
EFI_SYSTEM_TABLE_POINTER @ 0x6c00000
EFI_SYSTEM_TABLE @ 0x121552920:x
Connected to EDK II (Rev. 0x10000)
ConfigurationTable @ 0x73ecc98, 0xa entries
DebugImageInfoTable @ 0x72ce018, 0x5c entries
Found 92 images...
Python Exception <class 'gdb.MemoryError'>: Cannot access memory at address 0x85610014
Error occurred in Python: Cannot access memory at address 0x85610014
Function "DebugBreak" not defined.
Make breakpoint pending on future shared library load? (y or [n])
From the above logs, the data in EfiDebugImageInfoTable appears to be present but corrupt.
NB I assumed, once I noticed it, that setting gEfiMdePkgTokenSpaceGuid.PcdImageLoaderDebugSupport to TRUE in OpenCorePkg.dsc would resolve the issue, but it does not.
With help from @mhaeuser in understanding the new standard format and new info made available in the EfiDebugImageInfoTable, I am updating efidebug.tool to support this.
efidebug.tool
cannot extractEFI_DEBUG_IMAGE_INFO
data since commit acidanthera/OpenCorePkg@43c4931.The basic output is:
Adding some print statements to
lldb_uefi.py
to see what is going on, we get:Normal output (acidanthera/OpenCorePkg@b5984a3 and before) with the same print output added is:
The issue applies in 64-bit and 32-bit, and in LLDB and GDB.
Example GDB output:
From the above logs, the data in
EfiDebugImageInfoTable
appears to be present but corrupt.NB I assumed, once I noticed it, that setting
gEfiMdePkgTokenSpaceGuid.PcdImageLoaderDebugSupport
toTRUE
inOpenCorePkg.dsc
would resolve the issue, but it does not.I am using what is I believe a completely standard way to set up OC code for debugging with OVMF, as mentioned e.g. in the first three bullet points in #2195 or documented in https://github.com/acidanthera/OpenCorePkg/tree/master/Debug README.
cc @MikhailKrichanov
The text was updated successfully, but these errors were encountered: