lchan: set cause for 4 instances of release_in_error = true
Make sure some RSL cause is set. Change-Id: I372ade9fc58919fbf858ce14caab8a0a22dbb083
This commit is contained in:
parent
5bf71c7e94
commit
ad2c15da14
|
@ -1056,6 +1056,7 @@ static void lchan_fsm_borken(struct osmo_fsm_inst *fi, uint32_t event, void *dat
|
||||||
case LCHAN_EV_RSL_CHAN_ACTIV_ACK:
|
case LCHAN_EV_RSL_CHAN_ACTIV_ACK:
|
||||||
/* A late Chan Activ ACK? Release. */
|
/* A late Chan Activ ACK? Release. */
|
||||||
lchan->release.in_error = true;
|
lchan->release.in_error = true;
|
||||||
|
lchan->release.rsl_error_cause = RSL_ERR_INTERWORKING;
|
||||||
lchan_fsm_state_chg(LCHAN_ST_WAIT_RF_RELEASE_ACK);
|
lchan_fsm_state_chg(LCHAN_ST_WAIT_RF_RELEASE_ACK);
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -1067,6 +1068,7 @@ static void lchan_fsm_borken(struct osmo_fsm_inst *fi, uint32_t event, void *dat
|
||||||
case LCHAN_EV_RSL_RF_CHAN_REL_ACK:
|
case LCHAN_EV_RSL_RF_CHAN_REL_ACK:
|
||||||
/* A late Release ACK? */
|
/* A late Release ACK? */
|
||||||
lchan->release.in_error = true;
|
lchan->release.in_error = true;
|
||||||
|
lchan->release.rsl_error_cause = RSL_ERR_INTERWORKING;
|
||||||
lchan_fsm_state_chg(LCHAN_ST_WAIT_AFTER_ERROR);
|
lchan_fsm_state_chg(LCHAN_ST_WAIT_AFTER_ERROR);
|
||||||
/* TODO: we used to do this only for sysmobts:
|
/* TODO: we used to do this only for sysmobts:
|
||||||
int do_free = is_sysmobts_v2(ts->trx->bts);
|
int do_free = is_sysmobts_v2(ts->trx->bts);
|
||||||
|
@ -1291,6 +1293,7 @@ int lchan_fsm_timer_cb(struct osmo_fsm_inst *fi)
|
||||||
|
|
||||||
default:
|
default:
|
||||||
lchan->release.in_error = true;
|
lchan->release.in_error = true;
|
||||||
|
lchan->release.rsl_error_cause = RSL_ERR_INTERWORKING;
|
||||||
lchan_fail("Timeout");
|
lchan_fail("Timeout");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -725,6 +725,7 @@ int lchan_rtp_fsm_timer_cb(struct osmo_fsm_inst *fi)
|
||||||
{
|
{
|
||||||
struct gsm_lchan *lchan = lchan_rtp_fi_lchan(fi);
|
struct gsm_lchan *lchan = lchan_rtp_fi_lchan(fi);
|
||||||
lchan->release.in_error = true;
|
lchan->release.in_error = true;
|
||||||
|
lchan->release.rsl_error_cause = RSL_ERR_EQUIPMENT_FAIL;
|
||||||
lchan_rtp_fail("Timeout");
|
lchan_rtp_fail("Timeout");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue