path: root/src/common/rsl.c
diff options
authorPau Espin Pedrol <pespin@sysmocom.de>2018-11-23 16:58:13 +0100
committerPau Espin Pedrol <pespin@sysmocom.de>2018-11-23 16:58:18 +0100
commit133a3d96dc07ebda4dfc7899dab9c0d0c80c9fea (patch)
tree37f840f3a021470bfa761154e25e150ffbdaa622 /src/common/rsl.c
parent52fdef79cc56da66d464e122759fda18ce651ebc (diff)
rsl: Avoid sending ipa PDCH DEACT NACK followed by ACK
It was spotted during osmo-gsm-tester test dynts:trx-sysmocell5000+mod-bts0-dynts67-ipa+cfg-codec-fr-any that osmo-bts-trx was answering to PDCH DEACT from BSC first with a NACK followed immediatelly after by an ACK. That happens after the test does a GPRS pdp ctx act successfuly and then deactivates the ctx and the 2 MS try to place a call between them (and thus channels need to be moved to TCH/F). Most probably the if condition where the lines for this commit are modified need to be fine-grained. Patch before this one should help to understand the steates/situation in this scenario, and then a follow-up patch can be created to improve the logic. Change-Id: I91c65da6b6b7094f32187d3b083153a87c3219fd
Diffstat (limited to 'src/common/rsl.c')
1 files changed, 1 insertions, 2 deletions
diff --git a/src/common/rsl.c b/src/common/rsl.c
index d4bd2f08..b4cea2cd 100644
--- a/src/common/rsl.c
+++ b/src/common/rsl.c
@@ -2200,11 +2200,10 @@ static void rsl_rx_dyn_pdch(struct msgb *msg, bool pdch_act)
if (lchan->state != LCHAN_S_NONE) {
"%s Request to PDCH %s, but lchan is still in state %s\n",
gsm_ts_and_pchan_name(ts), pdch_act? "ACT" : "DEACT",
- rsl_tx_dyn_pdch_nack(lchan, pdch_act, RSL_ERR_NORMAL_UNSPEC);
ts->flags |= pdch_act? TS_F_PDCH_ACT_PENDING