aboutsummaryrefslogtreecommitdiffstats
path: root/src/common/bts.c
diff options
context:
space:
mode:
authorAndreas Eversberg <jolly@eversberg.eu>2012-07-08 20:20:51 +0200
committerAndreas Eversberg <jolly@eversberg.eu>2012-07-08 20:20:51 +0200
commit8169b0bd853c0d3a9e69b166f3a271556f84767f (patch)
tree48469c9b293680595f8935b1ab3abe8aefdb21f3 /src/common/bts.c
parent07b37853a46eec034750de9db33ca84022129fb1 (diff)
Add BTS to list at the beginning of bts_init()
During init process, signals might be sent. PCU receives these signals and requires that BTS instance is already in the list.
Diffstat (limited to 'src/common/bts.c')
-rw-r--r--src/common/bts.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/common/bts.c b/src/common/bts.c
index 00ea7c75..208e1c60 100644
--- a/src/common/bts.c
+++ b/src/common/bts.c
@@ -57,6 +57,9 @@ int bts_init(struct gsm_bts *bts)
struct gsm_bts_trx *trx;
int rc;
+ /* add to list of BTSs */
+ llist_add_tail(&bts->list, &bts_gsmnet.bts_list);
+
bts->band = GSM_BAND_1800;
bts->role = btsb = talloc_zero(bts, struct gsm_bts_role_bts);
@@ -95,11 +98,11 @@ int bts_init(struct gsm_bts *bts)
osmo_rtp_init(tall_bts_ctx);
rc = bts_model_init(bts);
- if (rc < 0)
+ if (rc < 0) {
+ llist_del(&bts->list);
return rc;
+ }
- /* add to list of BTSs */
- llist_add_tail(&bts->list, &bts_gsmnet.bts_list);
bts_gsmnet.num_bts++;
return rc;