-
Notifications
You must be signed in to change notification settings - Fork 583
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[CRASH] Accounting ctx free in free_cell context #3498
Comments
collected debug logs for this, the crash happens inside a process that never handles SIP ( ie. a TCP worker on a non-TCP receiving server ). Process handles an MI termination of early dialog, looks up the T and sets it ( leaking it now )
Later, process runs a TMCB_TRANS_DELETED :
some 'strangeness' in https://github.com/OpenSIPS/opensips/blob/master/modules/tm/t_hooks.c#L225 , this function does not do set_t with the new transaction, but only restores it. Finally when acc cleanup happens in the same process context, the crash occurs :
at this point, unsure if #3500 is the right fix. Should the dialog module cleanup the T after it manually looks it up in https://github.com/OpenSIPS/opensips/blob/master/modules/dialog/dlg_req_within.c#L475 ? |
A bit different example this time, of a non-early terminated dialog :
we have a ref 0 dialog, so not even sure if it's save to address it from the ACC context.. |
OpenSIPS version you are running
Crash Core Dump
Note that there exists a dangling T pointer ( probably pointing to an already de-allocated transaction )
Describe the traffic that generated the bug
Unknown
To Reproduce
Unknown
Relevant System Logs
None
OS/environment information
Debian 11.10, installed from official OpenSIPS repo.
Additional context
OpenSIPS running without B2B, generating ACC ( cdrs | failed ) with dialog context , doing push notifications via manual notify_on_event and running local_route for various script processing.
The text was updated successfully, but these errors were encountered: