From 39ae17fb6945c0b4d88fa219fea1563fb9177fdc Mon Sep 17 00:00:00 2001 From: Neels Hofmeyr Date: Fri, 16 Sep 2016 01:49:08 +0200 Subject: [PATCH] msgb ctx: use new msgb_talloc_ctx_init(), don't access talloc_msgb_ctx Drop extern definitions of talloc_msgb_ctx and use msgb_talloc_ctx_init() instead. In sgsn_test.c, use a local variable msgb_ctx to do the talloc report from the return value of msgb_talloc_ctx_init(). Change-Id: I2f9ace855f0ecbdc9adf5d75bcb1a3d666570de4 --- openbsc/src/gprs/gb_proxy_main.c | 4 +--- openbsc/src/gprs/sgsn_main.c | 3 +-- openbsc/src/libcommon/talloc_ctx.c | 3 +-- openbsc/src/osmo-bsc_nat/bsc_nat.c | 3 +-- openbsc/tests/sgsn/sgsn_test.c | 7 +++---- 5 files changed, 7 insertions(+), 13 deletions(-) diff --git a/openbsc/src/gprs/gb_proxy_main.c b/openbsc/src/gprs/gb_proxy_main.c index 2ddfca7c5..04875c7c2 100644 --- a/openbsc/src/gprs/gb_proxy_main.c +++ b/openbsc/src/gprs/gb_proxy_main.c @@ -189,8 +189,6 @@ static void handle_options(int argc, char **argv) } } -extern void *tall_msgb_ctx; - extern int bsc_vty_go_parent(struct vty *vty); static struct vty_app_info vty_info = { @@ -231,7 +229,7 @@ int main(int argc, char **argv) int rc; tall_bsc_ctx = talloc_named_const(NULL, 0, "nsip_proxy"); - tall_msgb_ctx = talloc_named_const(tall_bsc_ctx, 0, "msgb"); + msgb_talloc_ctx_init(tall_bsc_ctx, 0); signal(SIGINT, &signal_handler); signal(SIGABRT, &signal_handler); diff --git a/openbsc/src/gprs/sgsn_main.c b/openbsc/src/gprs/sgsn_main.c index 822c35930..b4be6318c 100644 --- a/openbsc/src/gprs/sgsn_main.c +++ b/openbsc/src/gprs/sgsn_main.c @@ -163,7 +163,6 @@ static void signal_handler(int signal) /* NSI that BSSGP uses when transmitting on NS */ extern struct gprs_ns_inst *bssgp_nsi; -extern void *tall_msgb_ctx; extern int bsc_vty_go_parent(struct vty *vty); @@ -328,7 +327,7 @@ int main(int argc, char **argv) srand(time(NULL)); tall_bsc_ctx = talloc_named_const(NULL, 0, "osmo_sgsn"); - tall_msgb_ctx = talloc_named_const(tall_bsc_ctx, 0, "msgb"); + msgb_talloc_ctx_init(tall_bsc_ctx, 0); signal(SIGINT, &signal_handler); signal(SIGABRT, &signal_handler); diff --git a/openbsc/src/libcommon/talloc_ctx.c b/openbsc/src/libcommon/talloc_ctx.c index a917a8c34..7a8bfd3f1 100644 --- a/openbsc/src/libcommon/talloc_ctx.c +++ b/openbsc/src/libcommon/talloc_ctx.c @@ -20,7 +20,6 @@ #include extern void *tall_bsc_ctx; -extern void *tall_msgb_ctx; extern void *tall_fle_ctx; extern void *tall_locop_ctx; extern void *tall_authciphop_ctx; @@ -38,7 +37,7 @@ extern void *tall_ctr_ctx; void talloc_ctx_init(void *ctx_root) { - tall_msgb_ctx = talloc_named_const(ctx_root, 0, "msgb"); + msgb_talloc_ctx_init(ctx_root, 0); tall_fle_ctx = talloc_named_const(ctx_root, 0, "bs11_file_list_entry"); tall_locop_ctx = talloc_named_const(ctx_root, 0, "loc_updating_oper"); tall_authciphop_ctx = talloc_named_const(ctx_root, 0, "auth_ciph_oper"); diff --git a/openbsc/src/osmo-bsc_nat/bsc_nat.c b/openbsc/src/osmo-bsc_nat/bsc_nat.c index 6ae8c0501..a4dd67901 100644 --- a/openbsc/src/osmo-bsc_nat/bsc_nat.c +++ b/openbsc/src/osmo-bsc_nat/bsc_nat.c @@ -1573,12 +1573,11 @@ out: osmo_timer_schedule(&sccp_close, SCCP_CLOSE_TIME, 0); } -extern void *tall_msgb_ctx; extern void *tall_ctr_ctx; static void talloc_init_ctx() { tall_bsc_ctx = talloc_named_const(NULL, 0, "nat"); - tall_msgb_ctx = talloc_named_const(tall_bsc_ctx, 0, "msgb"); + msgb_talloc_ctx_init(tall_bsc_ctx, 0); tall_ctr_ctx = talloc_named_const(tall_bsc_ctx, 0, "counter"); } diff --git a/openbsc/tests/sgsn/sgsn_test.c b/openbsc/tests/sgsn/sgsn_test.c index 5ee5fa47b..789817c3c 100644 --- a/openbsc/tests/sgsn/sgsn_test.c +++ b/openbsc/tests/sgsn/sgsn_test.c @@ -39,8 +39,6 @@ #include -extern void *tall_msgb_ctx; - void *tall_bsc_ctx; static struct sgsn_instance sgsn_inst = { .config_file = "osmo_sgsn.cfg", @@ -2423,11 +2421,12 @@ static struct log_info info = { int main(int argc, char **argv) { void *osmo_sgsn_ctx; + void *msgb_ctx; osmo_init_logging(&info); osmo_sgsn_ctx = talloc_named_const(NULL, 0, "osmo_sgsn"); tall_bsc_ctx = talloc_named_const(osmo_sgsn_ctx, 0, "bsc"); - tall_msgb_ctx = talloc_named_const(osmo_sgsn_ctx, 0, "msgb"); + msgb_ctx = msgb_talloc_ctx_init(osmo_sgsn_ctx, 0); sgsn_rate_ctr_init(); sgsn_auth_init(); @@ -2458,7 +2457,7 @@ int main(int argc, char **argv) printf("Done\n"); talloc_report_full(osmo_sgsn_ctx, stderr); - OSMO_ASSERT(talloc_total_blocks(tall_msgb_ctx) == 1); + OSMO_ASSERT(talloc_total_blocks(msgb_ctx) == 1); OSMO_ASSERT(talloc_total_blocks(tall_bsc_ctx) == 2); return 0; }