[Lldb-commits] [lldb] [LLDB] Add FreeBSD kernel coredump matching check. (PR #80785)

David Spickett via lldb-commits lldb-commits at lists.llvm.org
Tue Feb 6 02:46:33 PST 2024


================
@@ -218,10 +230,16 @@ lldb_private::UUID DynamicLoaderFreeBSDKernel::CheckForKernelImageAtAddress(
     return UUID();
   }
 
-  // In here, I should check is_kernel for memory_module_sp
-  // However, the ReadModuleFromMemory reads wrong section so that this check
-  // will failed
-  ArchSpec kernel_arch(llvm::ELF::convertEMachineToArchName(header.e_machine));
+  // Because the memory module is read from memory and in the memory, the type
+  // is eTypeExecutable so we have to assign the type manually
+  memory_module_sp->GetObjectFile()->SetType(ObjectFile::eTypeCoreFile);
+
+  if (memory_module_sp->GetUUID() !=
+      process->GetTarget().GetExecutableModule()->GetUUID()) {
+    LLDB_LOGF(log, "DynamicLoaderFreeBSDKernel::CheckForKernelImageAtAddress "
----------------
DavidSpickett wrote:

Could we log more specific failure reasons before the other `return` statements above and then make this more specific "coredump build-id did not match binary"?

https://github.com/llvm/llvm-project/pull/80785


More information about the lldb-commits mailing list