From: Jason Molenda Date: Thu, 31 Jul 2014 06:07:04 +0000 (+0000) Subject: When doing an exhaustive search for the kernel in memory, also look X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a02869de00a090576744abf462e75bc8b27261e6;p=platform%2Fupstream%2Fllvm.git When doing an exhaustive search for the kernel in memory, also look at 16k offsets. llvm-svn: 214387 --- diff --git a/lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp b/lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp index 22fb029..fa518d3 100644 --- a/lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp +++ b/lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp @@ -326,6 +326,8 @@ DynamicLoaderDarwinKernel::SearchForKernelNearPC (Process *process) return addr + 0x1000; if (CheckForKernelImageAtAddress (addr + 0x2000, process).IsValid()) return addr + 0x2000; + if (CheckForKernelImageAtAddress (addr + 0x4000, process).IsValid()) + return addr + 0x4000; i++; addr -= 0x100000; } @@ -376,6 +378,8 @@ DynamicLoaderDarwinKernel::SearchForKernelViaExhaustiveSearch (Process *process) return addr + 0x1000; if (CheckForKernelImageAtAddress (addr + 0x2000, process).IsValid()) return addr + 0x2000; + if (CheckForKernelImageAtAddress (addr + 0x4000, process).IsValid()) + return addr + 0x4000; addr += 0x100000; } return LLDB_INVALID_ADDRESS;