[lldb] [llvm] [lldb][Process/FreeBSDKernelCore] Set kernel displacement (PR #183975)

Minsoo Choo via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 12 10:40:49 PDT 2026


================
@@ -324,6 +326,28 @@ lldb::addr_t ProcessFreeBSDKernelCore::FindSymbol(const char *name) {
   return sym ? sym->GetLoadAddress(&GetTarget()) : LLDB_INVALID_ADDRESS;
 }
 
+void ProcessFreeBSDKernelCore::SetKernelDisplacement() {
+  kssize_t displacement = kvm_kerndisp(m_kvm);
+
+  if (displacement == 0)
+    return;
+
+  Target &target = GetTarget();
+  lldb::ModuleSP kernel_module_sp = target.GetExecutableModule();
+  if (!kernel_module_sp)
+    return;
+
+  bool changed = false;
+  kernel_module_sp->SetLoadAddress(
+      target, static_cast<lldb::addr_t>(displacement), true, changed);
----------------
mchoo7 wrote:

Yes. I also added comment line above for more explanation.

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


More information about the llvm-commits mailing list