summaryrefslogtreecommitdiffstats
path: root/test_code/ovmf_with_gdb_16_5_2022.txt
diff options
context:
space:
mode:
authorRegia König2022-08-08 14:39:17 +0200
committerRegia König2022-08-08 14:39:17 +0200
commit241dbe4e78b4286aa2fc2b7df345c6bedaa6fa33 (patch)
treeccafb71e0044f498a00d76cf98d6e8d9d57eb9be /test_code/ovmf_with_gdb_16_5_2022.txt
parentMore detailed documantation on gdb with ovmf (diff)
downloadmemtest86-241dbe4e78b4286aa2fc2b7df345c6bedaa6fa33.tar.gz
memtest86-241dbe4e78b4286aa2fc2b7df345c6bedaa6fa33.tar.xz
memtest86-241dbe4e78b4286aa2fc2b7df345c6bedaa6fa33.zip
last changes
Diffstat (limited to 'test_code/ovmf_with_gdb_16_5_2022.txt')
-rw-r--r--test_code/ovmf_with_gdb_16_5_2022.txt34
1 files changed, 33 insertions, 1 deletions
diff --git a/test_code/ovmf_with_gdb_16_5_2022.txt b/test_code/ovmf_with_gdb_16_5_2022.txt
index 5062c35..c5b8b7a 100644
--- a/test_code/ovmf_with_gdb_16_5_2022.txt
+++ b/test_code/ovmf_with_gdb_16_5_2022.txt
@@ -92,12 +92,34 @@ add-symbol-file edk2/Build/OvmfX64/DEBUG_GCC5/X64/DxeCore.debug 0x7ea8240
add-symbol-file edk2/Build/OvmfX64/DEBUG_GCC5/X64/DevicePathDxe.debug 0x7b8f240
Now we are ready.
+$ less debug.log
+...
+The 0th FV start address is 0x0000082000
+...
+Loading PEIM at 0x0000082BFC0
+ Entry Point = 0x0000082F40A PcdPeim.efi
+...
+
$ make debug
Let’s place a breakpoint at BootServices->HandleProtocol().
(gdb) source gdbscript
-q
+.
+.
+.
+add symbol table from file "/home/koenigr/Memtest/git/edk2/Build/OvmfX64/DEBUG_GCC5/X64/UsbBusDxe.debug" at
+ .text_addr = 0x6c85240
+add symbol table from file "/home/koenigr/Memtest/git/edk2/Build/OvmfX64/DEBUG_GCC5/X64/UsbKbDxe.debug" at
+ .text_addr = 0x6cb3240
+add symbol table from file "/home/koenigr/Memtest/git/edk2/Build/OvmfX64/DEBUG_GCC5/X64/UsbMassStorageDxe.debug" at
+ .text_addr = 0x6c6d240
+add symbol table from file "/home/koenigr/Memtest/git/edk2/Build/OvmfX64/DEBUG_GCC5/X64/QemuVideoDxe.debug" at
+ .text_addr = 0x6c66240
+add symbol table from file "/home/koenigr/Memtest/git/edk2/Build/OvmfX64/DEBUG_GCC5/X64/VirtioGpuDxe.debug" at
+ .text_addr = 0x6c60240
+add symbol table from file "/home/koenigr/Memtest/git/edk2/Build/OvmfX64/DEBUG_GCC5/X64/Shell.debug" at
+ .text_addr = 0x64f5240
(gdb) info functions CoreHandleProtocol
All functions matching regular expression "CoreHandleProtocol":
@@ -108,6 +130,13 @@ EFI_STATUS CoreHandleProtocol(EFI_HANDLE, EFI_GUID *, void **);
Symbol "CoreHandleProtocol" is a function at address 0x7ea4aa9.
(gdb) b CoreHandleProtocol
+
+(gdb) info symbol 0x82F40A
+_ModuleEntryPoint in section .text of /home/koenigr/Memtest/git/edk2/Build/OvmfX64/DEBUG_GCC5/X64/PcdPeim.debug
+
+(gdb) b *0x82F40A
+Breakpoint 2 at 0x82f40a: file /home/koenigr/Memtest/git/edk2/MdePkg/Library/PeimEntryPoint/PeimEntryPoint.c, line 33.
+
(gdb) target remote localhost:1234
Remote debugging using localhost:1234
warning: No executable has been specified and target does not support
@@ -115,8 +144,11 @@ determining executable automatically. Try using the "file" command.
0x000000000000fff0 in ?? ()
(gdb) c
+
The debugger stops, and we can do source code level debug.
+!!!!!!!!!!!!!!!!!!!!!!!!!!! DOES NOT WORK !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
┌──/home/akira/src/ovmf-debug/edk2/MdeModulePkg/Core/Dxe/Hand/Handle.c──────┐
│933 CoreHandleProtocol ( │
│934 IN EFI_HANDLE UserHandle, │