aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2013-01-25 18:55:50 +0100
committerHarald Welte <laforge@gnumonks.org>2013-03-24 09:05:05 +0100
commit0809ae69415d90c2777eec58bd2d5e3485e880fb (patch)
tree1f8216f77fa5824c22a1588f368d213ae30cb6db
parent4c4fd284aec75ab8cc2f415a8a4491fd03a5a190 (diff)
sysmobts: Do not re-configure the channel on non-active channels
In case the channel is not active we can omit the external requests to modify it. For the channel modification the higher level is already acking it and for the ciphering it is probably too late to do anything.
-rw-r--r--src/osmo-bts-sysmo/oml.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/osmo-bts-sysmo/oml.c b/src/osmo-bts-sysmo/oml.c
index f2b7730c..452cfe3f 100644
--- a/src/osmo-bts-sysmo/oml.c
+++ b/src/osmo-bts-sysmo/oml.c
@@ -1180,6 +1180,10 @@ int l1if_set_ciphering(struct femtol1_hdl *fl1h,
{
int dir;
+ /* ignore the request when the channel is not active */
+ if (lchan->state != LCHAN_S_ACTIVE)
+ return -1;
+
if (dir_downlink)
dir = GsmL1_Dir_RxUplink;
else
@@ -1192,6 +1196,9 @@ int l1if_set_ciphering(struct femtol1_hdl *fl1h,
int bts_model_rsl_mode_modify(struct gsm_lchan *lchan)
{
+ if (lchan->state != LCHAN_S_ACTIVE)
+ return -1;
+
/* channel mode, encryption and/or multirate have changed */
/* update multi-rate config */