[asterisk-dev] [Code Review] 3756: refcounter.py: use delta's to track current reference count, treat **destroyed** as just another "-1", partially fix a race condition in astobj2

Corey Farrell reviewboard at asterisk.org
Sun Jul 13 16:47:10 CDT 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3756/
-----------------------------------------------------------

(Updated July 13, 2014, 4:47 p.m.)


Status
------

This change has been marked as submitted.


Review request for Asterisk Developers and Matt Jordan.


Changes
-------

Committed in revision 418504


Repository: Asterisk


Description
-------

This incorporates the ideas from r3572, with an improvement.  REF_DEBUG is still effective when ao2_ref(obj, -1) is run on an object that is already destroyed.

In addition refcounter.py is updated to use delta's to track the current reference count.  This works around a race condition where **destroyed** could be printed before the unref from 2.


Diffs
-----

  /branches/1.8/main/astobj2.c 417500 
  /branches/1.8/contrib/scripts/refcounter.py 417486 

Diff: https://reviewboard.asterisk.org/r/3756/diff/


Testing
-------

Verified that all false reported leaks are no longer.

One thing I noticed, the updated refcounter.py took 40 seconds to process a file when the same file was processed in 30 seconds before the change.  


Thanks,

Corey Farrell

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20140713/fe418807/attachment.html>


More information about the asterisk-dev mailing list