diff options
author | Jenkins2 <jenkins2@gerrit.asterisk.org> | 2018-02-16 17:48:54 -0600 |
---|---|---|
committer | Gerrit Code Review <gerrit2@gerrit.digium.api> | 2018-02-16 17:48:54 -0600 |
commit | ba75d536691ae560b0e07c05bfecee5878330b91 (patch) | |
tree | 3ffd3221661ca43efe8d4ea1613478484d8a51b6 | |
parent | 77a85bfed7debbdb66d9d3233ea6f57de23ac279 (diff) | |
parent | af2dd3a6785375334d85ec74051b6af75927832d (diff) |
Merge "bridge_roles: Use a non-locking linked list where appropriate"
-rw-r--r-- | main/bridge_roles.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/main/bridge_roles.c b/main/bridge_roles.c index a9b95a352..6dbae6fa7 100644 --- a/main/bridge_roles.c +++ b/main/bridge_roles.c @@ -51,12 +51,12 @@ struct bridge_role_option { struct bridge_role { AST_LIST_ENTRY(bridge_role) list; - AST_LIST_HEAD(, bridge_role_option) options; + AST_LIST_HEAD_NOLOCK(, bridge_role_option) options; char role[AST_ROLE_LEN]; }; struct bridge_roles_datastore { - AST_LIST_HEAD(, bridge_role) role_list; + AST_LIST_HEAD_NOLOCK(, bridge_role) role_list; }; /*! @@ -128,6 +128,8 @@ static struct bridge_roles_datastore *setup_bridge_roles_datastore(struct ast_ch return NULL; } + AST_LIST_HEAD_INIT_NOLOCK(&roles_datastore->role_list); + datastore->data = roles_datastore; ast_channel_datastore_add(chan, datastore); return roles_datastore; @@ -264,6 +266,8 @@ static int setup_bridge_role(struct bridge_roles_datastore *roles_datastore, con return -1; } + AST_LIST_HEAD_INIT_NOLOCK(&role->options); + ast_copy_string(role->role, role_name, sizeof(role->role)); AST_LIST_INSERT_TAIL(&roles_datastore->role_list, role, list); |