[asterisk-commits] kmoore: trunk r371693 - in /trunk: ./ main/utils.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon Aug 27 09:13:48 CDT 2012


Author: kmoore
Date: Mon Aug 27 09:13:44 2012
New Revision: 371693

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=371693
Log:
Implement workaround for BETTER_BACKTRACES crash

When compiling with BETTER_BACKTRACES enabled, Asterisk will sometimes
crash when "core show locks" is run. This happens regularly in the
testsuite since several tests run "core show locks" to help with
debugging. This seems to be a fault with libraries on certain operating
systems (notably CentOS 6.2/6.3) running on virtual machines and
utilizing gcc 4.4.6.

(closes issue ASTERISK-20090)
........

Merged revisions 371690 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 371691 from http://svn.asterisk.org/svn/asterisk/branches/10
........

Merged revisions 371692 from http://svn.asterisk.org/svn/asterisk/branches/11

Modified:
    trunk/   (props changed)
    trunk/main/utils.c

Propchange: trunk/
------------------------------------------------------------------------------
--- branch-11-merged (original)
+++ branch-11-merged Mon Aug 27 09:13:44 2012
@@ -1,1 +1,1 @@
-/branches/11:1-371121,371143,371146,371200,371227,371258,371272,371295,371324,371355,371382,371395,371399,371425-371426,371438,371482,371492,371507,371516,371518,371520,371546,371571,371592,371619,371664
+/branches/11:1-371121,371143,371146,371200,371227,371258,371272,371295,371324,371355,371382,371395,371399,371425-371426,371438,371482,371492,371507,371516,371518,371520,371546,371571,371592,371619,371664,371692

Modified: trunk/main/utils.c
URL: http://svnview.digium.com/svn/asterisk/trunk/main/utils.c?view=diff&rev=371693&r1=371692&r2=371693
==============================================================================
--- trunk/main/utils.c (original)
+++ trunk/main/utils.c Mon Aug 27 09:13:44 2012
@@ -795,6 +795,8 @@
 		return;
 	}
 
+	/* store frame count locally to avoid the memory corruption that
+	 * sometimes happens on virtualized CentOS 6.x systems */
 	num_frames = bt->num_frames;
 	if ((symbols = ast_bt_get_symbols(bt->addresses, num_frames))) {
 		int frame_iterator;




More information about the asterisk-commits mailing list