I just ran it in a loop on a simple backtrace done using DWARF info, and one done using EXIDX info, and neither of them seems to leak in my test. But I’m not sure whether there are other edge cases that would need to be examined.
From: [email protected] [mailto:[email protected]] On Behalf Of Arun Sharma Sent: Thursday, May 09, 2013 9:52 AM To: Fischer, Matt Cc: [email protected]; Tommi Rantala; Ken Werner Subject: Re: [Libunwind-devel] Crash when unwinding using ARM exidx info +Ken, Tommi On Tue, May 7, 2013 at 3:58 PM, Fischer, Matt <[email protected]<mailto:[email protected]>> wrote: I think the right fix is to change the condition to: else if (pi->unwind_info && pi->format == UNW_INFO_FORMAT_TABLE) This works, because the DWARF code sets pi->format to that value when allocating an unwind_info, but the exidx code sets it instead to UNW_INFO_FORMAT_ARM_EXIDX. But I'm not very familiar with this code, so I'm not positive this is the correct fix. Could somebody let me know whether I'm on the right track? If so, I'll happily put a patch together. I think your analysis is right, but I'm not convinced that we're properly freeing memory here. Do you see leaks if you unwind in a loop? -Arun ________________________________ CONFIDENTIALITY NOTICE: This email and any attachments are for the sole use of the intended recipient(s) and contain information that may be confidential and/or legally privileged. If you have received this email in error, please notify the sender by reply email and delete the message. Any disclosure, copying, distribution or use of this communication (including attachments) by someone other than the intended recipient is prohibited. Thank you.
_______________________________________________ Libunwind-devel mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/libunwind-devel
