Commit 25a1e76a authored by Haruki NAOI's avatar Haruki NAOI

Fix: avoid pthread_mutex_lock abort.

This commit is workaround. This issue realy occures with the following log.
lte-softmodem: ../nptl/pthread_mutex_lock.c:81: _pthread_mutex_lock: Assertion `mutex->_data.__owner == 0' failed.
parent b557f896
......@@ -1011,7 +1011,9 @@ schedule_ue_spec(module_id_t module_idP,
);
if((rrc_release_info.num_UEs > 0) && (rlc_am_mui.rrc_mui_num > 0)) {
pthread_mutex_lock(&rrc_release_freelist);
while(pthread_mutex_trylock(&rrc_release_freelist)){
/* spin... */
}
uint16_t release_total = 0;
for (release_num = 0, release_ctrl = &rrc_release_info.RRC_release_ctrl[0];
......
......@@ -1293,7 +1293,9 @@ schedule_ue_spec_fairRR(module_id_t module_idP,
);
if((rrc_release_info.num_UEs > 0) && (rlc_am_mui.rrc_mui_num > 0)){
pthread_mutex_lock(&rrc_release_freelist);
while(pthread_mutex_trylock(&rrc_release_freelist)) {
/* spin... */
}
uint16_t release_total = 0;
for(uint16_t release_num = 0; release_num < NUMBER_OF_UE_MAX; release_num++) {
......
......@@ -2320,7 +2320,9 @@ rrc_mac_remove_ue(module_id_t mod_idP,
}
if(rrc_release_info.num_UEs > 0){
pthread_mutex_lock(&rrc_release_freelist);
while(pthread_mutex_trylock(&rrc_release_freelist)) {
/* spin... */
}
uint16_t release_total = 0;
for (uint16_t release_num = 0; release_num < NUMBER_OF_UE_MAX; release_num++) {
......
......@@ -2236,8 +2236,9 @@ rrc_eNB_generate_RRCConnectionRelease(
ue_context_pP->ue_context.rnti,
rrc_eNB_mui,
size);
pthread_mutex_lock(&rrc_release_freelist);
while (pthread_mutex_trylock(&rrc_release_freelist)) {
/* spin... */
}
for (uint16_t release_num = 0; release_num < NUMBER_OF_UE_MAX; release_num++) {
if (rrc_release_info.RRC_release_ctrl[release_num].flag == 0) {
if (ue_context_pP->ue_context.ue_release_timer_s1 > 0) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment