libunwind-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Problems getting a stack backtrace with libunwind on arm platform


From: John Knight
Subject: Problems getting a stack backtrace with libunwind on arm platform
Date: Tue, 12 May 2020 23:55:10 +0000

Hi All,

 

We are having problems getting a stack backtrace using libunwind on arm-based embedded Linux platform.  I have updated libunwind to version 1.4.0 and when we get a SIG 11 fault, I see the following backtrace:

 

com.cisco.spvtg.ccsp.tr069pa: BACKTRACE: start
com.cisco.spvtg.ccsp.tr069pa: BACKTRACE: #1  ip=0x00000000000220d4 sp=0x00000000b62969c0 name=CcspTr069PaSsp_GetCustomForcedInformParams + 0x85bc
com.cisco.spvtg.ccsp.tr069pa: BACKTRACE: #2  ip=0x00000000000227a4 sp=0x00000000b62969c8 name=sig_handler + 0x304
com.cisco.spvtg.ccsp.tr069pa: BACKTRACE: #3  ip=0x00000000b684faec sp=0x00000000b62969f8 name=_setjmp + 0xc
com.cisco.spvtg.ccsp.tr069pa: BACKTRACE: #4  ip=0x0000000000000000 sp=0x00000000b6296ce8 name= + 0xc
com.cisco.spvtg.ccsp.tr069pa: BACKTRACE: #5  ip=0x0000000000000000 sp=0x00000000b6296ce8 name= + 0xc
com.cisco.spvtg.ccsp.tr069pa: BACKTRACE: #6  ip=0x0000000000000000 sp=0x00000000b6296ce8 name= + 0xc
com.cisco.spvtg.ccsp.tr069pa: BACKTRACE: #7  ip=0x0000000000000000 sp=0x00000000b6296ce8 name= + 0xc
com.cisco.spvtg.ccsp.tr069pa: BACKTRACE: #8  ip=0x0000000000000000 sp=0x00000000b6296ce8 name= + 0xc
com.cisco.spvtg.ccsp.tr069pa: BACKTRACE: #9  ip=0x0000000000000000 sp=0x00000000b6296ce8 name= + 0xc
com.cisco.spvtg.ccsp.tr069pa: BACKTRACE: #10 ip=0x0000000000000000 sp=0x00000000b6296ce8 name= + 0xc
com.cisco.spvtg.ccsp.tr069pa: BACKTRACE: #11 ip=0x0000000000000000 sp=0x00000000b6296ce8 name= + 0xc
com.cisco.spvtg.ccsp.tr069pa: BACKTRACE: Maximum backtrace level reached
com.cisco.spvtg.ccsp.tr069pa: BACKTRACE: done
com.cisco.spvtg.ccsp.tr069pa: Signal 11 received, exiting!

 

Please note the IP address before the setjmp is a 0x0.   I had added the Maximum backtrace level reached because if I did not have this, the backtrace function would continue indefinitely spewing out records with IP=0. 

 

I have a couple of questions… I had read somewhere that signal handlers actually switch stacks to handle the signal.  Is this true?  If so, how does libunwind find the application’s stack?  Secondly, if I see a 0 IP address on the backtrace, what does this mean?  Clearly a 0 return address is not valid.  Lastly, if I run the backtrace with an application that is not built with debug enabled, will libunwind still generate a valid backtrace?  My understanding is the optimizer does optimize out some code dealing with the stack frame… but hopefully not so much that a stack backtrace cannot be achieved.  I do understand that symbols may not be available in a non-debug image.

 

If anyone has any ideas on what is happening with this, I would really appreciate your thoughts and suggestions on how to fix this.

 

Thanks!

 

John Knight

address@hidden

 

 

Sent from Mail for Windows 10

 

__________________________________________________________________ Confidential This e-mail and any files transmitted with it are the property of Belkin International, Inc. and/or its affiliates, are confidential, and are intended solely for the use of the individual or entity to whom this e-mail is addressed. If you are not one of the named recipients or otherwise have reason to believe that you have received this e-mail in error, please notify the sender and delete this message immediately from your computer. Any other use, retention, dissemination, forwarding, printing or copying of this e-mail is strictly prohibited. Pour la version française: http://www.belkin.com/email-notice/French.html Für die deutsche Übersetzung: http://www.belkin.com/email-notice/German.html __________________________________________________________________

reply via email to

[Prev in Thread] Current Thread [Next in Thread]