[lldb-dev] [Bug 42153] New: Aarch64 - FreeBSD 12 : Expression evaluation causes segfault

via lldb-dev lldb-dev at lists.llvm.org
Thu Jun 6 03:03:54 PDT 2019


https://bugs.llvm.org/show_bug.cgi?id=42153

            Bug ID: 42153
           Summary: Aarch64 - FreeBSD 12 : Expression evaluation causes
                    segfault
           Product: lldb
           Version: unspecified
          Hardware: Other
                OS: FreeBSD
            Status: NEW
          Severity: normal
          Priority: P
         Component: All Bugs
          Assignee: lldb-dev at lists.llvm.org
          Reporter: itzurabhi at gmail.com
                CC: jdevlieghere at apple.com, llvm-bugs at lists.llvm.org

Created attachment 22075
  --> https://bugs.llvm.org/attachment.cgi?id=22075&action=edit
Backtrace & Thread List

built the master branch(llvm,lldb,clang) from the git on 4th July 2019 on a
AARCH64 FreeBSD12.0 VM (qemu)

while running sample program with following commands : 
// sample
int main(int argc,const char ** argv){
        int z = argc + 10;
        return z;
}

/////

(LLDB)b main
(LLDB)r
(LLDB)n
(LLDB)p argc

(SEGFAULT)


=============

I faced the same issue on 7.1 release branch also, same segfault/back trace was
generated.So tested latest git in order to see if it was fixed after that.


>From my analysis , this line causes:

(data_sp && ReadGPR() && ReadFPR())

https://github.com/llvm-mirror/lldb/blob/master/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm64.cpp#L167

m_register_info_up - point to a zero address.only the constructor of the class
calls .reset on this smart pointer.


I have done some debugging and suspect 

(RegisterContextPOSIXProcessMonitor_arm64::ReadGPR())
https://github.com/llvm-mirror/lldb/blob/master/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm64.cpp#L35

or

(RegisterContextPOSIXProcessMonitor_arm64::ReadFPR())
https://github.com/llvm-mirror/lldb/blob/master/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm64.cpp#L40

might be causing the overwrite. please advise on where to look further, I am
ready to work on a fix.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20190606/9cfd108d/attachment.html>


More information about the lldb-dev mailing list