From 469c4f05912b6310da82f03373dd712e47b1d408 Mon Sep 17 00:00:00 2001 From: Oliver Smith Date: Thu, 9 Apr 2020 11:22:24 +0200 Subject: lchan_fsm, lchan_rtp_fsm: make all timers configurable Choose saner timer numbers before exposing to the user config. Related: SYS#4897 Change-Id: I637fcdde93c11158de46157d494c060bb36bdcfb --- src/osmo-bsc/lchan_fsm.c | 4 ++-- src/osmo-bsc/lchan_rtp_fsm.c | 8 ++++---- src/osmo-bsc/net_init.c | 6 ++++++ tests/timer.vty | 12 ++++++++++++ 4 files changed, 24 insertions(+), 6 deletions(-) diff --git a/src/osmo-bsc/lchan_fsm.c b/src/osmo-bsc/lchan_fsm.c index 0470120dc..638188dd6 100644 --- a/src/osmo-bsc/lchan_fsm.c +++ b/src/osmo-bsc/lchan_fsm.c @@ -210,8 +210,8 @@ static void lchan_on_fully_established(struct gsm_lchan *lchan) } struct osmo_tdef_state_timeout lchan_fsm_timeouts[32] = { - [LCHAN_ST_WAIT_TS_READY] = { .T=23001 }, - [LCHAN_ST_WAIT_ACTIV_ACK] = { .T=-23002 }, + [LCHAN_ST_WAIT_TS_READY] = { .T=-5 }, + [LCHAN_ST_WAIT_ACTIV_ACK] = { .T=-6 }, [LCHAN_ST_WAIT_RLL_RTP_ESTABLISH] = { .T=3101 }, [LCHAN_ST_WAIT_RLL_RTP_RELEASED] = { .T=3109 }, [LCHAN_ST_WAIT_BEFORE_RF_RELEASE] = { .T=3111 }, diff --git a/src/osmo-bsc/lchan_rtp_fsm.c b/src/osmo-bsc/lchan_rtp_fsm.c index 5de296707..cd195d021 100644 --- a/src/osmo-bsc/lchan_rtp_fsm.c +++ b/src/osmo-bsc/lchan_rtp_fsm.c @@ -43,10 +43,10 @@ struct gsm_lchan *lchan_rtp_fi_lchan(struct osmo_fsm_inst *fi) } struct osmo_tdef_state_timeout lchan_rtp_fsm_timeouts[32] = { - [LCHAN_RTP_ST_WAIT_MGW_ENDPOINT_AVAILABLE] = { .T=-23004 }, - [LCHAN_RTP_ST_WAIT_IPACC_CRCX_ACK] = { .T=-23005 }, - [LCHAN_RTP_ST_WAIT_IPACC_MDCX_ACK] = { .T=-23006 }, - [LCHAN_RTP_ST_WAIT_MGW_ENDPOINT_CONFIGURED] = { .T=-23004 }, + [LCHAN_RTP_ST_WAIT_MGW_ENDPOINT_AVAILABLE] = { .T=-9 }, + [LCHAN_RTP_ST_WAIT_IPACC_CRCX_ACK] = { .T=-7 }, + [LCHAN_RTP_ST_WAIT_IPACC_MDCX_ACK] = { .T=-8 }, + [LCHAN_RTP_ST_WAIT_MGW_ENDPOINT_CONFIGURED] = { .T=-10 }, }; /* Transition to a state, using the T timer defined in lchan_rtp_fsm_timeouts. diff --git a/src/osmo-bsc/net_init.c b/src/osmo-bsc/net_init.c index 4b79712ce..8b1e080e2 100644 --- a/src/osmo-bsc/net_init.c +++ b/src/osmo-bsc/net_init.c @@ -46,6 +46,12 @@ static struct osmo_tdef gsm_network_T_defs[] = { { .T=3212, .default_val=5, .unit=OSMO_TDEF_CUSTOM, .desc="Periodic Location Update timer, sent to MS (1 = 6 minutes)" }, { .T=-4, .default_val=60, .desc="After Clear Request, wait for MSC to Clear Command (sanity)" }, + { .T=-5, .default_val=5, .desc="Timeout to switch dynamic timeslot PCHAN modes"}, + { .T=-6, .default_val=5, .desc="Timeout for RSL Channel Activate ACK after sending RSL Channel Activate" }, + { .T=-7, .default_val=5, .desc="Timeout for RSL IPA CRCX ACK after sending RSL IPA CRCX" }, + { .T=-8, .default_val=5, .desc="Timeout for RSL IPA MDCX ACK after sending RSL IPA MDCX" }, + { .T=-9, .default_val=5, .desc="Timeout for availability of MGW endpoint" }, + { .T=-10, .default_val=5, .desc="Timeout for fully configured MGW endpoint" }, { .T=-3111, .default_val=4, .desc="Wait time after lchan was released in error (should be T3111 + 2s)" }, { .T=-3210, .default_val=20, .desc="After L3 Complete, wait for MSC to confirm" }, {} diff --git a/tests/timer.vty b/tests/timer.vty index fe2d2d8fc..ad1d1676e 100644 --- a/tests/timer.vty +++ b/tests/timer.vty @@ -19,6 +19,12 @@ net: T3122 = 10 s Wait time after RR Immediate Assignment Reject (default: 10 s) net: T3141 = 10 s (unused) (default: 10 s) net: T3212 = 5 Periodic Location Update timer, sent to MS (1 = 6 minutes) (default: 5) net: X4 = 60 s After Clear Request, wait for MSC to Clear Command (sanity) (default: 60 s) +net: X5 = 5 s Timeout to switch dynamic timeslot PCHAN modes (default: 5 s) +net: X6 = 5 s Timeout for RSL Channel Activate ACK after sending RSL Channel Activate (default: 5 s) +net: X7 = 5 s Timeout for RSL IPA CRCX ACK after sending RSL IPA CRCX (default: 5 s) +net: X8 = 5 s Timeout for RSL IPA MDCX ACK after sending RSL IPA MDCX (default: 5 s) +net: X9 = 5 s Timeout for availability of MGW endpoint (default: 5 s) +net: X10 = 5 s Timeout for fully configured MGW endpoint (default: 5 s) net: X3111 = 4 s Wait time after lchan was released in error (should be T3111 + 2s) (default: 4 s) net: X3210 = 20 s After L3 Complete, wait for MSC to confirm (default: 20 s) mgw: X2427 = 5 s timeout for MGCP response from MGW (default: 5 s) @@ -58,6 +64,12 @@ net: T3122 = 10 s Wait time after RR Immediate Assignment Reject (default: 10 s) net: T3141 = 10 s (unused) (default: 10 s) net: T3212 = 5 Periodic Location Update timer, sent to MS (1 = 6 minutes) (default: 5) net: X4 = 60 s After Clear Request, wait for MSC to Clear Command (sanity) (default: 60 s) +net: X5 = 5 s Timeout to switch dynamic timeslot PCHAN modes (default: 5 s) +net: X6 = 5 s Timeout for RSL Channel Activate ACK after sending RSL Channel Activate (default: 5 s) +net: X7 = 5 s Timeout for RSL IPA CRCX ACK after sending RSL IPA CRCX (default: 5 s) +net: X8 = 5 s Timeout for RSL IPA MDCX ACK after sending RSL IPA MDCX (default: 5 s) +net: X9 = 5 s Timeout for availability of MGW endpoint (default: 5 s) +net: X10 = 5 s Timeout for fully configured MGW endpoint (default: 5 s) net: X3111 = 4 s Wait time after lchan was released in error (should be T3111 + 2s) (default: 4 s) net: X3210 = 20 s After L3 Complete, wait for MSC to confirm (default: 20 s) mgw: X2427 = 5 s timeout for MGCP response from MGW (default: 5 s) -- cgit v1.2.3