neels has submitted this change. ( 
https://gerrit.osmocom.org/c/osmo-bsc/+/35088?usp=email )

Change subject: use X6 timer for REL ACK, not T3111
......................................................................

use X6 timer for REL ACK, not T3111

The lchan FSM timers were originally implemented to model earlier code
as closely as possible. Now it has come up that T3111 is used in the
wrong place:

3GPP TS 44.018 says:

 T3111:
 This timer is used to delay the channel deactivation after
 disconnection of the main signalling link.
 Its purpose is to let some time for possible repetition of the disconnection.
 Its value is equal to the value of T3110.

Before this patch, we use it also to time the RF REL ACK message. That
is pretty bad, because T3111 is only 2 seconds by default, making RF
CHAN REL vulnerable for timeout. When a user increased T3111 to
alleviate the problem, the result is that each lchan also delays its
normal channel release procedure by the configured amount of time. Very
inelegant.

Instead, use the X6 timer for REL ACK, because X6 already times the CHAN
ACTIV ACK, which is semantically identical.

Compatibility / user impact: No negative impact expected.
We can assume that every user out there has X6 configured to work for
CHAN ACTIV ACK. From that logic, switching channel release ACK to the
same timer is guaranteed to be what the user intends. We could instruct
users in the release notes that they may now choose T3111 freely (as
short as 2 seconds) without jeopardising channel release anymore.

Related: SYS#6655
Change-Id: Ibd118fa23e5deb4381bc31b11a7b495f57901d6c
---
M src/osmo-bsc/lchan_fsm.c
1 file changed, 40 insertions(+), 1 deletion(-)

Approvals:
  osmith: Looks good to me, but someone else must approve
  laforge: Looks good to me, approved
  fixeria: Looks good to me, but someone else must approve
  Jenkins Builder: Verified




diff --git a/src/osmo-bsc/lchan_fsm.c b/src/osmo-bsc/lchan_fsm.c
index 1b012bd..d6dfe3a 100644
--- a/src/osmo-bsc/lchan_fsm.c
+++ b/src/osmo-bsc/lchan_fsm.c
@@ -330,7 +330,7 @@
        [LCHAN_ST_WAIT_RLL_RTP_ESTABLISH]       = { .T = 3101 },
        [LCHAN_ST_WAIT_RLL_RTP_RELEASED]        = { .T = 3109 },
        [LCHAN_ST_WAIT_BEFORE_RF_RELEASE]       = { .T = 3111 },
-       [LCHAN_ST_WAIT_RF_RELEASE_ACK]  = { .T = 3111 },
+       [LCHAN_ST_WAIT_RF_RELEASE_ACK]  = { .T = -6 },
        [LCHAN_ST_WAIT_AFTER_ERROR]     = { .T = -3111 },
        [LCHAN_ST_WAIT_RR_CHAN_MODE_MODIFY_ACK] = { .T = -13 },
        [LCHAN_ST_WAIT_RSL_CHAN_MODE_MODIFY_ACK]        = { .T = -14 },

--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/35088?usp=email
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: Ibd118fa23e5deb4381bc31b11a7b495f57901d6c
Gerrit-Change-Number: 35088
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofm...@sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanits...@sysmocom.de>
Gerrit-Reviewer: laforge <lafo...@osmocom.org>
Gerrit-Reviewer: neels <nhofm...@sysmocom.de>
Gerrit-Reviewer: osmith <osm...@sysmocom.de>
Gerrit-MessageType: merged

Reply via email to