aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/include
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@gnumonks.org>2011-08-14 14:33:10 +0200
committerHarald Welte <laforge@gnumonks.org>2011-08-14 16:24:14 +0200
commitd406a847c4e80aa7e0e849116b3124e6be47b88b (patch)
treebf9f5c5d8ddfa0974368bab1a8d243a4729e8eee /openbsc/include
parent571a9488e8075af4d46046c7a39666e2bf7b04c7 (diff)
rsl: add timer to release channel if we don't get release req ack/nackcamp2011
This patch adds a timer to release the channel after 4 seconds if we don't get a release request ack/nack from the BTS. This should fix the problem with channels in release request state in the Nokia metrostation.
Diffstat (limited to 'openbsc/include')
-rw-r--r--openbsc/include/openbsc/chan_alloc.h3
-rw-r--r--openbsc/include/openbsc/gsm_data_shared.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/openbsc/include/openbsc/chan_alloc.h b/openbsc/include/openbsc/chan_alloc.h
index 5eda312ac..443e39bb3 100644
--- a/openbsc/include/openbsc/chan_alloc.h
+++ b/openbsc/include/openbsc/chan_alloc.h
@@ -48,6 +48,9 @@ void lchan_reset(struct gsm_lchan *lchan);
/* Release the given lchan */
int lchan_release(struct gsm_lchan *lchan, int sach_deact, int reason);
+/* Schedule release request timer */
+void lchan_timer_rel_req_schedule(struct gsm_lchan *lchan);
+
struct load_counter {
unsigned int total;
unsigned int used;
diff --git a/openbsc/include/openbsc/gsm_data_shared.h b/openbsc/include/openbsc/gsm_data_shared.h
index 89375cf42..099b8082a 100644
--- a/openbsc/include/openbsc/gsm_data_shared.h
+++ b/openbsc/include/openbsc/gsm_data_shared.h
@@ -183,6 +183,7 @@ struct gsm_lchan {
struct osmo_timer_list T3111;
struct osmo_timer_list error_timer;
struct osmo_timer_list act_timer;
+ struct osmo_timer_list rel_timer;
/* table of neighbor cell measurements */
struct neigh_meas_proc neigh_meas[MAX_NEIGH_MEAS];