> On Jan. 19, 2015, 6:56 p.m., rmudgett wrote: > > cleanup_all_regs() should just be the ao2_callback() line and the original > > guts should be put into a cleanup_registration() ao2_callback function.
I'm not sure I understand your comment. cleanup_all_regs is being called by the ao2_callback, and is only called by the ao2_callback. Why would the structure need to be changed? > On Jan. 19, 2015, 6:56 p.m., rmudgett wrote: > > /branches/13/channels/chan_sip.c, lines 31194-31195 > > <https://reviewboard.asterisk.org/r/4355/diff/1/?file=70762#file70762line31194> > > > > Is "remove all SIP registry items" supposed to be a REF_DEBUG log tag? > > If so you need to use ao2_t_callback(). As it is you are passing the > > string as the arg pointer to cleanup_all_regs(). Eek. Fixed! - Matt ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviewboard.asterisk.org/r/4355/#review14236 ----------------------------------------------------------- On Jan. 19, 2015, 4:34 p.m., Matt Jordan wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviewboard.asterisk.org/r/4355/ > ----------------------------------------------------------- > > (Updated Jan. 19, 2015, 4:34 p.m.) > > > Review request for Asterisk Developers. > > > Bugs: ASTERISK-24640 and ASTERISK-24673 > https://issues.asterisk.org/jira/browse/ASTERISK-24640 > https://issues.asterisk.org/jira/browse/ASTERISK-24673 > > > Repository: Asterisk > > > Description > ------- > > When the SIP registrations were migrated to using ao2 in what was then trunk, > the explicit destruction of the registrations on module reload was removed > and not replaced with an ao2 equivalent. Debugging done by Stefan Engström, > the issue reporter, on ASTERISK-24673 confirmed that the reference in the > registry_list container was being leaked. > > Since the purpose of cleanup_all_regs is to prep a registration for > destruction, this function has been converted to being an ao2_callback > function callback, and an ao2_callback with OBJ_MULTIPLE | OBJ_NODATA | > OBJ_UNLINK is now used to invoke the function. This cleans up each > registration, but also removes it from the registration container > registry_list. > > > Diffs > ----- > > /branches/13/channels/chan_sip.c 430794 > > Diff: https://reviewboard.asterisk.org/r/4355/diff/ > > > Testing > ------- > > Created an outbound registration to a SIP trunk. Confirmed that Asterisk was > registered. Commented out the "register" line sip.conf, reloaded, and > confirmed that the registration was gone. > > Stefan tested the patch independently and also confirmed that it fixed it on > his test system. > > > Thanks, > > Matt Jordan > >
-- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev