Reduce call-id logging resource usage.
Since there is no need for the call-id logging ao2 object to have a lock, don't create it with one. ........ Merged revisions 379232 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@379233 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
parent
5e46455806
commit
9b6d9bcf99
|
@ -1306,16 +1306,14 @@ void ast_callid_strnprint(char *buffer, size_t buffer_size, struct ast_callid *c
|
||||||
struct ast_callid *ast_create_callid(void)
|
struct ast_callid *ast_create_callid(void)
|
||||||
{
|
{
|
||||||
struct ast_callid *call;
|
struct ast_callid *call;
|
||||||
int using;
|
|
||||||
|
|
||||||
if (!(call = ao2_alloc(sizeof(struct ast_callid), NULL))) {
|
call = ao2_alloc_options(sizeof(struct ast_callid), NULL, AO2_ALLOC_OPT_LOCK_NOLOCK);
|
||||||
|
if (!call) {
|
||||||
ast_log(LOG_ERROR, "Could not allocate callid struct.\n");
|
ast_log(LOG_ERROR, "Could not allocate callid struct.\n");
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
using = ast_atomic_fetchadd_int(&next_unique_callid, +1);
|
call->call_identifier = ast_atomic_fetchadd_int(&next_unique_callid, +1);
|
||||||
|
|
||||||
call->call_identifier = using;
|
|
||||||
ast_debug(3, "CALL_ID [C-%08x] created by thread.\n", call->call_identifier);
|
ast_debug(3, "CALL_ID [C-%08x] created by thread.\n", call->call_identifier);
|
||||||
return call;
|
return call;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue