aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/subchan_demux.c
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2009-07-28 00:41:45 +0200
committerHarald Welte <laforge@gnumonks.org>2009-07-28 00:41:45 +0200
commit7bfc26749662e3a3227037cce4a24748343b50be (patch)
tree2bd0ad79d43b2e72407792d30cac97e5fb8f825d /openbsc/src/subchan_demux.c
parentb49248bf48b0856e3b156810681ea3fca44c728a (diff)
move allocation of talloc contexts into link-time constructor
This is much more optimal than checking if the context exists every time we allocate the respective object.
Diffstat (limited to 'openbsc/src/subchan_demux.c')
-rw-r--r--openbsc/src/subchan_demux.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/openbsc/src/subchan_demux.c b/openbsc/src/subchan_demux.c
index ccd4fadc6..368b9853c 100644
--- a/openbsc/src/subchan_demux.c
+++ b/openbsc/src/subchan_demux.c
@@ -312,9 +312,6 @@ int subchan_mux_init(struct subch_mux *mx)
{
int i;
- if (!tall_tqe_ctx)
- tall_tqe_ctx = talloc_named_const(tall_bsc_ctx, 1,
- "subch_txq_entry");
memset(mx, 0, sizeof(*mx));
for (i = 0; i < NR_SUBCH; i++) {
struct mux_subch *sch = &mx->subch[i];
@@ -323,3 +320,9 @@ int subchan_mux_init(struct subch_mux *mx)
return 0;
}
+
+static __attribute__((constructor)) void on_dso_load_ss_demux(void)
+{
+ tall_tqe_ctx = talloc_named_const(tall_bsc_ctx, 1,
+ "subch_txq_entry");
+}