[PATCH] D63540: Fix lookup of symbols with the same address range but different binding
Muhammad Omair Javaid via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Dec 20 13:25:54 PST 2019
omjavaid added a comment.
@jankratochvil @labath
Some new information below:
ProcessGDBRemote::DoAllocateMemory fails when it is called for expression evaluation preparation. This happens when both lldb and lldb-server are running on 32-bit arm host (various distros verified). If we debug using lldb-server running remotely and lldb is hosted locally on an x86-64 machine then problem does not appear.
Further more this does appear to be related to symbols size zeroing as failure happens due to failing InferiorCallMmap resulting in failure of ProcessGDBRemote::DoAllocateMemory. I am not aware of the exact problem but size zeroing somewhere causes corruption in thread plan prepared for expression eval with mmap.
I have been trying to debug this issue but actual hardware does not have enough resources to support a debug symbol build and all I have is logging and thats why have not reached a conclusion so far. But I am willing to further collaborate to get this issue fixed as it is important for lldb on arm 32 and could be a problem on other architectures which are not being tested actively right now.
Below is a log for your reference below if you can point out anything that I can go look out for specifically. PS: your might see some extra log messages which i have added for debugging here n there to see actual point of failure.
**Correct - log )** https://pastebin.ubuntu.com/p/8Z4wB5W6fM/
**Failing - log )** https://pastebin.ubuntu.com/p/g6ngkqS7p3/
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D63540/new/
https://reviews.llvm.org/D63540
More information about the llvm-commits
mailing list