summaryrefslogtreecommitdiff
path: root/channels
diff options
context:
space:
mode:
Diffstat (limited to 'channels')
-rw-r--r--channels/chan_alsa.c2
-rw-r--r--channels/chan_console.c2
-rw-r--r--channels/chan_dahdi.c8
-rw-r--r--channels/chan_gtalk.c4
-rw-r--r--channels/chan_h323.c4
-rw-r--r--channels/chan_iax2.c7
-rw-r--r--channels/chan_jingle.c4
-rw-r--r--channels/chan_mgcp.c4
-rw-r--r--channels/chan_misdn.c14
-rw-r--r--channels/chan_motif.c4
-rw-r--r--channels/chan_nbs.c2
-rw-r--r--channels/chan_oss.c2
-rw-r--r--channels/chan_phone.c2
-rw-r--r--channels/chan_pjsip.c13
-rw-r--r--channels/chan_sip.c2
-rw-r--r--channels/chan_skinny.c4
-rw-r--r--channels/chan_unistim.c6
-rw-r--r--channels/chan_vpb.cc2
-rw-r--r--channels/sig_analog.c4
-rw-r--r--channels/sig_pri.c2
20 files changed, 6 insertions, 86 deletions
diff --git a/channels/chan_alsa.c b/channels/chan_alsa.c
index 065eff551..60bbacbb8 100644
--- a/channels/chan_alsa.c
+++ b/channels/chan_alsa.c
@@ -581,7 +581,6 @@ static struct ast_channel *alsa_new(struct chan_alsa_pvt *p, int state, const ch
if (!(tmp = ast_channel_alloc(1, state, 0, 0, "", p->exten, p->context, linkedid, 0, "ALSA/%s", indevname)))
return NULL;
- ast_channel_lock(tmp);
ast_channel_stage_snapshot(tmp);
ast_channel_tech_set(tmp, &alsa_tech);
@@ -602,7 +601,6 @@ static struct ast_channel *alsa_new(struct chan_alsa_pvt *p, int state, const ch
ast_jb_configure(tmp, &global_jbconf);
ast_channel_stage_snapshot_done(tmp);
- ast_channel_unlock(tmp);
if (state != AST_STATE_DOWN) {
if (ast_pbx_start(tmp)) {
diff --git a/channels/chan_console.c b/channels/chan_console.c
index 6f694c2c9..922c53b42 100644
--- a/channels/chan_console.c
+++ b/channels/chan_console.c
@@ -428,7 +428,6 @@ static struct ast_channel *console_new(struct console_pvt *pvt, const char *ext,
return NULL;
}
- ast_channel_lock(chan);
ast_channel_stage_snapshot(chan);
ast_channel_tech_set(chan, &console_tech);
@@ -445,7 +444,6 @@ static struct ast_channel *console_new(struct console_pvt *pvt, const char *ext,
ast_jb_configure(chan, &global_jbconf);
ast_channel_stage_snapshot_done(chan);
- ast_channel_unlock(chan);
if (state != AST_STATE_DOWN) {
if (ast_pbx_start(chan)) {
diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c
index 843254c56..2eba958a8 100644
--- a/channels/chan_dahdi.c
+++ b/channels/chan_dahdi.c
@@ -1667,9 +1667,7 @@ static void publish_dahdichannel(struct ast_channel *chan, int span, const char
return;
}
- ast_channel_lock(chan);
ast_channel_publish_blob(chan, dahdichannel_type(), blob);
- ast_channel_unlock(chan);
}
/*!
@@ -8918,7 +8916,6 @@ static struct ast_channel *dahdi_new(struct dahdi_pvt *i, int state, int startpb
return NULL;
}
- ast_channel_lock(tmp);
ast_channel_stage_snapshot(tmp);
if (callid) {
@@ -9099,7 +9096,6 @@ static struct ast_channel *dahdi_new(struct dahdi_pvt *i, int state, int startpb
pbx_builtin_setvar_helper(tmp, v->name, v->value);
ast_channel_stage_snapshot_done(tmp);
- ast_channel_unlock(tmp);
ast_module_ref(ast_module_info->self);
@@ -9618,7 +9614,6 @@ static void *analog_ss_thread(void *data)
getforward = 0;
} else {
res = tone_zone_play_tone(p->subs[idx].dfd, -1);
- ast_channel_lock(chan);
ast_channel_exten_set(chan, exten);
if (!ast_strlen_zero(p->cid_num)) {
if (!p->hidecallerid)
@@ -9631,7 +9626,6 @@ static void *analog_ss_thread(void *data)
ast_set_callerid(chan, NULL, p->cid_name, NULL);
}
ast_setstate(chan, AST_STATE_RING);
- ast_channel_unlock(chan);
dahdi_ec_enable(p);
res = ast_pbx_run(chan);
if (res) {
@@ -10395,10 +10389,8 @@ static void *analog_ss_thread(void *data)
my_handle_notify_message(chan, p, flags, -1);
- ast_channel_lock(chan);
ast_setstate(chan, AST_STATE_RING);
ast_channel_rings_set(chan, 1);
- ast_channel_unlock(chan);
p->ringt = p->ringt_base;
res = ast_pbx_run(chan);
if (res) {
diff --git a/channels/chan_gtalk.c b/channels/chan_gtalk.c
index 72c01ac8d..d6a094941 100644
--- a/channels/chan_gtalk.c
+++ b/channels/chan_gtalk.c
@@ -1150,7 +1150,6 @@ static struct ast_channel *gtalk_new(struct gtalk *client, struct gtalk_pvt *i,
return NULL;
}
- ast_channel_lock(tmp);
ast_channel_stage_snapshot(tmp);
ast_channel_tech_set(tmp, &gtalk_tech);
@@ -1227,7 +1226,6 @@ static struct ast_channel *gtalk_new(struct gtalk *client, struct gtalk_pvt *i,
ast_jb_configure(tmp, &global_jbconf);
ast_channel_stage_snapshot_done(tmp);
- ast_channel_unlock(tmp);
if (state != AST_STATE_DOWN && ast_pbx_start(tmp)) {
ast_log(LOG_WARNING, "Unable to start PBX on %s\n", ast_channel_name(tmp));
@@ -1421,9 +1419,7 @@ static int gtalk_newcall(struct gtalk *client, ikspak *pak)
ast_format_cap_joint_copy(p->cap, p->peercap, p->jointcap);
ast_mutex_unlock(&p->lock);
- ast_channel_lock(chan);
ast_setstate(chan, AST_STATE_RING);
- ast_channel_unlock(chan);
if (ast_format_cap_is_empty(p->jointcap)) {
ast_log(LOG_WARNING, "Capabilities don't match : us - %s, peer - %s, combined - %s \n", ast_getformatname_multiple(s1, BUFSIZ, p->cap),
ast_getformatname_multiple(s2, BUFSIZ, p->peercap),
diff --git a/channels/chan_h323.c b/channels/chan_h323.c
index 7ce098415..22dba3c18 100644
--- a/channels/chan_h323.c
+++ b/channels/chan_h323.c
@@ -1061,9 +1061,6 @@ static struct ast_channel *__oh323_new(struct oh323_pvt *pvt, int state, const c
ch = ast_channel_alloc(1, state, cid_num, cid_name, pvt->accountcode, pvt->exten, pvt->context, linkedid, pvt->amaflags, "H323/%s", host);
/* Update usage counter */
ast_module_ref(ast_module_info->self);
- if (ch) {
- ast_channel_lock(ch);
- }
ast_mutex_lock(&pvt->lock);
if (ch) {
ast_channel_tech_set(ch, &oh323_tech);
@@ -1142,7 +1139,6 @@ static struct ast_channel *__oh323_new(struct oh323_pvt *pvt, int state, const c
}
if (pvt->cd.transfer_capability >= 0)
ast_channel_transfercapability_set(ch, pvt->cd.transfer_capability);
- ast_channel_unlock(ch);
if (state != AST_STATE_DOWN) {
if (ast_pbx_start(ch)) {
ast_log(LOG_WARNING, "Unable to start PBX on %s\n", ast_channel_name(ch));
diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c
index 80081174e..e27cc14c6 100644
--- a/channels/chan_iax2.c
+++ b/channels/chan_iax2.c
@@ -5689,15 +5689,11 @@ static struct ast_channel *ast_iax2_new(int callno, int state, iax2_format capab
/* Don't hold call lock */
ast_mutex_unlock(&iaxsl[callno]);
tmp = ast_channel_alloc(1, state, i->cid_num, i->cid_name, i->accountcode, i->exten, i->context, linkedid, i->amaflags, "IAX2/%s-%d", i->host, i->callno);
- if (tmp) {
- ast_channel_lock(tmp);
- }
ast_mutex_lock(&iaxsl[callno]);
if (i != iaxs[callno]) {
if (tmp) {
/* unlock and relock iaxsl[callno] to preserve locking order */
ast_mutex_unlock(&iaxsl[callno]);
- ast_channel_unlock(tmp);
tmp = ast_channel_release(tmp);
ast_mutex_lock(&iaxsl[callno]);
}
@@ -5807,7 +5803,6 @@ static struct ast_channel *ast_iax2_new(int callno, int state, iax2_format capab
}
ast_channel_stage_snapshot_done(tmp);
- ast_channel_unlock(tmp);
if (state != AST_STATE_DOWN) {
if (ast_pbx_start(tmp)) {
@@ -12239,9 +12234,7 @@ static struct ast_channel *iax2_request(const char *type, struct ast_format_cap
if (c) {
struct ast_format_cap *joint;
if (callid) {
- ast_channel_lock(c);
ast_channel_callid_set(c, callid);
- ast_channel_unlock(c);
}
/* Choose a format we can live with */
diff --git a/channels/chan_jingle.c b/channels/chan_jingle.c
index 8604d4eb9..56c15b193 100644
--- a/channels/chan_jingle.c
+++ b/channels/chan_jingle.c
@@ -864,7 +864,6 @@ static struct ast_channel *jingle_new(struct jingle *client, struct jingle_pvt *
return NULL;
}
- ast_channel_lock(tmp);
ast_channel_stage_snapshot(tmp);
ast_channel_tech_set(tmp, &jingle_tech);
@@ -942,7 +941,6 @@ static struct ast_channel *jingle_new(struct jingle *client, struct jingle_pvt *
ast_jb_configure(tmp, &global_jbconf);
ast_channel_stage_snapshot_done(tmp);
- ast_channel_unlock(tmp);
if (state != AST_STATE_DOWN && ast_pbx_start(tmp)) {
ast_log(LOG_WARNING, "Unable to start PBX on %s\n", ast_channel_name(tmp));
@@ -1117,9 +1115,7 @@ static int jingle_newcall(struct jingle *client, ikspak *pak)
}
ast_mutex_unlock(&p->lock);
- ast_channel_lock(chan);
ast_setstate(chan, AST_STATE_RING);
- ast_channel_unlock(chan);
res = ast_pbx_start(chan);
switch (res) {
diff --git a/channels/chan_mgcp.c b/channels/chan_mgcp.c
index c10697158..84fb3b225 100644
--- a/channels/chan_mgcp.c
+++ b/channels/chan_mgcp.c
@@ -1507,7 +1507,6 @@ static struct ast_channel *mgcp_new(struct mgcp_subchannel *sub, int state, cons
tmp = ast_channel_alloc(1, state, i->cid_num, i->cid_name, linkedid, i->accountcode, i->exten, i->context, i->amaflags, "MGCP/%s@%s-%d", i->name, i->parent->name, sub->id);
if (tmp) {
- ast_channel_lock(tmp);
ast_channel_stage_snapshot(tmp);
ast_channel_tech_set(tmp, &mgcp_tech);
ast_format_cap_copy(ast_channel_nativeformats(tmp), i->cap);
@@ -1571,7 +1570,6 @@ static struct ast_channel *mgcp_new(struct mgcp_subchannel *sub, int state, cons
}
ast_channel_stage_snapshot_done(tmp);
- ast_channel_unlock(tmp);
if (state != AST_STATE_DOWN) {
if (ast_pbx_start(tmp)) {
@@ -3048,7 +3046,6 @@ static void *mgcp_ss(void *data)
} else {
/*res = tone_zone_play_tone(p->subs[index].zfd, -1);*/
ast_indicate(chan, -1);
- ast_channel_lock(chan);
ast_channel_exten_set(chan, p->dtmf_buf);
ast_channel_dialed(chan)->number.str = ast_strdup(p->dtmf_buf);
memset(p->dtmf_buf, 0, sizeof(p->dtmf_buf));
@@ -3057,7 +3054,6 @@ static void *mgcp_ss(void *data)
p->hidecallerid ? "" : p->cid_name,
ast_channel_caller(chan)->ani.number.valid ? NULL : p->cid_num);
ast_setstate(chan, AST_STATE_RING);
- ast_channel_unlock(chan);
if (p->dtmfmode & MGCP_DTMF_HYBRID) {
p->dtmfmode |= MGCP_DTMF_INBAND;
ast_indicate(chan, -1);
diff --git a/channels/chan_misdn.c b/channels/chan_misdn.c
index a1b9105e6..38197c638 100644
--- a/channels/chan_misdn.c
+++ b/channels/chan_misdn.c
@@ -5954,9 +5954,7 @@ static int read_config(struct chan_list *ch)
chan_misdn_log(1, port, "read_config: Getting Config\n");
misdn_cfg_get(port, MISDN_CFG_LANGUAGE, lang, sizeof(lang));
- ast_channel_lock(ast);
ast_channel_language_set(ast, lang);
- ast_channel_unlock(ast);
misdn_cfg_get(port, MISDN_CFG_MUSICCLASS, ch->mohinterpret, sizeof(ch->mohinterpret));
@@ -6002,9 +6000,7 @@ static int read_config(struct chan_list *ch)
misdn_cfg_get(bc->port, MISDN_CFG_CONTEXT, ch->context, sizeof(ch->context));
- ast_channel_lock(ast);
ast_channel_context_set(ast, ch->context);
- ast_channel_unlock(ast);
#ifdef MISDN_1_2
update_pipeline_config(bc);
@@ -6021,10 +6017,8 @@ static int read_config(struct chan_list *ch)
misdn_cfg_get(port, MISDN_CFG_PICKUPGROUP, &pg, sizeof(pg));
misdn_cfg_get(port, MISDN_CFG_CALLGROUP, &cg, sizeof(cg));
chan_misdn_log(5, port, " --> * CallGrp:%s PickupGrp:%s\n", ast_print_group(buf, sizeof(buf), cg), ast_print_group(buf2, sizeof(buf2), pg));
- ast_channel_lock(ast);
ast_channel_pickupgroup_set(ast, pg);
ast_channel_callgroup_set(ast, cg);
- ast_channel_unlock(ast);
misdn_cfg_get(port, MISDN_CFG_NAMEDPICKUPGROUP, &npg, sizeof(npg));
misdn_cfg_get(port, MISDN_CFG_NAMEDCALLGROUP, &ncg, sizeof(ncg));
@@ -6037,10 +6031,8 @@ static int read_config(struct chan_list *ch)
ast_free(tmp_str);
}
- ast_channel_lock(ast);
ast_channel_named_pickupgroups_set(ast, npg);
ast_channel_named_callgroups_set(ast, ncg);
- ast_channel_unlock(ast);
if (ch->originator == ORG_AST) {
char callerid[BUFFERSIZE + 1];
@@ -6094,9 +6086,7 @@ static int read_config(struct chan_list *ch)
/* Add configured prefix to dialed.number */
misdn_add_number_prefix(bc->port, bc->dialed.number_type, bc->dialed.number, sizeof(bc->dialed.number));
- ast_channel_lock(ast);
ast_channel_exten_set(ast, bc->dialed.number);
- ast_channel_unlock(ast);
misdn_cfg_get(bc->port, MISDN_CFG_OVERLAP_DIAL, &ch->overlap_dial, sizeof(ch->overlap_dial));
ast_mutex_init(&ch->overlap_tv_lock);
@@ -10238,10 +10228,8 @@ cb_events(enum event_e event, struct misdn_bchannel *bc, void *user_data)
export_ch(chan, bc, ch);
- ast_channel_lock(ch->ast);
ast_channel_rings_set(ch->ast, 1);
ast_setstate(ch->ast, AST_STATE_RINGING);
- ast_channel_unlock(ch->ast);
/* Update asterisk channel caller information */
chan_misdn_log(2, bc->port, " --> TON: %s(%d)\n", misdn_to_str_ton(bc->caller.number_type), bc->caller.number_type);
@@ -10540,9 +10528,7 @@ cb_events(enum event_e event, struct misdn_bchannel *bc, void *user_data)
}
ast_queue_control(ch->ast, AST_CONTROL_RINGING);
- ast_channel_lock(ch->ast);
ast_setstate(ch->ast, AST_STATE_RINGING);
- ast_channel_unlock(ch->ast);
cb_log(7, bc->port, " --> Set State Ringing\n");
diff --git a/channels/chan_motif.c b/channels/chan_motif.c
index 85234ad3a..1e7ee3cce 100644
--- a/channels/chan_motif.c
+++ b/channels/chan_motif.c
@@ -785,7 +785,6 @@ static struct ast_channel *jingle_new(struct jingle_endpoint *endpoint, struct j
if (!(chan = ast_channel_alloc(1, state, S_OR(title, ""), S_OR(cid_name, ""), "", "", "", linkedid, 0, "Motif/%s-%04lx", str, ast_random() & 0xffff))) {
return NULL;
}
- ast_channel_lock(chan);
ast_channel_stage_snapshot(chan);
@@ -853,7 +852,6 @@ static struct ast_channel *jingle_new(struct jingle_endpoint *endpoint, struct j
ao2_unlock(endpoint);
ast_channel_stage_snapshot_done(chan);
- ast_channel_unlock(chan);
return chan;
}
@@ -2414,9 +2412,7 @@ static void jingle_action_session_initiate(struct jingle_endpoint *endpoint, str
ao2_link(endpoint->state->sessions, session);
- ast_channel_lock(chan);
ast_setstate(chan, AST_STATE_RING);
- ast_channel_unlock(chan);
res = ast_pbx_start(chan);
switch (res) {
diff --git a/channels/chan_nbs.c b/channels/chan_nbs.c
index 41f696207..1d8c59d4e 100644
--- a/channels/chan_nbs.c
+++ b/channels/chan_nbs.c
@@ -223,7 +223,6 @@ static struct ast_channel *nbs_new(struct nbs_pvt *i, int state, const char *lin
struct ast_channel *tmp;
tmp = ast_channel_alloc(1, state, 0, 0, "", "s", context, linkedid, 0, "NBS/%s", i->stream);
if (tmp) {
- ast_channel_lock(tmp);
ast_channel_tech_set(tmp, &nbs_tech);
ast_channel_set_fd(tmp, 0, nbs_fd(i->nbs));
@@ -240,7 +239,6 @@ static struct ast_channel *nbs_new(struct nbs_pvt *i, int state, const char *lin
ast_channel_language_set(tmp, "");
i->owner = tmp;
i->u = ast_module_user_add(tmp);
- ast_channel_unlock(tmp);
if (state != AST_STATE_DOWN) {
if (ast_pbx_start(tmp)) {
ast_log(LOG_WARNING, "Unable to start PBX on %s\n", ast_channel_name(tmp));
diff --git a/channels/chan_oss.c b/channels/chan_oss.c
index 92c7374db..5ae18f362 100644
--- a/channels/chan_oss.c
+++ b/channels/chan_oss.c
@@ -799,7 +799,6 @@ static struct ast_channel *oss_new(struct chan_oss_pvt *o, char *ext, char *ctx,
c = ast_channel_alloc(1, state, o->cid_num, o->cid_name, "", ext, ctx, linkedid, 0, "Console/%s", o->device + 5);
if (c == NULL)
return NULL;
- ast_channel_lock(c);
ast_channel_tech_set(c, &oss_tech);
if (o->sounddev < 0)
setformat(o, O_RDWR);
@@ -830,7 +829,6 @@ static struct ast_channel *oss_new(struct chan_oss_pvt *o, char *ext, char *ctx,
o->owner = c;
ast_module_ref(ast_module_info->self);
ast_jb_configure(c, &global_jbconf);
- ast_channel_unlock(c);
if (state != AST_STATE_DOWN) {
if (ast_pbx_start(c)) {
ast_log(LOG_WARNING, "Unable to start PBX on %s\n", ast_channel_name(c));
diff --git a/channels/chan_phone.c b/channels/chan_phone.c
index ca69a2f69..c1a24b8b1 100644
--- a/channels/chan_phone.c
+++ b/channels/chan_phone.c
@@ -862,7 +862,6 @@ static struct ast_channel *phone_new(struct phone_pvt *i, int state, char *cntx,
struct ast_format tmpfmt;
tmp = ast_channel_alloc(1, state, i->cid_num, i->cid_name, "", i->ext, i->context, linkedid, 0, "Phone/%s", i->dev + 5);
if (tmp) {
- ast_channel_lock(tmp);
ast_channel_tech_set(tmp, cur_tech);
ast_channel_set_fd(tmp, 0, i->fd);
/* XXX Switching formats silently causes kernel panics XXX */
@@ -899,7 +898,6 @@ static struct ast_channel *phone_new(struct phone_pvt *i, int state, char *cntx,
ast_channel_caller(tmp)->ani.number.valid = 1;
ast_channel_caller(tmp)->ani.number.str = ast_strdup(i->cid_num);
}
- ast_channel_unlock(tmp);
i->owner = tmp;
ast_module_ref(ast_module_info->self);
diff --git a/channels/chan_pjsip.c b/channels/chan_pjsip.c
index 12fb45969..80cf270af 100644
--- a/channels/chan_pjsip.c
+++ b/channels/chan_pjsip.c
@@ -577,15 +577,13 @@ static struct ast_channel *chan_pjsip_new(struct ast_sip_session *session, int s
return NULL;
}
+ ast_channel_stage_snapshot(chan);
+
/* If res_pjsip_session is ever updated to create/destroy ast_sip_session_media
* during a call such as if multiple same-type stream support is introduced,
* these will need to be recaptured as well */
pvt->media[SIP_MEDIA_AUDIO] = ao2_find(session->media, "audio", OBJ_KEY);
pvt->media[SIP_MEDIA_VIDEO] = ao2_find(session->media, "video", OBJ_KEY);
-
- ast_channel_lock(chan);
- ast_channel_stage_snapshot(chan);
-
ast_channel_tech_pvt_set(chan, channel);
if (pvt->media[SIP_MEDIA_AUDIO] && pvt->media[SIP_MEDIA_AUDIO]->rtp) {
ast_rtp_instance_set_channel_id(pvt->media[SIP_MEDIA_AUDIO]->rtp, ast_channel_uniqueid(chan));
@@ -634,11 +632,10 @@ static struct ast_channel *chan_pjsip_new(struct ast_sip_session *session, int s
ast_channel_zone_set(chan, zone);
}
- ast_channel_stage_snapshot_done(chan);
- ast_channel_unlock(chan);
-
ast_endpoint_add_channel(session->endpoint->persistent, chan);
+ ast_channel_stage_snapshot_done(chan);
+
return chan;
}
@@ -2033,11 +2030,9 @@ static void chan_pjsip_incoming_response(struct ast_sip_session *session, struct
switch (status.code) {
case 180:
ast_queue_control(session->channel, AST_CONTROL_RINGING);
- ast_channel_lock(session->channel);
if (ast_channel_state(session->channel) != AST_STATE_UP) {
ast_setstate(session->channel, AST_STATE_RINGING);
}
- ast_channel_unlock(session->channel);
break;
case 183:
ast_queue_control(session->channel, AST_CONTROL_PROGRESS);
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index fafe71257..c56f7c4c9 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -8106,7 +8106,6 @@ static struct ast_channel *sip_new(struct sip_pvt *i, int state, const char *tit
}
}
- ast_channel_lock(tmp);
ast_channel_stage_snapshot(tmp);
/* If we sent in a callid, bind it to the channel. */
@@ -8114,6 +8113,7 @@ static struct ast_channel *sip_new(struct sip_pvt *i, int state, const char *tit
ast_channel_callid_set(tmp, callid);
}
+ ast_channel_lock(tmp);
sip_pvt_lock(i);
ast_channel_cc_params_init(tmp, i->cc_params);
ast_channel_caller(tmp)->id.tag = ast_strdup(i->cid_tag);
diff --git a/channels/chan_skinny.c b/channels/chan_skinny.c
index 191c3cc24..a65862ff3 100644
--- a/channels/chan_skinny.c
+++ b/channels/chan_skinny.c
@@ -4845,7 +4845,6 @@ static void *skinny_newcall(void *data)
struct skinny_device *d = l->device;
int res = 0;
- ast_channel_lock(c);
ast_set_callerid(c,
l->hidecallerid ? "" : l->cid_num,
l->hidecallerid ? "" : l->cid_name,
@@ -4859,7 +4858,6 @@ static void *skinny_newcall(void *data)
ast_party_name_init(&ast_channel_connected(c)->id.name);
#endif
ast_setstate(c, AST_STATE_RING);
- ast_channel_unlock(c);
if (!sub->rtp) {
start_rtp(sub);
}
@@ -5426,7 +5424,6 @@ static struct ast_channel *skinny_new(struct skinny_line *l, struct skinny_subli
AST_LIST_INSERT_HEAD(&l->sub, sub, list);
//l->activesub = sub;
}
- ast_channel_lock(tmp);
ast_channel_stage_snapshot(tmp);
ast_channel_tech_set(tmp, &skinny_tech);
ast_channel_tech_pvt_set(tmp, sub);
@@ -5502,7 +5499,6 @@ static struct ast_channel *skinny_new(struct skinny_line *l, struct skinny_subli
pbx_builtin_setvar_helper(tmp, v->name, v->value);
ast_channel_stage_snapshot_done(tmp);
- ast_channel_unlock(tmp);
if (state != AST_STATE_DOWN) {
if (ast_pbx_start(tmp)) {
diff --git a/channels/chan_unistim.c b/channels/chan_unistim.c
index 93fd9c502..547cd7c2f 100644
--- a/channels/chan_unistim.c
+++ b/channels/chan_unistim.c
@@ -2517,12 +2517,10 @@ static void *unistim_ss(void *data)
int res;
ast_verb(3, "Starting switch on '%s@%s-%d' to %s\n", l->name, l->parent->name, sub->softkey, s->device->phone_number);
- ast_channel_lock(chan);
ast_channel_exten_set(chan, s->device->phone_number);
- ast_setstate(chan, AST_STATE_RING);
- ast_channel_unlock(chan);
ast_copy_string(s->device->redial_number, s->device->phone_number,
sizeof(s->device->redial_number));
+ ast_setstate(chan, AST_STATE_RING);
res = ast_pbx_run(chan);
if (res) {
ast_log(LOG_WARNING, "PBX exited non-zero\n");
@@ -5565,7 +5563,6 @@ static struct ast_channel *unistim_new(struct unistim_subchannel *sub, int state
return NULL;
}
- ast_channel_lock(tmp);
ast_channel_stage_snapshot(tmp);
ast_format_cap_copy(ast_channel_nativeformats(tmp), l->cap);
@@ -5630,7 +5627,6 @@ static struct ast_channel *unistim_new(struct unistim_subchannel *sub, int state
ast_channel_priority_set(tmp, 1);
ast_channel_stage_snapshot_done(tmp);
- ast_channel_unlock(tmp);
if (state != AST_STATE_DOWN) {
if (unistimdebug) {
diff --git a/channels/chan_vpb.cc b/channels/chan_vpb.cc
index 6ee0e0618..12f27249b 100644
--- a/channels/chan_vpb.cc
+++ b/channels/chan_vpb.cc
@@ -2439,7 +2439,6 @@ static struct ast_channel *vpb_new(struct vpb_pvt *me, enum ast_channel_state st
tmp = ast_channel_alloc(1, state, 0, 0, "", me->ext, me->context, linkedid, AST_AMA_NONE, "%s", me->dev);
if (tmp) {
- ast_channel_lock(tmp);
if (use_ast_ind == 1){
ast_channel_tech_set(tmp, &vpb_tech_indicate);
} else {
@@ -2472,7 +2471,6 @@ static struct ast_channel *vpb_new(struct vpb_pvt *me, enum ast_channel_state st
ast_channel_exten_set(tmp, "s");
if (!ast_strlen_zero(me->language))
ast_channel_language_set(tmp, me->language);
- ast_channel_unlock(tmp);
me->owner = tmp;
diff --git a/channels/sig_analog.c b/channels/sig_analog.c
index 51d3f1495..bbf7a3c8c 100644
--- a/channels/sig_analog.c
+++ b/channels/sig_analog.c
@@ -2120,7 +2120,6 @@ static void *__analog_ss_thread(void *data)
getforward = 0;
} else {
res = analog_play_tone(p, idx, -1);
- ast_channel_lock(chan);
ast_channel_exten_set(chan, exten);
if (!ast_strlen_zero(p->cid_num)) {
if (!p->hidecallerid) {
@@ -2135,7 +2134,6 @@ static void *__analog_ss_thread(void *data)
}
}
ast_setstate(chan, AST_STATE_RING);
- ast_channel_unlock(chan);
analog_set_echocanceller(p, 1);
res = ast_pbx_run(chan);
if (res) {
@@ -2617,10 +2615,8 @@ static void *__analog_ss_thread(void *data)
analog_handle_notify_message(chan, p, flags, -1);
- ast_channel_lock(chan);
ast_setstate(chan, AST_STATE_RING);
ast_channel_rings_set(chan, 1);
- ast_channel_unlock(chan);
analog_set_ringtimeout(p, p->ringt_base);
res = ast_pbx_run(chan);
if (res) {
diff --git a/channels/sig_pri.c b/channels/sig_pri.c
index 48c8c33d7..5def34c23 100644
--- a/channels/sig_pri.c
+++ b/channels/sig_pri.c
@@ -2160,9 +2160,7 @@ static void *pri_ss_thread(void *data)
#endif /* defined(ISSUE_16789) */
sig_pri_set_echocanceller(p, 1);
- ast_channel_lock(chan);
ast_setstate(chan, AST_STATE_RING);
- ast_channel_unlock(chan);
res = ast_pbx_run(chan);
if (res) {
ast_log(LOG_WARNING, "PBX exited non-zero!\n");