channel: Keep track on when a channel got allocated.

This can help to detect 'stale' channels in a network.
This commit is contained in:
Holger Hans Peter Freyther
2010-06-13 12:38:35 +08:00
parent 42a4e9a52d
commit c9b7d74a08
2 changed files with 7 additions and 0 deletions

View File

@@ -288,6 +288,9 @@ struct gsm_lchan {
/* release reason */
u_int8_t release_reason;
/* timestamp */
struct timeval alloc_time;
};
struct gsm_e1_subslot {

View File

@@ -25,6 +25,7 @@
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <time.h>
#include <openbsc/gsm_data.h>
#include <openbsc/chan_alloc.h>
@@ -287,6 +288,9 @@ struct gsm_lchan *lchan_alloc(struct gsm_bts *bts, enum gsm_chan_t type,
memset(&lchan->conn, 0, sizeof(lchan->conn));
lchan->conn.lchan = lchan;
lchan->conn.bts = lchan->ts->trx->bts;
/* set the alloc time */
gettimeofday(&lchan->alloc_time, NULL);
} else {
struct challoc_signal_data sig;
sig.bts = bts;